API Error Codes - Amazon SimpleDB

API Error Codes

There are two types of error codes, client and server.

Client error codes are generally caused by the client and might be an authentication failure or an invalid domain; these errors are accompanied by a 4xx HTTP response code.

Server error codes are generally caused by a server-side issue and a large volume of server error codes should be reported to Amazon Web Services (including the request ID and the time when the request was issued); these errors are accompanied by a 5xx HTTP response code.

About Response Code 503

Typically, a large volume of server error codes (5xx) should be reported to Amazon Web Services with one exception: response code 503. A response code 503 indicates that applications are submitting too many requests to Amazon SimpleDB in a very brief span of time. So, while other server error codes (5xx) indicate a distinct server problem, a 503 response code does not indicate a problem with Amazon SimpleDB, specifically, and should be resolved on the client side.

To resolve response code 503, implement request retries in the client application with exponential backoff. For details, see API Error Retries. Or, split your domain into multiple shards to achieve better parallelism and higher throughput.

Amazon SimpleDB Error Codes

The following table lists all Amazon SimpleDB error codes.

Error Description HTTP Status Code
AccessFailure Access to the resource " + resourceName + " is denied. 403 Forbidden
AttributeDoesNotExist Attribute ("+ name + ") does not exist 404 Not Found
AuthFailure AWS was not able to validate the provided access keys. 403 Forbidden
AuthMissingFailure AWS was not able to authenticate the request: access keys are missing. 403 Forbidden
ConditionalCheckFailed Conditional check failed. Attribute (" + name + ") value exists. 409 Conflict
ConditionalCheckFailed Conditional check failed. Attribute ("+ name +") value is ("+ value +") but was expected ("+ expValue +") 409 Conflict
ExistsAndExpectedValue Expected.Exists=false and Expected.Value cannot be specified together 400 Bad Request
FeatureDeprecated The replace flag must be specified per attribute, not per item. 400 Bad Request
IncompleteExpectedExpression If Expected.Exists=true or unspecified, then Expected.Value has to be specified 400 Bad Request
IncompleteSignature The request signature does not conform to AWS standards. 400 Bad Request
InternalError Request could not be executed due to an internal service error. 500 Internal Server Error
InvalidAction The action " + actionName + " is not valid for this web service. 400 Bad Request
InvalidHTTPAuthHeader The HTTP authorization header is bad, use " + correctFormat". 400 Bad Request
InvalidHttpRequest The HTTP request is invalid. Reason: " + reason". 400 Bad Request
InvalidLiteral Illegal literal in the filter expression. 400 Bad Request
InvalidNextToken The specified next token is not valid. 400 Bad Request
InvalidNumberPredicates Too many predicates in the query expression. 400 Bad Request
InvalidNumberValueTests Too many value tests per predicate in the query expression. 400 Bad Request
InvalidParameterCombination The parameter " + param1 + " cannot be used with the parameter " + param2". 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter MaxNumberOfDomains is invalid. MaxNumberOfDomains must be between 1 and 100. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter MaxNumberOfItems is invalid. MaxNumberOfItems must be between 1 and 2500. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter MaxNumberOfDomains is invalid. MaxNumberOfDomains must be between 1 and 100. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter " + paramName + " is invalid. " + reason". 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Name is invalid. Value exceeds maximum length of 1024. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Value is invalid. Value exceeds maximum length of 1024. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter DomainName is invalid. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Replace is invalid. The Replace flag should be either true or false. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Expected.Exists is invalid. Expected.Exists should be either true or false. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Name is invalid.The empty string is an illegal attribute name 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter Value is invalid. Value exceeds maximum length of 1024. 400 Bad Request
InvalidParameterValue Value (" + value + ") for parameter ConsistentRead is invalid. The ConsistentRead flag should be either true or false. 400 Bad Request
InvalidQueryExpression The specified query expression syntax is not valid. 400 Bad Request
InvalidResponseGroups The following response groups are invalid: " + invalidRGStr. 400 Bad Request
InvalidService The Web Service " + serviceName + " does not exist. 400 Bad Request
InvalidSortExpression The sort attribute must be present in at least one of the predicates, and the predicate cannot contain the is null operator. 400 Bad Request
InvalidURI The URI " + requestURI + " is not valid. 400 Bad Request
InvalidWSAddressingProperty WS-Addressing parameter " + paramName + " has a wrong value: " + paramValue". 400 Bad Request
InvalidWSDLVersion Parameter (" + parameterName +") is only supported in WSDL version 2009-04-15 or beyond. Please upgrade to new version 400 Bad Request
MissingAction No action was supplied with this request. 400 Bad Request
MissingParameter The request must contain the specified missing parameter. 400 Bad Request
MissingParameter The request must contain the parameter " + paramName". 400 Bad Request
MissingParameter The request must contain the parameter ItemName. 400 Bad Request
MissingParameter The request must contain the parameter DomainName. 400 Bad Request
MissingParameter Attribute.Value missing for Attribute.Name='name'. 400 Bad Request
MissingParameter Attribute.Name missing for Attribute.Value='value'. 400 Bad Request
MissingParameter No attributes for item ='" + itemName + "'. 400 Bad Request
MissingParameter The request must contain the parameter Name 400 Bad Request
MissingWSAddressingProperty WS-Addressing is missing a required parameter (" + paramName + ")". 400 Bad Request
MultipleExistsConditions Only one Exists condition can be specified 400 Bad Request
MultipleExpectedNames Only one Expected.Name can be specified 400 Bad Request
MultipleExpectedValues Only one Expected.Value can be specified 400 Bad Request
MultiValuedAttribute Attribute (" + name + ") is multi-valued. Conditional check can only be performed on a single-valued attribute 409 Conflict
NoSuchDomain The specified domain does not exist. 400 Bad Request
NoSuchVersion The requested version (" + version + ") of service " + service + " does not exist. 400 Bad Request
NotYetImplemented Feature " + feature + " is not yet available". 401 Unauthorized
NumberDomainsExceeded The domain limit was exceeded. 409 Conflict

