Skip to content

Rate Limits

The Replicer API enforces per-key rate limits using a sliding window algorithm. Limits vary by subscription plan.

Plan limits

PlanRequests per minute
Pay As You Go60
Hobbyist60
Personal120
Professional300

Response headers

Every API response includes rate limit headers:

HeaderDescription
X-RateLimit-LimitMaximum requests per minute for your plan
X-RateLimit-RemainingRemaining requests in the current window
X-RateLimit-ResetUnix timestamp when the window resets

Example:

http
HTTP/1.1 200 OK
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 85
X-RateLimit-Reset: 1712324460

Exceeding the limit

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

json
{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Rate limit exceeded. Try again in 45 seconds"
  },
  "requestId": "req-abc123"
}

The response includes a Retry-After header with the number of seconds to wait:

http
HTTP/1.1 429 Too Many Requests
Retry-After: 45
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1712324460

Best practices

  • Check headers: Monitor X-RateLimit-Remaining to avoid hitting the limit
  • Implement backoff: When you receive a 429, wait for Retry-After seconds before retrying
  • Batch operations: Use list endpoints with pagination rather than individual lookups
  • Cache responses: Cache read-only data when possible to reduce API calls
  • Upgrade your plan: If you consistently need more throughput, upgrade to a higher plan

Replicer API Documentation