Errors
All errors will return the most specific, appropriate HTTP response code from the following table:
Return Codes
Code | Error | Description |
---|---|---|
400 | Bad Request | A malformed request was received from the client. This is the most generic response given by the API |
401 | Unauthorized | You are not authorized and cannot access the requested resource |
403 | Forbidden | You do not have permission to access the requested resource |
404 | Not Found | The requested resource cannot be found. It may become available later |
405 | Method Not Allowed | An unsupported HTTP method was used for the requested resource |
406 | Not Acceptable | The Accept or Accept-Encoding type requested by the client is not available |
409 | Conflict | The request cannot be completed because there is a conflict with the existing resource |
410 | Gone | The requested resource is no longer available and never will be in future |
411 | Length Required | The requested resource expects a Content-Length to be supplied by the client |
413 | Request Entity Too Large | The request body supplied by the client was too large, the resource refuses to process it |
415 | Unsupported Media Type | An incorrect (or no) Content-Type has been supplied by the client |
422 | Unprocessable Entity | The request is not malformed and the media type is acceptable but the resource cannot process the request |
429 | Too many requests | The rate limit has been reached. Please see Rate Limiting section for more information |
500 | Internal Server Error | The server could not process your request due to an unexpected internal server error |
501 | Not Implemented | The requested resource has not been implemented |
503 | Service Unavailable | The requested service is temporarily not available |
Standard Response Format
All errors will have a standard response body with two fields, code and message. More fields can be used but they are optional.
Examples
This is the simplest form of an error’s return body, clients can rely on these fields being present in every error.
Error Responses - Example 1 (Baseline)
{
"code": 429,
"message": "You have exceeded your number of requests. Please try again later"
}
The following example has, in addition to the standard fields, for errors associated with this specific request.
Error Responses - Example 2 (More Complex)
{
"code": 422,
"message": "Unprocessable entity",
"cause": "Validation failed",
"errors": [
{
"resource": "Issue",
"field": "title",
"code": "missing_field"
},
...
]
}