API reference
Errors
The API uses standard HTTP status codes and returns a consistent JSON error format so you can handle failures programmatically.
Error response format
Error response
{
"success": false,
"error": "Resource not found",
"errors": ["Product with ID abc-123 does not exist"]
}
| Field | Type | Description |
|---|---|---|
| success | boolean | Always false for error responses. |
| error | string | Human-readable error summary. |
| errors | string[] | Detailed error messages. May contain multiple entries for validation errors. |
Status codes
| Code | Description |
|---|---|
| 200 | Request succeeded. |
| 201 | Resource created successfully. |
| 401 | Missing or invalid API key. |
| 403 | Valid key, but insufficient permissions for this action. |
| 404 | Resource not found. |
| 422 | Validation failed. Check the errors array for details. |
| 429 | Rate limit exceeded. Back off and retry. |
| 500 | Internal server error. Contact support if persistent. |
Rate limiting
Requests are rate-limited per API key, and a separate ceiling applies per source
IP address across every key sending from it. When you exceed either limit, the
API returns 429 Too Many Requests. Use exponential backoff to retry.