Using the API
Errors
Error format and status codes.
The API uses standard HTTP status codes. Every error response has the same shape:
{
"error": {
"code": "not_found",
"message": "Brand not found",
"requestId": "e5813d25-a1e8-4338-8f21-953f3a8914ff"
}
}| Field | Description |
|---|---|
code | A stable, machine-readable error code. Use it in your code instead of message. |
message | A human-readable explanation. The wording may change. |
requestId | A unique id for the request. Include it when you contact support. |
Error codes
| Status | Code | What to do |
|---|---|---|
400 | invalid_request | A parameter is missing or invalid. The message says which one. |
401 | unauthorized | Check that the API key is correct and has not been deleted. |
403 | plan_required | Choose a plan for the workspace in Settings → Billing & plans. |
404 | not_found | The resource does not exist, or it belongs to a different workspace. |
429 | rate_limited | Wait for the seconds in the Retry-After header, then retry. See Rate limits. |
500 | internal_error | Something went wrong on our side. Retry with exponential backoff. If it keeps happening, contact support with the requestId. |
Unknown query parameters are rejected with 400 invalid_request, so a typo in a parameter name does not silently return unfiltered data.