Rate Limits

The Offly API enforces rate limits to ensure fair usage and platform stability.

Default limits

Each API key is limited to 600 requests per minute. This limit applies per API key, not per endpoint.

Rate limit headers

Every response includes headers to help you track your usage:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed per minute
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the limit resets
Retry-AfterSeconds to wait before retrying (only on 429 responses)

Rate limited response

When you exceed the rate limit, you'll receive a 429 Too Many Requests response:

429 Response
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 600
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1716825600
Retry-After: 32

{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded. Retry after 32 seconds."
  }
}

Best practices

  • Monitor the X-RateLimit-Remaining header to proactively throttle requests
  • Implement exponential backoff when receiving 429 responses
  • Always respect the Retry-After header value
  • Batch operations where possible to reduce total request count
  • Cache responses that don't change frequently
  • Use webhooks instead of polling for real-time updates