Error responses

The StorageGRID system supports all standard S3 REST API error responses that apply. In addition, the StorageGRID implementation adds several custom responses.

Supported S3 API error codes

Name HTTP status
AccessDenied 403 Forbidden
BadDigest 400 Bad Request
BucketAlreadyExists 409 Conflict
BucketNotEmpty 409 Conflict
IncompleteBody 400 Bad Request
InternalError 500 Internal Server Error
InvalidAccessKeyId 403 Forbidden
InvalidArgument 400 Bad Request
InvalidBucketName 400 Bad Request
InvalidDigest 400 Bad Request
InvalidEncryptionAlgorithmError 400 Bad Request
InvalidPart 400 Bad Request
InvalidPartOrder 400 Bad Request
InvalidRange 416 Requested Range Not Satisfiable
InvalidRequest 400 Bad Request
InvalidStorageClass 400 Bad Request
InvalidTag 400 Bad Request
InvalidURI 400 Bad Request
KeyTooLong 400 Bad Request
MalformedXML 400 Bad Request
MetadataTooLarge 400 Bad Request
MethodNotAllowed 405 Method Not Allowed
MissingContentLength 411 Length Required
MissingRequestBodyError 400 Bad Request
MissingSecurityHeader 400 Bad Request
NoSuchBucket 404 Not Found
NoSuchKey 404 Not Found
NoSuchUpload 404 Not Found
NotImplemented 501 Not Implemented
NoSuchBucketPolicy 404 Not Found
PreconditionFailed 412 Precondition Failed
RequestTimeTooSkewed 403 Forbidden
ServiceUnavailable 503 Service Unavailable
SignatureDoesNotMatch 403 Forbidden
TooManyBuckets 400 Bad Request
UserKeyMustBeSpecified 400 Bad Request

StorageGRID custom error codes

Name Description HTTP status
XBucketLifecycleNotAllowed Bucket lifecycle configuration is not allowed in a compliant bucket 400 Bad Request
XBucketPolicyParseException Failed to parse received bucket policy JSON. 400 Bad Request
XComplianceConflict Operation denied because of compliance settings. 403 Forbidden
XComplianceReducedRedundancyForbidden Reduced redundancy is not allowed in compliant bucket 400 Bad Request
XMaxBucketPolicyLengthExceeded Your policy exceeds the maximum allowed bucket policy length. 400 Bad Request
XMissingInternalRequestHeader Missing a header of an internal request. 400 Bad Request
XNoSuchBucketCompliance The specified bucket does not have compliance enabled. 404 Not Found
XNotAcceptable The request contains one or more accept headers that could not be satisfied. 406 Not Acceptable
XNotImplemented The request you provided implies functionality that is not implemented. 501 Not Implemented