Rate Limits

Understand API rate limits and how to handle them.

Rate Limit Tiers

PlanRequests per MinuteDaily Limit
Free10100
Pro1,000Unlimited
Ultimate1,000Unlimited

Response Headers

Every API response includes rate limit headers:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 997
X-RateLimit-Reset: 1696150800
HeaderDescription
X-RateLimit-LimitMaximum requests allowed in the current window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets

Handling Rate Limits

When you exceed your rate limit, the API returns a 429 Too Many Requests response:

{
  "error": "rate_limit_exceeded",
  "message": "Rate limit exceeded. Please wait before making another request.",
  "retry_after": 42
}

Best Practices

  • Respect Retry-After — wait the indicated number of seconds before retrying
  • Implement exponential backoff — if you receive repeated 429s, increase your wait time
  • Cache responses — historical data does not change; cache it locally
  • Use WebSocket for live data — instead of polling the REST API for odds updates