Skip to main content

Rate Limiting

Every API request is subject to rate limits. The exact limits depend on whether you’re using a public endpoint or authenticating with an API key.

Public Endpoints (No Key Required)

The following endpoints can be called without an API key:
  • GET /api/v1/quotes/random
  • GET /api/v1/quotes/daily
Public requests are rate-limited per IP address:
LimitValue
Per minute10
Per day100
Provide an API key (even a free-tier key) to get significantly higher limits.

Authenticated Endpoints (API Key Required)

When using an API key, two limits apply:
  1. Per-minute rate limit — prevents burst abuse
  2. Monthly quota — total requests allowed per billing period

Limits by Plan

PlanRequests/MinuteMonthly Quota
Free305,000
Supporter6050,000
Pro Supporter200500,000
Custom1,0005,000,000

Response Headers

Every API response includes rate limit headers:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 42
X-RateLimit-Reset: 1714564860
X-Monthly-Quota-Limit: 50000
X-Monthly-Quota-Remaining: 47823

Handling 429 Responses

When rate-limited, the API returns a 429 Too Many Requests response with a Retry-After header:
{
  "status": "error",
  "error": {
    "code": "RATE_LIMIT_EXCEEDED",
    "message": "You have exceeded your rate limit of 60 requests per minute.",
    "details": {
      "limit": 60,
      "reset_at": "2026-05-01T12:01:00Z"
    }
  }
}
Best practice: Check the X-RateLimit-Remaining header and implement backoff before hitting the limit.