Error Reference
Error codes returned by the Traceway API.
Error Reference
The API is not yet live. Error codes below reflect the planned design and are subject to change.
All error responses follow this shape:
{
"error": "error_code",
"message": "A human-readable description of the error."
}
HTTP status codes
| Status | Meaning |
|---|---|
| 200 | Success |
| 201 | Resource created |
| 400 | Bad request — invalid or missing fields |
| 401 | Unauthorized — missing or invalid API key |
| 403 | Forbidden — key valid but lacks access |
| 404 | Resource not found |
| 422 | Unprocessable — request is valid JSON but fails validation |
| 429 | Rate limited — too many requests |
| 500 | Internal server error |
Error codes
[PLACEHOLDER: Confirm the full list of error code strings from the API implementation. Common expected codes:]
| Code | Status | Description |
|---|---|---|
| unauthorized | 401 | No API key provided |
| invalid_key | 401 | API key not recognised |
| forbidden | 403 | Insufficient access |
| not_found | 404 | Resource does not exist |
| validation_error | 422 | One or more fields failed validation |
| rate_limited | 429 | Request rate exceeded |
| internal_error | 500 | Unexpected server error |
Rate limit headers
[PLACEHOLDER: Confirm rate limit response headers. Expected:]
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1714556400
When rate limited (429), wait until the timestamp in X-RateLimit-Reset before retrying.
Retry guidance
- 400, 422: Do not retry — fix the request before resending
- 401, 403: Do not retry — check your API key
- 404: Do not retry — the resource does not exist
- 429: Retry after the X-RateLimit-Reset timestamp
- 500: Retry with exponential backoff — up to 3 attempts