Error Code Overview
If an error occurs during an API call, no results will be returned. The cause of the error can be identified using the error codes provided by each API. When an API call fails, an HTTP status code in the 3xx, 4xx, or 5xx range is returned. The response body also includes a specific error code and an error message. If you are unable to determine the cause of the error, contact the Huawei Cloud customer service and provide the error code so we can help you address the problem as soon as possible.
Error Response Syntax
When an error occurs, its response header includes the following information:
- Content-Type: application/xml
- HTTP status code: 3xx, 4xx, or 5xx
The response body also provides details about the error. The following example error response illustrates the common elements in all Representational State Transfer (REST) error responses.
1 2 3 4 5 6 7 8 9 10 | <?xml version="1.0" encoding="UTF-8"?> <Error> <Code>NoSuchKey</Code> <Message>The resource you requested does not exist</Message> <RequestId>001B21A61C6C0000013402C4616D5285</RequestId> <HostId>RkRCRDJENDc5MzdGQkQ4OUY3MTI4NTQ3NDk2Mjg0M0FB</HostId> <!-- The bucket name (BucketName) is returned when a bucket is accessed, and the object name (Key) is returned when an object is accessed. --> <BucketName>BucketName</BucketName> <Key>ObjectName</Key> </Error> |
Table 1 describes each element.
| Element | Description |
|---|---|
| Error | The root element that describes the error in an XML response body. |
| Code | An HTTP error code corresponding to the error in the XML response body. For details about error codes, see Table 2. |
| Message | The error details provided in the XML response body. For details about error messages, see Table 2. |
| RequestId | The ID of the request for which the error is returned. The ID helps locate the error. |
| HostId | The ID of the server that returned the error. |
| Resource | Bucket or object related to the error. |
Some error responses contain more detailed information. It is recommended that all error information be logged for easier rectification of errors.
Error Code Description
If an error occurs after a request is sent to OBS, a response containing an error code and error message will be returned. Table 2 describes the error codes of OBS.
| Status Code | Error Code | Error Message | Solution |
|---|---|---|---|
| 301 Moved Permanently | PermanentRedirect | The requested bucket can only be accessed through the specified address. Send subsequent requests to that address. | Send the request to the returned redirection address. |
| 301 Moved Permanently | WebsiteRedirect | The website request lacks bucketName. | Include the bucket name in the request and try again. |
| 307 Moved Temporarily | TemporaryRedirect | Temporary redirection. If the DNS is updated, the request is redirected to the bucket. | The request is automatically redirected, or you can send the request to the redirection address. |
| 400 Bad Request | BadDigest | The client-specified value of Content-MD5 does not match the value received by OBS. | Check whether the MD5 value included in the header is the same as that calculated by the message body. |
| 400 Bad Request | BadDomainName | Invalid domain name. | Use a valid domain name. |
| 400 Bad Request | BadRequest | Invalid request parameters. | Modify the parameters according to the error details returned in the response. |
| 400 Bad Request | CustomDomainAlreadyExist | The configured domain already exists. | The custom domain name has been configured. You do not need configure it again. |
| 400 Bad Request | CustomDomainNotExist | The domain to be deleted does not exist. | The custom domain name is not configured or has been deleted. You do not need to delete it. |
| 400 Bad Request | EntityTooLarge |
| Modify the conditions specified in the upload policy or reduce the object size. |
| 400 Bad Request | EntityTooSmall |
| Modify the conditions specified in the upload policy or increase the object size. |
| 400 Bad Request | IllegalLocationConstraintException | A request for creating a bucket in a non-default region is sent without Location. | Send the bucket creation request to the default region or a non-default region with Location included. |
| 400 Bad Request | IncompleteBody | The request body received is incomplete due to network or other problems. | Upload the object again. |
| 400 Bad Request | IncorrectNumberOfFilesInPostRequest | Each POST request must include a file to be uploaded. | Include a file to be uploaded. |
| 400 Bad Request | InvalidArgument | Invalid arguments. | Modify the arguments according to the error details returned in the response. |
| 400 Bad Request | InvalidBucket | The requested bucket does not exist. | Try again with another bucket name. |
| 400 Bad Request | InvalidBucketName | The bucket name in the request is too long or contains unallowed special characters. | Try again with another bucket name. |
| 400 Bad Request | InvalidContentLength | Invalid Content-Length value. | Check the encapsulation header or submit a service ticket for technical support. |
| 400 Bad Request | InvalidDefaultStorageClass | Invalid default storage class. | Check which storage classes can be used. |
| 400 Bad Request | InvalidEncryptionAlgorithmError | Incorrect encryption algorithm. The SSE-C encrypted object cannot be decrypted because the download request includes an incorrect encryption header. | Include the correct encryption header when downloading the object. |
| 400 Bad Request | InvalidLocationConstraint | Location is invalid or is not specified in the bucket creation request. | Specify the correct Location in the bucket creation request. |
| 400 Bad Request | InvalidPart | One or more specified parts are not found. The parts may not be uploaded or the specified entity tags do not match those of the parts. | Assemble the parts correctly according to the entity tags. |
| 400 Bad Request | InvalidPartOrder | Parts are not listed in ascending order by part number. | Sort the parts in ascending order and assemble them again. |
| 400 Bad Request | InvalidPolicyDocument | The content of the form does not meet the conditions specified in the policy document. | Modify the policy in the form based on the error details returned in the response and try again. |
| 400 Bad Request | InvalidRedirectLocation | Invalid redirection address. | Specify the correct address. |
| 400 Bad Request | InvalidRequest | Invalid request. | Modify the request according to the error details returned in the response. |
| 400 Bad Request | InvalidRequestBody | Invalid request body. The request requires a message body but no message body is uploaded. | Upload the message body in the correct format. |
| 400 Bad Request | InvalidTargetBucketForLogging | The delivery group has no ACL permission for the target bucket. | Configure the ACL for the target bucket and try again. |
| 400 Bad Request | KeyTooLongError | The provided key is too long. | Use a shorter key. |
| 400 Bad Request | KMS.DisabledException | The master key is disabled with SSE-KMS encryption. | Change the key and try again, or submit a service ticket for technical support. |
| 400 Bad Request | KMS.NotFoundException | The master key is not found with SSE-KMS encryption. | Include a correct master key and try again. |
| 400 Bad Request | MalformedACLError | The provided XML file is in an incorrect format or does not meet format requirements. | Use the correct XML format and try again. |
| 400 Bad Request | MalformedError | The XML format included in the request is incorrect. | Use the correct XML format and try again. |
| 400 Bad Request | MalformedLoggingStatus | The logging XML format is incorrect. | Use the correct XML format and try again. |
| 400 Bad Request | MalformedPolicy | The bucket policy check failed. | Modify the bucket policy based on the error details returned in the response. |
| 400 Bad Request | MalformedQuotaError | The quota XML format is incorrect. | Use the correct XML format and try again. |
| 400 Bad Request | MalformedXML | A configuration item is in the wrong XML format. | Use the correct XML format and try again. |
| 400 Bad Request | MaxMessageLengthExceeded | A message body is included in the request for copying an object. | Remove the message body and try again. |
| 400 Bad Request | MetadataTooLarge | The metadata header size exceeds the maximum allowed. | Reduce the metadata header size. |
| 400 Bad Request | MissingRegion | No region information included in the request and no default region defined in the system. | Include the region information in the request. |
| 400 Bad Request | MissingRequestBodyError | An empty XML file is sent in a request. | Provide the correct XML file. |
| 400 Bad Request | MissingRequiredHeader | Required headers missing in the request. | Provide the required headers. |
| 400 Bad Request | MissingSecurityHeader | A required header is missing in the request. | Provide the required header. |
| 400 Bad Request | MultipleContentLengths | Multiple Content-Length headers. | Check the encapsulation header or submit a service ticket for technical support. |
| 400 Bad Request | TooManyBuckets | You have attempted to create more buckets than allowed. | Delete some buckets and try again. |
| 400 Bad Request | TooManyCustomDomains | Too many custom domains are configured. | Delete some custom domains and try again. |
| 400 Bad Request | TooManyWrongSignature | The request is rejected due to frequent errors. | Use the correct AK and try again. |
| 400 Bad Request | UnexpectedContent | The request requires a message body, which is not included by the client. Or, the request does not require a message body but the client includes one. | Try again according to the instruction. |
| 400 Bad Request | UserKeyMustBeSpecified | This operation is only available to certain users. | Submit a service ticket for technical support. |
| 400 Bad Request | ContentSHA256Mismatch | The object's SHA-256 value calculated by the client is different from that calculated by the server. | Check whether the SHA-256 value calculated by the client is correct. |
| 400 Bad Request | InsecureDownloadForbidden | Insecure object download. Internet access to .apk or .ipa objects using the default domain name is not allowed. | Use a custom domain name to access .apk or .ipa objects. Note that you must complete the ICP filing before using your custom domain name. |
| 400 Bad Request | FileGatewayBucket | Bucket inventories cannot be configured for parallel file systems. | Use an object bucket. |
| 400 Bad Request | ForbidAnonReqOverwriteRespHead | Anonymous users cannot rewrite response headers when calling the object download API. | Delete the rewritten response headers, or include a signature to call the object download API. |
| 403 Forbidden | AccessDenied | Access denied. The request does not include the date header or the header format is incorrect. | Include a correct date header in the request. |
| 403 Forbidden | AccessDenied | You have attempted to modify or delete a WORM-protected object. | Wait until the WORM retention expires and then modify or delete the object. |
| 403 Forbidden | AccessDenied | Access denied. Setting a public bucket policy or ACL is denied. | Set a private bucket policy or ACL. |
| 403 Forbidden | AccessForbidden | Insufficient permissions. No CORS rule configured for the bucket or CORS rule mismatch. | Modify the CORS configuration of the bucket or send the matched OPTIONS request based on the CORS configuration of the bucket. |
| 403 Forbidden | DeregisterUserId | The user has been deregistered. | Top up the account or register a new account. |
| 403 Forbidden | InArrearOrInsufficientBalance | The user account is in arrears, or the account balance is insufficient. | Top up the account. |
| 403 Forbidden | InsufficientStorageSpace | Insufficient storage space. | Quota exceeded. Increase the quota or delete some objects. |
| 403 Forbidden | InvalidAccessKeyId | The provided access key ID is not found in the system. | Include a correct access key ID. |
| 403 Forbidden | InvalidObjectState |
|
|
| 403 Forbidden | NotSignedUp | Your account has not been registered with the system. Only a registered account can be used. | Register with OBS. |
| 403 Forbidden | RequestTimeTooSkewed | There is a large difference between the OBS server time and the client's request time. For security purposes, OBS verifies the time difference between the client and server. If the time difference is longer than 15 minutes, the OBS server will reject your request, and this error is returned. | Check whether there is a large difference between the client time and server time. If there is, adjust the client time based on your local time (UTC) and try again. |
| 403 Forbidden | SignatureDoesNotMatch | The signature included in the request does not match the signature calculated by the system. | Check your secret access key and signature calculation method. For details, see Why Don't the Signatures Match? |
| 403 Forbidden | VirtualHostDomainRequired | A virtual host domain name is not used. | Use a virtual host domain name. |
| 403 Forbidden | Unauthorized | Real-name authentication required. | Complete real-name authentication and try again. |
| 403 Forbidden | UserRestricted | The account is restricted or frozen. | Remove the restriction or unfreeze the account. |
| 404 Not Found | NoSuchBucket | The specified bucket does not exist. | Create a bucket and try again. |
| 404 Not Found | NoSuchBucketPolicy | The bucket policy does not exist. | Configure a bucket policy first. |
| 404 Not Found | NoSuchCORSConfiguration | The CORS configuration does not exist. | Configure CORS first. |
| 404 Not Found | NoSuchCustomDomain | The requested custom domain does not exist. | Configure a custom domain first. |
| 404 Not Found | NoSuchKey | The specified key does not exist. | Upload the object first. |
| 404 Not Found | NoSuchLifecycleConfiguration | The requested lifecycle rule does not exist. | Configure a lifecycle rule first. |
| 404 Not Found | NoSuchUpload | The specified multipart upload does not exist. The upload ID is invalid, or the multipart upload has been aborted or completed. | Use the existing part or reinitialize the part. |
| 404 Not Found | NoSuchVersion | The specified version ID does not match any existing version. | Use the correct version ID. |
| 404 Not Found | NoSuchWebsiteConfiguration | The requested website does not exist. | Configure the website first. |
| 405 Method Not Allowed | MethodNotAllowed | The specified method is not allowed for the requested resource. The message "Specified method is not supported." is returned. | The method is not allowed. |
| 405 Method Not Allowed | FsNotSupport | Parallel file systems do not support this API. | The method is not allowed. |
| 408 Request Timeout | RequestTimeout | No read or write operation is performed within the timeout period of the socket connection between the user and the server. | Check the network and try again, or submit a service ticket for technical support. |
| 409 Conflict | BucketAlreadyExists | The requested bucket name already exists. The bucket namespace is shared by all OBS users. | Try again with another bucket name. |
| 409 Conflict | BucketAlreadyOwnedByYou | Your previous request for creating a bucket with this name succeeds and you already own the bucket. | You do not need to create this bucket again. |
| 409 Conflict | BucketNotEmpty | The bucket you are trying to delete is not empty. | Delete the objects in the bucket and then delete the bucket. |
| 409 Conflict | InvalidBucketState | Invalid bucket status. If cross-region replication is configured, bucket versioning cannot be disabled. | Keep bucket versioning enabled or disable cross-region replication. |
| 409 Conflict | OperationAborted | Another operation is being performed on this resource. | Try again later. |
| 409 Conflict | ServiceNotSupported | The request method is not supported by the server. | Not supported at the server side. Submit a service ticket for technical support. |
| 409 Conflict | FsObjectConflict | The current and new names of an object in a parallel file system did not indicate the same type of object (file or directory), or the new name has already been used. | Ensure that the new name indicates a consistent resource type (file or directory) and has not yet been used. |
| 409 Conflict | FsRenameConflict | The rename operation conflicts with another operation that is being performed on the object. | Check the service logic to prevent unexpected operation results caused by concurrent operations on the same object. |
| 409 Conflict | DirectoryNotEmpty | Non-empty directories cannot be deleted. | Empty the directory and then delete it. |
| 409 ObjectNotAppendable | ObjectNotAppendable | The object is not appendable. | Check the bucket type. Parallel file systems do not support append upload. Check the object type. Archive and Deep Archive objects are not appendable. |
| 411 Length Required | MissingContentLength | The HTTP request does not include the required Content-Length header. | Include the Content-Length header. |
| 412 Precondition Failed | PreconditionFailed | At least one of the specified preconditions is not met. | Modify the request based on the Condition returned in the response. |
| 414 URI Too Long | Request-URI Too Large | The URI used in the request is too long. | Shorten the URI length. |
| 416 Client Requested Range Not Satisfiable | InvalidRange | The requested range cannot be obtained. | Include the correct range and try again. |
| 429 Too Many Requests | TooManyRequests | There are too many requests in a short period of time. For example, there are too many concurrent requests for the metadata of the same object or bucket, such as concurrent object metadata modification, object upload, and object write. | Reduce the number of requests or concurrent requests. |
| 500 Internal Server Error | InternalError | Internal error. Try again later. | Submit a service ticket for technical support. |
| 501 Not Implemented | ServiceNotImplemented | The request method is not implemented by the server. | Not supported currently. Submit a service ticket for technical support. |
| 503 Service Unavailable | ServiceUnavailable | The server is overloaded or has an internal error. | Try again later or submit a service ticket for technical support. |
| 503 Service Unavailable | SlowDown | Access exception due to high-concurrent requests. | Reduce your request frequency. |
| Status Code | Error Code | Error Message | Solution |
|---|---|---|---|
| 500 Internal Server Error | SYS.0001 | Internal service error. | Submit a service ticket for technical support. |
| 404 Not Found | SYS.0003 | Unsupported API. | Use another API. |
| 401 Unauthorized | SYS.0004 | Unauthenticated request. | Submit a service ticket for technical support. |
| 403 Forbidden | SYS.0005 | No access permission. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0006 | Incorrect request format. | Check the request format. |
| 400 Bad Request | SYS.0007 | Invalid request for range download. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0008 | Token expired. | Use a valid token. |
| 431 Request Header Fields Too Large | SYS.0009 | HTTP request headers exceed the maximum allowed. | Reduce the number of headers in the HTTP request. |
| 400 Bad Request | SYS.0010 | Invalid request parameters. | Check the request parameters. |
| 429 Too Many Requests | SYS.0011 | Too many requests. | Reduce the number of requests. |
| 400 Bad Request | SYS.0012 | Request body too large. | Reduce the request body size. |
| 403 Forbidden | SYS.0013 | Permission changed. The token needs to be updated. | Update the token. |
| 404 Not Found | SYS.0014 | Bucket not found. | Try again with another bucket name. |
| 404 Not Found | SYS.0015 | Object not found. | Try again with another object name. |
| 500 Internal Server Error | SYS.0016 | OBS access error. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0018 | Internal request error. Possible causes include incorrect request format and network disconnection. | Check the request format and network connectivity. |
| 500 Internal Server Error | SYS.0019 | Access to the bucket policy service failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0020 | Access to the background task management service failed. | Submit a service ticket for technical support. |
| 403 Forbidden | SYS.0021 | Account restricted. | Top up the account. |
| 403 Forbidden | SYS.0022 | Account frozen. | Top up the account or register a new account. |
| 400 Bad Request | SYS.0023 | Region mismatch. | Try again with another region. |
| 500 Internal Server Error | SYS.0024 | Access to the authorized service failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0025 | Incorrect response content. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0026 | Incorrect read response content. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0027 | No permission granted to the agency. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0028 | Agency not found. | Try again with another agency. |
| 400 Bad Request | SYS.0029 | Invalid OBS region domain name. | Try again with another OBS region domain name. |
| 400 Bad Request | SYS.0030 | OBS region domain name does not match. | Try again with another OBS region domain name. |
| 500 Internal Server Error | SYS.0031 | Authorizing OBS to automatically create an agency failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0032 | Authorizing OBS to automatically modify the agency failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0033 | Authorizing OBS to automatically create custom permissions failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0034 | Authorizing OBS to automatically obtain custom permissions failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0035 | Authorizing OBS to automatically update custom permissions failed. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0036 | Invalid project ID. | Try again with another project ID. |
| 400 Bad Request | SYS.0037 | Insufficient permissions granted to the agency. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0038 | Multi-range download not supported. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0039 | Invalid account ID. | Enter the correct tenant ID. |
| 500 Internal Server Error | SYS.0040 | SDK client initialization error. | Submit a service ticket for technical support. |
| 400 Bad Request | SYS.0041 | Replacing the magic parameter failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0042 | Server processing timed out. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0043 | Deserializing the JSON character string failed. | Submit a service ticket for technical support. |
| 500 Internal Server Error | SYS.0044 | An error occurred when obtaining the internal cache status. | Submit a service ticket for technical support. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot