API Rate Limits

Rate limits protect your SiteX installation from excessive API usage. Each API key has its own rate limit counters. 

Default Limits

WindowDefault LimitConfigurable
Per minute60 requestsYes (per key)
Per hour1,000 requestsYes (per key)
Per day10,000 requestsYes (per key)

Rate Limit Headers

Every API response includes rate limit headers:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1710345600
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

Exceeding the Limit

When a rate limit is exceeded, the API returns:

HTTP/1.1 429 Too Many Requests
Retry-After: 30

{
    "error": "rate_limit_exceeded",
    "message": "Rate limit exceeded. Try again in 30 seconds.",
    "status": 429
}

The Retry-After header indicates how many seconds to wait before retrying.

Customizing Limits

Rate limits can be adjusted per API key from the API Key Management page. For AI agents that publish content in batches, you may want to increase the per-minute limit.

Best Practices

  • Check X-RateLimit-Remaining before making requests
  • Implement exponential backoff when receiving 429 responses
  • Batch operations where possible to reduce request count
  • Use the Retry-After header to determine wait time
  • Cache GET responses locally to avoid unnecessary repeat requests