Developers

Rate limits

Limits per caller and route class, announced in RateLimit headers.

How limits work

Each caller has limits per class of route; a platform’s limits cover all its tokens together and follow its plan. The current limit, what remains and when it resets come back in the RateLimit-* headers.

Once a limit is spent, Core answers 429 rate_limited with Retry-After: wait that long, then repeat. Public link routes (invitations, notices) have their own, stricter limit.

A monthly allowance used up is 429 quota_exhausted; it renews on the first of the month.

Good practice

Prefer webhooks to polling; poll a 202 job with backoff (1, 2, 4 seconds, up to 15). Follow the export routes’ X-Karibu-Next-Cursor rather than re-reading from the start.