Skip to content

Rate Limiting

The ELEMENT API implements a strict bucket-based rate limiting logic. Every API key has its own rate limit bucket, which will be shared over all access attempts with that API key.

How many requests per second are allowed?

By default, API keys may access the API 50 times over the span of 10 seconds. This can be changed per API key, to allow for more or less restrictive rate limits. Please contact an administrator if you need these limits changed.

Rate Limiting Headers

Every response from the ELEMENT API contains the following custom headers, informing the consumer about current rate limit usage.

Header Example Meaning
x-ratelimit-limit 50/10000ms How many requests are allowed per time bucket? (50 requests over 10 seconds)
x-ratelimit-reset 8270 When does the time bucket reset? (in 8.27 seconds, remaining will be set to 50)
x-ratelimit-remaining 42 How many requests are allowed for the remaining time bucket? (within the next 8.27 seconds, 42 more requests are allowed)

Rate Limit Error response

When your requests hit the rate limit, a 429 Too Many Requests error code will be returned. To avoid that, please make sure to check the x-ratelimit-remaining header to be more than 0 before sending any request.

Hitting the rate limit often?

Implement incremental or exponential backoff strategies where possible.