Request rates
Requests withX-API-Key are limited per key: a sustained rate of
10 requests per second, with short bursts up to 20 requests.
Exceeding the limit returns 429 Too Many Requests.
A 429 carries a Retry-After header: whole seconds until the limit clears.
Wait that long, and if the header is missing for any reason, fall back to
exponential backoff: 1 s, 2 s, 4 s, and so on with a little jitter.
- keep your rate at 8–9 requests per second to leave headroom for retries;
- fetch pages at the maximum size (
limit=1000) rather than in small chunks; - on a
429, stop sending parallel requests — wait out the window.
Lifetimes
Webhook delivery
- Each event gets up to 8 delivery attempts with exponentially growing intervals, roughly a day in total.
- Success is any
2xxresponse within a reasonable time; everything else (timeout,3xx,4xx,5xx) counts as a failure and is retried. - After 20 consecutive permanently failed deliveries the subscription is automatically disabled. Re-enable it in the app (Settings → Integrations → “For developers” → Webhooks); there is currently no re-enable endpoint in the API.
Sizes
- An Ingest batch has no hard record cap, but keep it within a few thousand records: processing is asynchronous, and the request body should stay a reasonable size (single-digit megabytes).
- List responses are bounded by pagination:
limitdefaults to100, maximum1000.