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.