Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.rushed.com.br/llms.txt

Use this file to discover all available pages before exploring further.

Limits by plan

PlanRequests / monthRequests / minuteOverage
Starter500,000100$0.50 / 1K requests
Pro1,000,000500$0.15 / 1K requests
BusinessUnlimited2,000N/A

How it works

Rushed uses two types of rate limiting:
  • Per-minute — burst protection. Returns 429 if exceeded. Resets every 60 seconds.
  • Monthly quota — usage-based billing. Never blocks requests. Overage is tracked and billed in the next billing period.
This means your integration never breaks because of monthly quota — you just pay for what you use beyond your plan.

Response headers

Per-minute headers

Every response includes per-minute rate limit headers:
X-RateLimit-Limit: 500
X-RateLimit-Remaining: 487
X-RateLimit-Reset: 1711641600
HeaderDescription
X-RateLimit-LimitMaximum requests per minute for your plan
X-RateLimit-RemainingRequests remaining in the current minute
X-RateLimit-ResetUnix timestamp when the window resets

Monthly quota headers

X-RateLimit-Monthly-Limit: 1000000
X-RateLimit-Monthly-Remaining: 847523
When you exceed the monthly quota, an additional header appears:
X-RateLimit-Monthly-Overage: 15200
HeaderDescription
X-RateLimit-Monthly-LimitMonthly request quota for your plan
X-RateLimit-Monthly-RemainingRequests remaining this month (0 if exceeded)
X-RateLimit-Monthly-OverageNumber of requests over quota (billed as overage)

Handling 429 errors

429 is only returned for per-minute burst limits, never for monthly quota.
{
  "success": false,
  "error": "Rate limit exceeded. Try again in 32 seconds.",
  "statusCode": 429
}

Backoff strategy

  1. Read the X-RateLimit-Reset header
  2. Wait until the reset timestamp
  3. Retry the request
async function fetchWithRetry(url, options, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    const res = await fetch(url, options);

    if (res.status !== 429) return res;

    const reset = res.headers.get('X-RateLimit-Reset');
    const waitMs = reset
      ? (parseInt(reset) * 1000) - Date.now()
      : Math.pow(2, i) * 1000;

    await new Promise(r => setTimeout(r, Math.max(waitMs, 1000)));
  }
  throw new Error('Rate limit exceeded after retries');
}

Monthly quota & overage billing

  • Quotas reset on the 1st of each month (UTC)
  • Requests over quota are never denied — they are tracked as overage
  • Overage is billed in the next billing period at your plan’s overage rate
  • Monitor usage in the Dashboard
PlanOverage rate
Starter$0.50 per 1,000 requests
Pro$0.15 per 1,000 requests
BusinessN/A (unlimited)