Developers
History
Player history for one game, at 10-minute, hourly or daily resolution.
Endpoint
GET/api/v1/games/{id}/history
| Parameter | Default | What it does |
|---|---|---|
days | 7 | Days back from now, 1 to 730. |
resolution | auto | auto, 10min (up to 7 days), hour (up to 90 days) or day. auto picks 10min up to 2 days, hour up to 31 days, then day. |
curl -A "my-app/1.0 ([email protected])" \
"https://ccucheck.com/api/v1/games/920587237/history?days=7&resolution=hour"import https from "node:https";
https.get("https://ccucheck.com/api/v1/games/920587237/history?days=7&resolution=hour", {
headers: { "User-Agent": "my-app/1.0 ([email protected])" },
}, (res) => {
let body = "";
res.on("data", (chunk) => (body += chunk));
res.on("end", () => {
const { data, as_of } = JSON.parse(body);
console.log(data, as_of);
});
});import requests
res = requests.get(
"https://ccucheck.com/api/v1/games/920587237/history?days=7&resolution=hour",
headers={"User-Agent": "my-app/1.0 ([email protected])"},
timeout=10,
)
body = res.json()
print(body["data"], body["as_of"]){
"data": {
"place_id": "920587237",
"name": "Adopt Me!",
"resolution": "hour",
"from": "2026-10-20T09:00:00.000Z",
"to": "2026-10-27T09:00:00.000Z",
"summary": {
"average": 151200,
"peak": 214500,
"first": 140100,
"last": 170300,
"change_percent": 21.6,
"points": 168
},
"gaps": 0,
"points": [
{
"t": "2026-10-20T09:00:00.000Z",
"players": 140100,
"peak": 142800,
"low": 137900
}
]
},
"link": "https://ccucheck.com/games/920587237",
"as_of": "2026-10-27T08:00:00.000Z"
}players is the average in each bucket; peak and low are the highest and lowest reading in it.
How far back
Without a key or with a free key you can ask for up to 30 days. A Pro key reaches everything CCUCheck has for the game. Daily history starts on 21 Feb 2026 for games CCUCheck was following then, with gaps before June 2026, and 10-minute history starts on 7 Jun 2026. Asking for more days than your plan allows returns 403 with max_days, rather than quietly cutting the range.
Missing readings
A bucket without readings is left out, never filled in or guessed. gaps counts the places where readings are missing, so you can tell a quiet hour from a missing one.