Documentation / Seasons
Season games
GET /v1/seasons/{season_id}/gamesFree key and upPaged, 50 a page
Every game of a season, by date, with the same fields as the games list.
GET
https://api.icehockeyapi.com/v1/seasons/{season_id}/gameshttps://api.icehockeyapi.com/v1/seasons/ss_0n4zhhna/games?per_page=3curl "https://api.icehockeyapi.com/v1/seasons/ss_0n4zhhna/games?per_page=3" \ -H "X-API-Key: YOUR_KEY"
200 OKExample answer from the data, 12 Oct
{
"data": [
{
"id": "gm_pn5tzfde",
"date": "2026-09-19",
"start_time": "2026-09-19T23:00:00Z",
"league": {
"id": "lg_6t11wec7",
"name": "NHL"
},
"season": {
"id": "ss_0n4zhhna",
"label": "2026-27"
},
"stage": "preseason",
"status": "final",
"home_team": {
"id": "tm_ebpcz2zh",
"name": "St. Louis Blues",
"short_name": "STL",
"country": "North America"
},
"away_team": {
"id": "tm_r9h9wspe",
"name": "Dallas Stars",
"short_name": "DAL",
"country": "North America"
},
"home_goals": 1,
"away_goals": 2,
"ended_in": "regulation",
"venue": {
"id": "vn_7sfywt5d",
"name": "Enterprise Center",
"city": null,
"country": null
},
"attendance": 16314,
"odds": []
},
{
"id": "gm_zfp1g7ce",
"date": "2026-09-19",
"start_time": "2026-09-19T23:00:00Z",
"league": {
"id": "lg_6t11wec7",
"name": "NHL"
},
"season": {
"id": "ss_0n4zhhna",
"label": "2026-27"
},
"stage": "preseason",
"status": "final",
"home_team": {
"id": "tm_ep68nr7a",
"name": "Toronto Maple Leafs",
"short_name": "TOR",
"country": "North America"
},
"away_team": {
"id": "tm_nayf5h8v",
"name": "Montréal Canadiens",
"short_name": "MTL",
"country": "North America"
},
"home_goals": 1,
"away_goals": 4,
"ended_in": "regulation",
"venue": {
"id": "vn_bvx51s77",
"name": "Scotiabank Arena",
"city": null,
"country": null
},
"attendance": 16267,
"odds": []
},
{
"id": "gm_dbew995n",
"date": "2026-09-19",
"start_time": "2026-09-19T23:00:00Z",
"league": {
"id": "lg_6t11wec7",
"name": "NHL"
},
"season": {
"id": "ss_0n4zhhna",
"label": "2026-27"
},
"stage": "preseason",
"status": "final",
"home_team": {
"id": "tm_nayf5h8v",
"name": "Montréal Canadiens",
"short_name": "MTL",
"country": "North America"
},
"away_team": {
"id": "tm_ep68nr7a",
"name": "Toronto Maple Leafs",
"short_name": "TOR",
"country": "North America"
},
"home_goals": 4,
"away_goals": 3,
"ended_in": "overtime",
"venue": {
"id": "vn_9dbmpecn",
"name": "Centre Bell",
"city": null,
"country": null
},
"attendance": 20962,
"odds": []
}
],
"meta": {
"count": 3,
"next_cursor": "eyJvIjozLCJuIjozfQ",
"page": 1,
"per_page": 3,
"total": 172,
"total_pages": 58,
"next_page": 2,
"prev_page": null,
"plan": "Complete"
}
}Run works once the API is live; the code above works now.
Parameters
| Name | In | Type | What it does |
|---|---|---|---|
season_id required | path | id | A season, from /v1/leagues/{league_id}/seasons. |
stage | query | enum | Only this part of the season. regularplayoffsqualificationpreseasonfriendlycupother |
status | query | enum | Only games in this state. scheduledlivefinalpostponedcancelledawarded |
order | query | enum | By date: asc (default) or desc ascdesc |
page | query | int | The page, from 1. |
per_page | query | int | Records a page, default 50, at most 200. |
cursor | query | string | meta.next_cursor from the previous answer. |
Returns
| Field | Type |
|---|---|
id | string |
date | string |
start_time | string |
league | object |
league.id | string |
league.name | string |
season | object |
season.id | string |
season.label | string |
stage | string |
status | string |
home_team | object |
home_team.id | string |
home_team.name | string |
home_team.short_name | string |
home_team.country | string |
away_team | object |
away_team.id | string |
away_team.name | string |
away_team.short_name | string |
away_team.country | string |
home_goals | int |
away_goals | int |
ended_in | string |
venue | object |
venue.id | string |
venue.name | string |
venue.city | null |
venue.country | null |
attendance | int |
odds | list |