Rate Limits
Rate limits protect the API from abuse and ensure fair usage for all users.
Limits by Plan
| Plan | Daily | Per Minute | Burst |
|---|---|---|---|
| Free | 1,000 | 60 | 10 |
| Developer | 50,000 | 500 | 50 |
| Business | 500,000 | 2,000 | 100 |
| Enterprise | Unlimited | Custom | Custom |
Rate Limit Headers
Every API response includes rate limit information:
X-RateLimit-Limit: 1000 X-RateLimit-Remaining: 950 X-RateLimit-Reset: 1707350400
X-RateLimit-Limit— Requests allowed per windowX-RateLimit-Remaining— Requests remainingX-RateLimit-Reset— Unix timestamp when limit resets
Exceeding Limits
When you exceed your rate limit, the API returns a 429 status:
{
"errors": [{
"message": "Rate limit exceeded",
"extensions": {
"code": "RATE_LIMITED",
"retryAfter": 60
}
}]
}Best Practices
- Cache responses when possible
- Use WebSocket subscriptions for real-time data instead of polling
- Implement exponential backoff on 429 errors
- Batch multiple queries in a single GraphQL request
- Monitor your usage in the dashboard
Need Higher Limits?
If you need higher rate limits, consider upgrading your plan or contact us for Enterprise pricing.