Understanding and handling API errors gracefully
Range | Meaning |
---|---|
2xx | Success - Request completed successfully |
4xx | Client Error - Invalid request parameters |
5xx | Server Error - Something went wrong on our end |
Authentication Errors
authentication_error
These errors occur when there’s a problem with your API key.Code | Status | Description |
---|---|---|
missing_api_key | 401 | No Authorization header provided |
invalid_api_key | 401 | API key doesn’t exist or is invalid |
expired_api_key | 401 | API key has expired |
ip_restricted | 401 | Request from unauthorized IP |
insufficient_permissions | 403 | API key lacks required permissions |
Validation Errors
validation_error
These errors occur when request parameters fail validation.Code | Status | Description |
---|---|---|
invalid_request | 400 | General validation failure |
missing_required_field | 400 | Required field not provided |
invalid_field_value | 400 | Field value doesn’t meet requirements |
invalid_format | 400 | Data format is incorrect |
Rate Limit Errors
rate_limit_error
Returned when you exceed the allowed number of requests.Code | Status | Description |
---|---|---|
rate_limit_exceeded | 429 | Too many requests |
X-RateLimit-Limit
: Maximum requests allowedX-RateLimit-Remaining
: Requests remainingX-RateLimit-Reset
: Reset time (Unix timestamp)Resource Errors
resource_error
These errors relate to specific resources.Code | Status | Description |
---|---|---|
resource_not_found | 404 | Requested resource doesn’t exist |
resource_already_exists | 409 | Resource with same identifier exists |
resource_locked | 423 | Resource is locked for editing |
Server Errors
api_error
These indicate problems on our servers.Code | Status | Description |
---|---|---|
internal_server_error | 500 | Unexpected server error |
service_unavailable | 503 | Service temporarily unavailable |
Always check the response status
success
field.Log error details
request_id
for debugging.Handle specific error types
Implement retry logic