POST to submit scores, GET to read them. Bearer token auth for writes, public reads.
Scores are automatically cleaned up after a week. Good for jams, demos, and rolling leaderboards.
Each leaderboard gets a shareable page. Or fetch JSON directly from your game.
Free for small games, self-host if you outgrow that.
These use the same API your game would use.
// Submit a score
await fetch('https://scores.fallday.ca/api/v1/scores/', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
},
body: JSON.stringify({
player_name: 'PlayerOne',
score: 42000
})
});
// Read scores (no auth required)
const res = await fetch('/api/v1/scores/my-game/highscores/');
const scores = await res.json();
Sign up to get your API token. The dashboard has copy-paste examples for multiple languages.