Instantoto API docs
A free, keyless, CORS-open JSON API for slot & casino game data. Base URL https://instantotodata.com/api.php. No auth, no rate-plan — just be reasonable. Machine spec at /openapi.json.
Interactive explorer
Choose an endpoint and hit Send.
Endpoints
endpoint=slots filters
| Param | Type | Example | Notes |
|---|---|---|---|
| q | string | q=egypt | Matches name, theme or provider |
| provider | string | provider=NetEnt | Exact studio name (see provider_slug too) |
| volatility | enum[] | volatility=high,medium | Comma list of low·medium·high |
| min_rtp / max_rtp | number | min_rtp=96.5 | Also rtp_gte,rtp_lte,rtp_gt,rtp_lt |
| year / year_gte / year_lte | int | year_gte=2022 | Release-year filters |
| feature | string | feature=Megaways | Matches a mechanic/feature |
| reels | string | reels=6x5 | Reel layout (substring) |
| sort | string | sort=-rtp,name | Comma list; - = descending. Fields: rtp,name,year,popularity,volatility,max_win |
| fields | string | fields=name,rtp,provider | Sparse fieldsets — return only these |
| limit | int | limit=50 | 1–200 (default 50) |
| cursor / page | string/int | cursor=NTA | Use paging.next_cursor to page forward |
Code
const r = await fetch(
"https://instantotodata.com/api.php?" +
new URLSearchParams({
endpoint: "slots", min_rtp: 97,
sort: "-rtp", limit: 5
}));
const { result } = await r.json();
console.table(result);import requests
r = requests.get(
"https://instantotodata.com/api.php",
params={"endpoint":"slots","volatility":"high",
"min_rtp":96.5,"sort":"-rtp","limit":5})
for s in r.json()["result"]:
print(s["name"], s["rtp"])curl "https://instantotodata.com/api.php?endpoint=slots&limit=100" # → paging.next_cursor: "MTAw" curl "https://instantotodata.com/api.php?endpoint=slots&limit=100&cursor=MTAw"
{
"ok": true,
"version": "1.0",
"ms": 1.4,
"count": 5,
"total": 262,
"paging": { "limit": 5, "offset": 0,
"has_more": true,
"next_cursor": "NQ" },
"result": [ /* … */ ]
}Error catalog
| HTTP | code | Meaning |
|---|---|---|
| 400 | invalid_param | A parameter was malformed (bad number, unknown sort/field, empty required arg) |
| 404 | not_found | No slot/provider matched the given slug |
| 404 | invalid_endpoint | Unknown endpoint= value |
| 500 | server_error | Unexpected server-side error |
{ "ok": false,
"error": { "code": "invalid_param", "message": "cannot sort by 'foo'" },
"version": "1.0", "docs": "https://instantotodata.com/docs" }
Changelog
search, similar, compare, trending, aggregations, provider. OpenAPI 3.1 spec published.Fair use: no key required. Please cache responses (Cache-Control: max-age=300) and identify your app in a User-Agent where you can. Data is theoretical/informational — see methodology. 18+.