Error Codes
All errors follow a standard response format.
{
"error": {
"code": "plan_limit_exceeded",
"message": "Product limit reached (50/50)",
"details": {
"feature": "maxProducts",
"current": 50,
"limit": 50,
"upgrade_url": "/settings/billing"
}
}
}| Status | Name | Description | Resolution |
|---|---|---|---|
| 400 | Bad Request | Invalid request body or parameters | Check the request body matches the expected schema |
| 401 | Unauthorized | Missing or invalid API key | Include a valid Bearer token in the Authorization header |
| 403 | Forbidden | Plan limit exceeded or feature not available | Upgrade your plan or reduce usage |
| 404 | Not Found | Resource does not exist | Check the resource ID is correct |
| 409 | Conflict | Duplicate resource (e.g. SKU already exists) | Use a unique identifier or update the existing resource |
| 429 | Too Many Requests | Rate limit exceeded | Wait for X-RateLimit-Reset and retry with backoff |
| 500 | Internal Server Error | Unexpected server error | Retry after a short delay. Contact support if persistent |