Rate Limits
Rate limits are restrictions that our API imposes on the number of times your application can access our services within a specified period of time.
Usage Limits
By default, the following table outlines the rate limits for our API:
Type | Limit | Description |
---|---|---|
Average | 10 requests per second | The maximum number of requests that can be made to the API within a one-second period. |
Burst | 10 requests | The maximum number of requests allowed to go through in a same arbitrarily small period of time (in real world context, this means "at the same time"). |
How do our rate limits work?
Our API imposes rate limits on a per-IP basis. This means that the rate limits are applied to the number of requests coming from a single IP address. The rate limits are enforced over a rolling window, which means that the count of requests is continuously updated over time.
When a request is made to the API, the request is checked against the rate limits. If the request exceeds the rate limits, the API will return a 429 Too Many Requests
response, indicating that the request has been throttled.
How to handle rate limits
When you receive a 429 Too Many Requests
response, it means that your application has exceeded the rate limits. When this happens, you should wait for the specified period of time before making additional requests to the API.
Why do we have rate limits?
Rate limits are a common practice for APIs, and they are put in place for a few different reasons:
- Protect against abuse or misuse of the API: For example, a malicious actor could flood the API with requests in an attempt to overwhelm the system and cause a denial of service. By imposing rate limits, we can prevent this from happening.
- Ensure fair usage: Rate limits help ensure that all users of the API have equal access to the resources provided by the API. Without rate limits, a small number of users could consume all available resources, leaving none for other users.
- Aggregate load: If requests to the API increases dramatically, it can cause performance issues. Rate limits can help to smooth out the load on the system by spreading requests out over time.