OBS Server-Side Error Codes (SDK for Python)
If the OBS server encounters an error when processing a request, a response containing the error code and error description is returned. The following table lists details about each error and its HTTP status code.
HTTP Status Code |
Error Code |
Error Message |
Solution |
---|---|---|---|
301 Moved Permanently |
PermanentRedirect |
The requested bucket can be accessed only through the specified address. Send subsequent requests to the address. |
Send the request to the returned redirection address. |
301 Moved Permanently |
WebsiteRedirect |
The website request lacks bucketName. |
Put 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 system automatically redirects the request or sends the request to the redirection address. |
400 Bad Request |
BadDigest |
The specified value of Content-MD5 does not match the value received by OBS. |
Check whether the MD5 value carried 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 parameter. |
Modify the parameter according to the error details returned in the message body. |
400 Bad Request |
CustomDomainAreadyExist |
The configured domain already exists. |
It has been configured and does not need to be configured again. |
400 Bad Request |
CustomDomainNotExist |
Delete the domain that does not exist. |
It is not configured or has been deleted. You do not need to delete it. |
400 Bad Request |
EntityTooLarge |
The size of the object uploaded using the POST method exceeds the upper limit. |
Modify the conditions specified in the policy when posting the object or reduce the object size. |
400 Bad Request |
EntityTooSmall |
The size of the object uploaded using the POST method does not reach the lower limit. |
Modify the conditions specified in the policy when posting the object or increase the object size. |
400 Bad Request |
IllegalLocationConstraintException |
A request without Location is sent for creating a bucket in a non-default region. |
Send the bucket creation request to the default region, or send the request with the Location of the non-default region. |
400 Bad Request |
IncompleteBody |
No complete request body is received due to network or other problems. |
Upload the object again. |
400 Bad Request |
IncorrectNumberOfFilesInPost Request |
Each POST request must contain one file to be uploaded. |
Carry a file to be uploaded. |
400 Bad Request |
InvalidArgument |
Invalid parameter. |
Modify the parameter according to the error details returned in the message body. |
400 Bad Request |
InvalidBucket |
The bucket to be accessed does not exist. |
Try another bucket name. |
400 Bad Request |
InvalidBucketName |
The bucket name specified in the request is invalid, which may have exceeded the maximum length, or contain special characters that are not allowed. |
Try another bucket name. |
400 Bad Request |
InvalidEncryptionAlgorithmError |
Incorrect encryption algorithm. The object cannot be decrypted due to incorrect encryption header carried when downloading the SSE-C encrypted object. |
Carry the correct encryption header when downloading the object. |
400 Bad Request |
InvalidLocationConstraint |
The specified Location in the bucket creation request is invalid or does not exist. |
Correct the 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 (ETags) do not match the parts' ETags. |
Specify the correct parts and entity tags. |
400 Bad Request |
InvalidPartOrder |
Parts are not listed in ascending order by part number. |
Sort the parts in ascending order and merge 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 constructed form according to the error details in the message body and try again. |
400 Bad Request |
InvalidRedirectLocation |
Invalid redirect location. |
Specify the correct IP address. |
400 Bad Request |
InvalidRequest |
Invalid request. |
Modify the parameter according to the error details returned in the message body. |
400 Bad Request |
InvalidRequestBody |
The request body is invalid. 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 target bucket ACL 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 in the SSE-KMS mode. |
Replace the key and try again, or contact the technical support. |
400 Bad Request |
KMS.NotFoundException |
The customer master key (CMK) does not exist in SSE-KMS mode. |
Retry with the correct master key. |
400 Bad Request |
MalformedACLError |
The provided XML file has syntax errors or does not meet the format requirements. |
Use the correct XML format to retry. |
400 Bad Request |
MalformedError |
The XML format in the request is incorrect. |
Use the correct XML format to retry. |
400 Bad Request |
MalformedLoggingStatus |
The XML format of Logging is incorrect. |
Use the correct XML format to retry. |
400 Bad Request |
MalformedPolicy |
The bucket policy does not pass. |
Modify the bucket policy according to the error details returned in the message body. |
400 Bad Request |
MalformedQuotaError |
The Quota XML format is incorrect. |
Use the correct XML format to retry. |
400 Bad Request |
MalformedXML |
An XML file of a configuration item is in incorrect format. |
Use the correct XML format to retry. |
400 Bad Request |
MaxMessageLengthExceeded |
Copying an object does not require a message body in the request. |
Remove the message body and retry. |
400 Bad Request |
MetadataTooLarge |
The size of the metadata header has exceeded the upper limit. |
Reduce the size of the metadata header. |
400 Bad Request |
MissingRegion |
The region information is missing in the request, and the default region is required in the system. |
Carry the region information in the request. |
400 Bad Request |
MissingRequestBodyError |
This error code is returned after you send an empty XML file. |
Provide the correct XML file. |
400 Bad Request |
MissingRequiredHeader |
A required header is missing in the request. |
Provide the required header. |
400 Bad Request |
MissingSecurityHeader |
A required header is missing in the request. |
Provide the required header. |
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 user accounts are configured. |
Delete some user accounts and try again. |
400 Bad Request |
TooManyWrongSignature |
The request is rejected due to high-frequency errors. |
Replace AK and try again. |
400 Bad Request |
UnexpectedContent |
The request requires a message body which is not carried by the client, or the request does not require a message body but the client carries the message body. |
Try again according to the instruction. |
400 Bad Request |
UserKeyMustBeSpecified |
This operation is only available to special users. |
Contact the technical support. |
403 Forbidden |
AccessDenied |
Access denied, because the request does not carry a date header or the header format is incorrect. |
Provide a correct date header in the request. |
403 Forbidden |
AccessForbidden |
Insufficient permissions. No CORS rule is configured for the bucket, or the CORS rule is not matched. |
Modify the CORS configuration of the bucket or send the matched OPTIONS request based on the CORS configuration of the bucket. |
403 Forbidden |
AllAccessDisabled |
The user has no permission to perform a specific operation. The bucket name is forbidden. |
Try another bucket name. |
403 Forbidden |
DeregisterUserId |
The user has been deregistered. |
Top up or re-register. |
403 Forbidden |
InArrearOrInsufficientBalance |
The user account is in arrears, or the account balance insufficient. |
Top up the account. |
403 Forbidden |
InsufficientStorageSpace |
Insufficient storage space. |
If the quota is exceeded, increase quota or delete some objects. |
403 Forbidden |
InvalidAccessKeyId |
The access key ID provided by the customer does not exist in the system. |
Provide correct access key ID. |
403 Forbidden |
NotSignedUp |
You have not registered with the system. |
Register OBS. |
403 Forbidden |
RequestTimeTooSkewed |
The request time and the server's time differ a lot. |
Check whether the difference between the client time and the current time is too large. |
403 Forbidden |
SignatureDoesNotMatch |
The provided signature in the request does not match the signature calculated by OBS. |
Check your secret access key and signature calculation method. |
403 Forbidden |
Unauthorized |
You have not been authenticated in real name. |
Authenticate your real name and try again. |
404 Not Found |
NoSuchBucket |
The bucket does not exist. |
Create a bucket and perform the operation again. |
404 Not Found |
NoSuchBucketPolicy |
No bucket policy exists. |
Configure a bucket policy. |
404 Not Found |
NoSuchCORSConfiguration |
No CORS configuration exists. |
Configure CORS first. |
404 Not Found |
NoSuchCustomDomain |
The requested user domain does not exist. |
Set a user domain first. |
404 Not Found |
NoSuchKey |
The specified key does not exist. |
Upload the object first. |
404 Not Found |
NoSuchLifecycleConfiguration |
The requested Lifecycle does not exist. |
Configure a lifecycle rule first. |
404 Not Found |
NoSuchUpload |
The specified multipart upload does not exist. The upload ID does not exist 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 a 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 against the requested resource. The message "Specified method is not supported." is returned. |
The method is not allowed. |
408 Request Timeout |
RequestTimeout |
The socket connection to the server has no read or write operations within the timeout period. |
Check the network and try again, or contact technical support. |
409 Conflict |
BucketAlreadyExists |
The requested bucket name already exists. The bucket namespace is shared by all users of OBS. Try again with another bucket name. |
Try another bucket name. |
409 Conflict |
BucketAlreadyOwnedByYou |
Your previous request for creating the named bucket succeeded and you already own it. |
You do not need to create the bucket again. |
409 Conflict |
BucketNotEmpty |
The bucket that you tried to delete is not empty. |
Delete the objects in the bucket and then delete the bucket. |
409 Conflict |
InvalidBucketState |
Invalid bucket status. After cross-region replication is configured, bucket versioning cannot be disabled. |
Enable bucket versioning or cancel cross-region replication. |
409 Conflict |
OperationAborted |
A conflicting operation is being performed on this resource. Try again later. |
Try again later. |
409 Conflict |
ServiceNotSupported |
The request method is not supported by the server. |
Not supported by the server. Contact technical support. |
411 Length Required |
MissingContentLength |
The HTTP header Content-Length is not provided. |
Provide the Content-Length header. |
412 Precondition Failed |
PreconditionFailed |
At least one of the specified preconditions is not met. |
Modify according to the condition prompt in the returned message body. |
416 Client Requested Range Not Satisfiable |
InvalidRange |
The requested range cannot be obtained. |
Replace the range value and try again. |
500 Internal Server Error |
InternalError |
An internal error occurs. Try again later. |
Contact the technical support. |
501 Not Implemented |
ServiceNotImplemented |
The request method is not implemented by the server. |
Not supported currently. Contact the technical support. |
503 Service Unavailable |
ServiceUnavailable |
The server is overloaded or has internal errors. |
Try again later or contact the technical support. |
503 Service Unavailable |
SlowDown |
Reduce your request frequency. |
Reduce your request frequency. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.