2xx range indicate success. Codes in the 4xx range indicate a problem with the request (something the caller can fix). Codes in the 5xx range indicate a problem on the server side.
Error Response Format
All error responses return a JSON body with the following structure:number
The HTTP status code, repeated in the body for convenience.
string
A short machine-readable label for the error class (for example
"Not Found" or "Bad Request").string | string[]
A human-readable description of the error. For validation errors this may be an array of strings, one per invalid field.
string
ISO 8601 datetime of when the error occurred.
string
The request path that produced the error.
Validation Error Example
When the request body fails validation,message contains one entry per failing field:
Status Code Reference
Handling Errors
- JavaScript
- Python
404 vs 403: Resource Visibility
For security reasons, the API returns404 Not Found in some situations where a resource exists but your token does not have access to it. This prevents information leakage about resources belonging to other organizations.
If you receive an unexpected 404, verify that:
- The resource ID is correct.
- The resource belongs to the organization associated with your API token.
- The resource has not been deleted or archived.
Server Errors (5xx)
If you receive a500 Internal Server Error, the request may succeed if retried. Use exponential backoff when retrying server errors. If the error persists, check the status page or contact support.
Do not retry
4xx errors automatically — they indicate a problem with the request itself, not a transient server issue. Fix the request before retrying.