Get started
Errors
RoTerminal uses HTTP status codes: 2xx worked, 4xx is something to fix in the request, and 5xx is on our side. Every error has the same body:
{
"error": {
"code": "invalid_parameter",
"message": "range must be 24h or 7d.",
"doc_url": "https://roterminal.co/docs/errors#invalid_parameter",
"request_id": "req_4fQx2LmZ8wKpT7vN1sYc"
}
}codedoesn’t change, so check it in your code.messageis for people, and its words may change.doc_urllinks to the code’s explanation below.request_idis also in theX-Request-Idheader. Send it to us if something looks wrong.- Some errors have more:
paramnames the parameter,retry_afteris the seconds to wait, andaction_urlis where a person can fix it.
Codes
| Code | Status | Retryable |
|---|---|---|
invalid_api_key | 401 | No |
authentication_required | 401 | No |
missing_parameter | 400 | No |
invalid_parameter | 400 | No |
not_found | 404 | No |
method_not_allowed | 405 | No |
rate_limited | 429 | Yes, after waiting |
daily_limit_reached | 429 | Yes, after waiting |
history_limit_reached | 429 | Yes, after waiting |
unavailable | 503 | Yes, after waiting |
internal_error | 500 | Yes, after waiting |
invalid_api_key
401 · Invalid API key. The key in the Authorization header isn’t one RoTerminal knows. It may have been deleted. Check you copied the whole key, or create a new one in Settings → Developer.
authentication_required
401 · Authentication required. The endpoint shows your own data, so it needs an API key. Send your key as Authorization: Bearer <key>.
missing_parameter
400 · Missing parameter. A required parameter wasn’t sent. The message names it. Add it and try again.
invalid_parameter
400 · Invalid parameter. A parameter was sent, but its value isn’t one the endpoint accepts. The message says which one and why.
not_found
404 · Not found. There’s no game, developer, trend or chart by that name or ID, or no endpoint at that address. Search for the game by name to find its universe ID.
method_not_allowed
405 · Method not allowed. Every endpoint is read only and takes GET. Send a GET request.
rate_limited
429 · Too many requests. More requests in one minute than the API allows: 30 without a key, 120 with one. Wait the seconds in the Retry-After header, then try again.
daily_limit_reached
429 · Daily limit reached. You’ve used all of today’s calls. They reset at midnight New York time (X-RateLimit-Reset). Add an API key or move to a bigger plan for more.
history_limit_reached
429 · History limit reached. You’ve asked for the day-by-day history of as many different games today as your plan allows. Games you’ve already asked for today still work. It resets at midnight New York time. A bigger plan gives you more. See Rate limits.
unavailable
503 · Unavailable. RoTerminal couldn’t answer just then. Try again in a few seconds. It’s safe to retry.
internal_error
500 · Internal error. Something went wrong on RoTerminal’s side. Try again in a moment. If it keeps happening, send us the request ID.