Rate Limits & Quota
The API uses a simple daily quota system. Most requests are completely free — quota only applies when you explicitly ask for live data from the RSI website.
How Quota Works
| Request type | Quota cost |
|---|---|
Default (no ?refresh) | Free — never counted |
?refresh=true | 1 request counted toward your daily limit |
Your daily limit is 500 requests per day. The counter resets automatically every 24 hours.
The default mode is always free.
The smart cache handles data freshness automatically — for most use cases you never need ?refresh=true at all. See Data Freshness & Caching for how the cache strategy works.
Checking Your Remaining Quota
Call GET /v2/me at any time to see live quota information without visiting the dashboard:
GET /v2/me HTTP/1.1
Host: API_HOST
x-api-key: YOUR_API_KEY{
"success": true,
"message": "ok",
"data": {
"key": "YOUR_API_KEY",
"provider": "YOUR_PROVIDER",
"dailyRequestsRemaining": 123,
"dailyRequestLimit": YOUR_DAILY_REQUEST_LIMIT,
"role": "user"
}
}dailyRequestsRemaining decreases by one for each ?refresh=true request. Requests without it never count.
Build quota awareness into your app.
Check dailyRequestsRemaining at startup. Use ?refresh=true only when you genuinely need real-time data right now — for everything else, let the smart cache work.
Quota Reset Schedule
Your daily quota resets at a fixed time each day. To get the exact next-reset timestamp programmatically, call GET /managements/status (no API key required):
GET /managements/status HTTP/1.1
Host: API_HOST{
"success": true,
"message": "ok",
"data": {
"quotaReset": {
"lastAt": "2025-05-18T00:00:00.000Z",
"nextAt": "2025-05-19T00:00:00.000Z"
},
"cacheRefresh": {
"lastAt": "2025-05-18T14:00:00.000Z",
"nextAt": "2025-05-18T15:00:00.000Z"
}
}
}
When You Hit the Limit
If you receive "number of calls per day has been exceeded":
- Stop adding
?refresh=trueto requests where real-time data is not strictly required — cached responses are still served and never cost quota. - Wait for your quota to reset (
nextAtinGET /managements/status). - If you consistently need a higher daily limit, reach out via Discord.
Global Scrape Rate Limit
In addition to the per-key daily quota, the API enforces a shared scrape limit of 60 live scrapes per minute across all users. This limit is Redis-backed and applies only to ?refresh=true requests. If this limit is reached, the API returns HTTP 429 — back off and retry after a short wait.