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
| Plan | Requests / month | Requests / minute | Overage |
|---|
| Starter | 500,000 | 100 | $0.50 / 1K requests |
| Pro | 1,000,000 | 500 | $0.15 / 1K requests |
| Business | Unlimited | 2,000 | N/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.
Every response includes per-minute rate limit headers:
X-RateLimit-Limit: 500
X-RateLimit-Remaining: 487
X-RateLimit-Reset: 1711641600
| Header | Description |
|---|
X-RateLimit-Limit | Maximum requests per minute for your plan |
X-RateLimit-Remaining | Requests remaining in the current minute |
X-RateLimit-Reset | Unix timestamp when the window resets |
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
| Header | Description |
|---|
X-RateLimit-Monthly-Limit | Monthly request quota for your plan |
X-RateLimit-Monthly-Remaining | Requests remaining this month (0 if exceeded) |
X-RateLimit-Monthly-Overage | Number 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
- Read the
X-RateLimit-Reset header
- Wait until the reset timestamp
- 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
| Plan | Overage rate |
|---|
| Starter | $0.50 per 1,000 requests |
| Pro | $0.15 per 1,000 requests |
| Business | N/A (unlimited) |