Errors
Last updated
Last updated
The Sway Charts REST API relies on the standard HTTP status codes for communicating errors. Codes in the range of 400-499
indicate an error on the client side which can be fixed by amending the request and re-trying. Codes in the range of 500-599
indicate a server-side error.
The Sway Charts REST API does not use any custom status codes. Each error is reported via the status code; the response body includes an internal error code (if applicable) as well as the error description.
Status code | Error | Additional information |
---|---|---|
Application level errors are reported in a response as special "error" objects containing the following data:
errorCode: Error code; distinct for different distinct errors
description: Human-readable description of the issue (in English; subject to change without changes in API version)
The following errors may be triggered by any resource of the API:
Request comes from the non-authenticated client
Status code
: 401 Unauthorized
Error code
: 1
Description
: Authorization required
Malformed HMAC signature (HMAC authentication failed due to malformed HMAC signature header. See HMAC auth)
Status code
: 400 Bad Request
Error code
: 11
Description
: Malformed HMAC signature
HMAC signature too old (more than a permitted amount of time passed since the request was created. See HMAC auth)
Status code
: 401 Unauthorized
Error code
: 12
Description
: HMAC signature too old
HMAC signature mismatch (HMAC signature check failed; authentication failed. See HMAC auth)
Status code
: 401 Unauthorized
Error code
: 13
Description
: HMAC signature mismatch
400 Bad Request
Client sent a malformed request, such as missing Host header or a semantically incorrect request
The client should not repeat the request without modifications
401 Unauthorized
Client is not authorized in the system.
403 Forbidden
Client submitted a request without the required condition
For security reasons, 403 Forbidden status code is not used to indicate resources for which the client has no permissions. In this case the 404 status code is used
404 Not Found
Either the resource does not exist or client is not permitted to access the resource.
405 Method Not Allowed
HTTP method specified in request is not permitted for this resource
Response must contain an Allow header with the list of supported methods.
406 Not Acceptable
The API doesn't support the specified representation format
409 Conflict
The API understood the request but there are semantic issues with the request and the request could not be validated
Used to indicate application-level errors, see application-level errors
412 Precondition Failed
Conditional request failed
413 Request Entity Too Large
REST API refuses to process a request because request size is greater than a pre-defined threshold
Security measure to avoid DDoS attacks
415 Unsupported Media Type
Client sends the message body in a format that the server does not understand (neither in application/xml
nor in application/json
format).
429 Too Many Requests
The user sent too many request in a given amount of time.
500 Internal Server Error
An unexpected error occurred on server. Request is not processed.