Overview
Our API implements rate limiting to ensure fair usage and maintain service stability for all users. When you exceed the rate limit, you’ll receive a429 Too Many Requests
response with helpful headers to guide your retry strategy.
Rate Limits
- Default Rate Limit: 200 requests per minute per API key
- Rate Limit Window: 60-second sliding window
Rate Limit Headers
When making requests to our API, the following headers are included in every response to help you track your usage:Header | Description | Example |
---|---|---|
X-RateLimit-Limit | Maximum number of requests allowed in the current window | 200 |
X-RateLimit-Remaining | Number of requests remaining in the current window | 150 |
X-RateLimit-Reset | Unix timestamp when the rate limit window resets | 1234567890 |
Retry-After | Number of seconds to wait before retrying (only included in 429 responses) | 60 |
Rate Limit Response
When you exceed the rate limit, you’ll receive the following response:HTTP
Implementing Retry Logic
Best Practices
- Always check for 429 responses and implement exponential backoff
- Respect the Retry-After header - this tells you the minimum time to wait
- Monitor your usage using the
X-RateLimit-Remaining
header - Implement preemptive throttling when
X-RateLimit-Remaining
is low
Example Implementation
Monitoring Rate Limits
Preemptive Rate Limiting
To avoid hitting rate limits, monitor theX-RateLimit-Remaining
header and implement throttling:
JavaScript
Frequently Asked Questions
What happens if I consistently hit rate limits?
What happens if I consistently hit rate limits?
Repeated rate limit violations may result in temporary suspension of API access. Implement proper retry logic and consider upgrading your plan if you need higher limits.
How is the rate limit window calculated?
How is the rate limit window calculated?
We use a sliding window approach that tracks requests over the past 60 seconds. Each request timestamp is recorded, and requests older than 60 seconds are removed from the count.
Are rate limits applied per API key or per IP address?
Are rate limits applied per API key or per IP address?
Rate limits are applied per API key. Each API key has its own independent rate limit counter.
Do different endpoints have different rate limits?
Do different endpoints have different rate limits?
Currently, all endpoints share the same rate limit of 200 requests per minute. Some endpoints may have additional specific limits which will be documented separately.