Rate limits
The API is rate limited per API key using a fixed-window counter. The default is 120 requests per 60-second window.
How it works
Requests are counted in fixed 60-second windows, bucketed by your API key (requests without a key
fall back to per-IP buckets). Each window starts on a 60-second boundary; when it rolls over, your
full allowance is restored at once. A request that pushes you over the limit is rejected with
429.
Response headers
Successful responses include your current standing in the window:
| Header | Meaning |
|---|---|
X-RateLimit-Limit | Maximum requests allowed in the window (e.g. 120). |
X-RateLimit-Remaining | Requests left in the current window. |
X-RateLimit-Reset | Seconds until the window resets (when present). |
HTTP/1.1 200 OK
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
When you exceed the limit — 429
Once you go over, the API responds with 429 and a Retry-After header
telling you how many seconds until the window resets:
HTTP/1.1 429 Too Many Requests
Retry-After: 24
{
"error": "rate_limited",
"message": "Too many requests."
}
Honor Retry-After: wait that many seconds before retrying. Because the window is
fixed, spreading requests evenly rather than bursting keeps you well under the limit. Need a higher
limit? Contact support.