Games
is_finished: when a game is set to true with either via a POST or PATCH it currently triggers a full rebuild of the player stats.
Temporarily this can also be manually triggered via GET /v0/updateStats.
Create a game
POST /games
Request:
{
"home_team_id": 1,
"away_team_id": 2,
"start_time": "2026-03-10T19:30:00-05:00",
"is_finished": false
}
Response:
{
"game": {
"id": 2,
"home_team_id": 1,
"away_team_id": 2,
"start_time": "2026-03-10T19:30:00-05:00",
"is_finished": false
}
}
Get all games
GET /games
Response:
{
"games": [
{
"id": 1,
"home_team": "NYR",
"away_team": "SJS",
"home_team_id": 1,
"away_team_id": 2,
"is_finished": false,
"start_time": "2026-03-11T00:30:00Z"
},
{
"id": 2,
"home_team": "NYR",
"away_team": "SJS",
"home_team_id": 1,
"away_team_id": 2,
"is_finished": true,
"start_time": "2026-03-11T00:30:00Z"
}
]
}
Edit a game
PATCH /games/{id}
Partial updates are accepted
Request:
{
"home_team_id": 1,
"away_team_id": 3,
"is_finished": true
}
Response:
{
"game": {
"id": 2,
"home_team_id": 1,
"away_team_id": 3,
"start_time": "2026-03-10T19:30:00-05:00",
"is_finished": true
}
}
View a game
GET /games/{id}
Response:
{
"game": {
"home_team": "NYR",
"away_team": "SJS",
"home_team_id": 1,
"away_team_id": 2,
"is_finished": false,
"start_time": "2026-03-11T00:30:00Z",
"game_events": [
{
"id": 1,
"event_number": 1,
"period": 2,
"clock_seconds": 12,
"event_type": "penalty",
"situation": "EV",
"team_id": 2
},
{
"id": 2,
"event_number": 2,
"period": 2,
"clock_seconds": 12,
"event_type": "penalty",
"situation": "EV",
"team_id": 2
}
]
}
}