Skip to main content

Error Codes

All API errors follow a standard format with machine-readable error codes.

Error Response Format

{
"success": false,
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Instance with ID 'abc123' not found",
"details": {}
},
"meta": {
"timestamp": "2026-02-15T12:00:00Z",
"requestId": "req_abc123"
}
}

HTTP Status Codes

4xx Client Errors

StatusCodeDescription
400VALIDATION_ERRORRequest body or parameters failed validation
400INVALID_REQUESTMalformed request structure
401UNAUTHORIZEDMissing or invalid authentication
401TOKEN_EXPIREDJWT access token has expired
401TOKEN_INVALIDJWT is malformed or signature is invalid
401TOKEN_REVOKEDToken has been revoked
403FORBIDDENAuthenticated but lacking required permissions
403INSUFFICIENT_PERMISSIONSRole does not grant access to this resource
404RESOURCE_NOT_FOUNDRequested resource does not exist
409CONFLICTResource already exists or state conflict
422UNPROCESSABLE_ENTITYValid syntax but semantic errors
429RATE_LIMITEDToo many requests - slow down

5xx Server Errors

StatusCodeDescription
500INTERNAL_ERRORUnexpected server error
502BAD_GATEWAYUpstream service unavailable
503SERVICE_UNAVAILABLEService temporarily unavailable
504GATEWAY_TIMEOUTUpstream service timed out

Handling Errors

Retry Strategy

  • 429 - Retry after the time specified in the Retry-After header
  • 5xx - Retry with exponential backoff (max 3 retries)
  • 4xx - Do not retry (fix the request)