Error response format
All error responses follow a consistent structure:HTTP status codes
Common error codes
Authentication errors
Permission errors
Validation errors
Resource errors
Validation error details
Validation errors include field-level details:field value to highlight specific form fields or log the exact problem.
Handling errors in code
Basic error handling
Retry logic for transient errors
Some errors are transient and can be retried:Security considerations
Do not expose error details to end users. Internal error codes and stack traces should be logged, not displayed. Show generic messages to users. 404 for access denied. When a user requests a resource they cannot access (wrong tenant, insufficient permissions), the API returns 404 rather than 403 to avoid revealing that the resource exists. Rate limit errors do not confirm existence. Rate limiting is applied before resource lookup, so a 429 does not indicate whether the requested resource exists.Logging recommendations
Log the following for debugging:- Request URL and method
- Response status code
- Error code and message
- Request ID (from
X-Request-Idheader) - Timestamp
- Authentication tokens
- Full request bodies containing sensitive data
- User passwords or secrets
Next steps
Authentication
Set up API authentication
API Reference
Browse the complete API documentation

