Register and manage APIs
SDKs and APIs
Kinde may rate limit incoming traffic to help maximise API stability and prevent bursts of requests from destabilizing API functions.
If you send a lot of requests in quick succession, you might see error responses with code 429
.
For advice on handling these errors, see Handle limiting gracefully, below. If you suddenly see a rising number of rate-limited requests, contact Kinde support.
Kinde has several limiters in the API, including a rate limiter and a concurrency limiter.
The basic rate limiter restricts the number of API requests per minute as follows:
page_size
parameter, additional results can be requested using the page_size
and next_token
parameters (e.g. GET /api/v1/subscribers
)POST/PATCH
requests to bulk endpoints (e.g. PATCH /api/v1/organizations/{org_code}/users
)If this affects your integrations and you require an extended period with a higher limit please get in touch.
Rate limiting can occur under a variety of conditions, but it’s most common in these scenarios:
Graceful handling involves monitoring for 429
status codes and triggering a retry method. The header RateLimit-Reset
will return the number of seconds until the rate limit is reset.
Your method should follow an exponential back-off schedule to reduce request volume as needed. We also recommend building randomness into the back-off schedule to avoid a ‘thundering herd’ effect.
Another method is to manage traffic at a global level, and throttle it back if you detect substantial rate limiting. A common technique for controlling rate is to implement something like a token bucket rate limiting algorithm on the client-side. Ready-made and mature implementations for token bucket can be found in most programming languages.