Rate limits
Each API key may make 240 requests per minute. The window is a fixed calendar minute, counted per key, not per business.
The headers
Every authenticated response tells you where you stand:
| Header | Meaning |
|---|---|
X-RateLimit-Limit | Requests allowed in the window. |
X-RateLimit-Remaining | Requests left in this window. |
X-RateLimit-Reset | Unix time the window resets. |
Retry-After | On a 429 only: seconds to wait. |
Response headers
HTTP/2 200
X-Request-Id: req_1c2a9e0b7d4c316f
X-RateLimit-Limit: 240
X-RateLimit-Remaining: 231
X-RateLimit-Reset: 1793872860
When you exceed it
The request is refused with 429 rate_limited and does
nothing. Wait Retry-After seconds and try again.
- Spread bulk work out rather than bursting; 4 requests a second is the sustained rate.
- Use
per_page=100andupdated_sinceinstead of re-reading everything. - Prefer webhooks to polling.
Response · 429
HTTP/2 429
Retry-After: 17
{
"error": {
"type": "rate_limited",
"message": "Rate limit exceeded. Try again after the window resets."
},
"meta": { "request_id": "req_e0b7d4c316f1c2a9" }
}