NumberDomainAttributes

Exceeded

Too many attributes in this domain. 409 Conflict
NumberDomainBytesExceeded Too many bytes in this domain. 409 Conflict

NumberItemAttributes

Exceeded

Too many attributes in this item. 409 Conflict

NumberSubmitted

AttributesExceeded

Too many attributes in a single call. 409 Conflict

NumberSubmittedAttributesExceeded

Too many attributes for item itemName in a single call. Up to 256 attributes per call allowed. 409 Conflict

NumberSubmittedItemsExceeded

Too many items in a single call. Up to 25 items per call allowed. 409 Conflict
RequestExpired Request has expired. " + paramType + " date is " + date". 400 Bad Request
QueryTimeout A timeout occurred when attempting to query domain <domain name> with query expression <query expression>. BoxUsage [<box usage value>]". 408 Request Timeout
ServiceUnavailable Service Amazon SimpleDB is busy handling other requests, likely due to too many simultaneous requests. Consider reducing the frequency of your requests, and try again. See About Response Code 503. 503 Service Unavailable
TooManyRequestedAttributes Too many attributes requested. 400 Bad Request
UnsupportedHttpVerb The requested HTTP verb is not supported: " + verb". 400 Bad Request
UnsupportedNextToken The specified next token is no longer supported. Please resubmit your query. 400 Bad Request
URITooLong The URI exceeded the maximum limit of "+ maxLength". 400 Bad Request
ConflictException Idempotent request failed due to parameter mismatch. 409 Conflict
DeleteConflictException Cannot delete domain due to a PENDING or IN_PROGRESS export. 409 Conflict
ExportTimedOut The export operation timed out and could not be completed. Try again. 500 Internal Server Error
InvalidNextTokenException The specified next token is not valid. 400 Bad Request
InvalidParameterCombinationException Parameter S3SseKmsKeyId must be provided only when S3SseAlgorithm is KMS. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter ClientToken is invalid. ClientToken must be between 1 and 128 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter ClientToken is invalid. ClientToken must only contain ASCII characters in the range of 33-126, inclusive. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter DomainName is invalid. DomainName must be between 3 and 255 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter DomainName is invalid. DomainName must only contain letters, numbers, underscores, periods, and hyphens. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter ExportArn is invalid. ExportArn must be between 20 and 2048 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter ExportArn is invalid. ExportArn must be a valid Amazon SimpleDB Domain Export ARN. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter MaxResults is invalid. MaxResults must be between 1 and 100. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter NextToken is invalid. NextToken must be between 1 and 2048 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter NextToken is invalid. NextToken must only contain letters, numbers, underscores, hyphens, and equals signs. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3BucketName is invalid. S3BucketName must be between 3 and 63 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3BucketOwner is invalid. S3BucketOwner must be a valid AWS account ID. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3KeyPrefix is invalid. S3KeyPrefix must be between 1 and 850 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3SseAlgorithm is invalid. S3SseAlgorithm can only be AES256 or KMS. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3SseKmsKeyId is invalid. S3SseKmsKeyId must be between 1 and 2048 characters long. 400 Bad Request
InvalidParameterValueException Value (" + value + ") for parameter S3SseKmsKeyId is invalid. S3SseKmsKeyId must only contain letters, numbers, underscores, colons, and hyphens. 400 Bad Request
KmsAccessDeniedException An error occurred during the export. Access to the specified KMS key is denied. 400 Bad Request
KmsDisabledException An error occurred during the export. The specified KMS key is disabled. 400 Bad Request
KmsInvalidKeyUsageException An error occurred during the export. The expected KMS key usage is ENCRYPT_DECRYPT. 400 Bad Request
KmsInvalidStateException An error occurred during the export. The specified KMS key is in an invalid state. 400 Bad Request
KmsNotFoundException An error occurred during the export. The specified KMS key does not exist. 400 Bad Request
NoSuchDomainException The specified domain does not exist. 400 Bad Request
NoSuchExportException The specified export does not exist. 400 Bad Request
NumberDomainExportsExceeded The export limit was exceeded. 409 Conflict
S3AccessDenied Export failed due to insufficient access to the Amazon S3 bucket. 403 Forbidden
S3AccountProblem Export failed due to a problem with your AWS account. 403 Forbidden
S3AllAccessDisabled Export failed due to insufficient access to the Amazon S3 bucket. 403 Forbidden
S3InvalidBucketOwnerAWSAccountID Export failed due to insufficient access to the Amazon S3 bucket. 403 Forbidden
S3NoSuchBucket An error occurred during the export. The specified Amazon S3 bucket does not exist. 404 Not Found
S3NotSignedUp Export failed due to a problem with your AWS account. 403 Forbidden