Docs
Limits and Errors
What the API allows, how to page through results and what the error codes mean.
Rate Limits
| Limit | Value | Applies to |
|---|---|---|
| Per minute | 60 requests | each API key, REST and MCP together |
| Per day | 10,000 requests | each API key (UTC day) |
| CSV export | 20 an hour | each API key |
| Page depth | offset + limit ≤ 10,000 | list endpoints |
Every response carries your budget:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 57
X-RateLimit-Daily-Remaining: 9941
Retry-After: 12 (on 429 only, in seconds)When you get 429, wait for Retry-After and retry; don't loop. Need more? Tell us what you are building from the contact page.
Paging
Lists take limit (the endpoint's maximum is in the reference) and offset, and return total. To read more than 10,000 rows, narrow the filters or use since to work forward in time, or use the CSV export.
Error Format
{
"error": {
"code": "rate_limited",
"message": "Up to 60 requests a minute."
}
}| Status | Code | Meaning |
|---|---|---|
| 400 | bad_request | A parameter is invalid; the message says which. |
| 400 | too_deep | offset + limit passed 10,000. |
| 401 | invalid_api_key | Missing, unknown or revoked key, or no active plan. |
| 401 | key_expired | The key's expiry date has passed. Create a new one. |
| 403 | ip_not_allowed | The key is limited to other addresses. |
| 403 | key_paused | Paused after unusual use (many addresses, or profiles in id order). See Retry-After. |
| 404 | not_found | No such company or route. |
| 429 | data_volume | The key's daily data volume is used up; resets at 00:00 UTC. |
| 429 | too_many_failures | Too many unknown keys from this address; wait for Retry-After. |
| 429 | rate_limited | Over a limit. See Retry-After. |
| 503 | unavailable | The engine is briefly unavailable. Retry with backoff. |