NHL
App · Sports · 28 actions
Follow the NHL with data straight from the league's own API: scores and schedules, live standings, team rosters and prospects, full box scores and play-by-play, player profiles and game logs, season leaderboards for skaters, goalies and clubs, the draft, and the playoff bracket. No account or API key required.
Actions
| Action | What it does |
|---|---|
| Get a game's box score | Get a game's box score: every skater's goals, assists, hits, blocks and ice time, and every goalie's saves, shots against and decision, for both clubs. |
| Get a game's details | Get the rest of a game's detail: the on-ice officials, both head coaches, the scratches, goals and shots broken out by period, the head-to-head team comparison, and the clubs' other meetings this season. |
| Get a game's play-by-play | Get every event of a game in order: faceoffs, shots, goals, hits, penalties, giveaways and stoppages, each with its period, clock, on-ice strength and rink coordinates, plus a roster key so a player id in an event can be turned into a name. |
| Get a game's summary | Get a game's scoring summary: every goal with its scorer, assists, strength and running score, plus the penalties, the three stars and the shootout if there was one. |
| Get a player | Get one player's profile (position, club, size, birthplace and where they were drafted) with their current-season line, career totals, a season-by-season table going back to junior, and any trophies they have won. |
| Get a player's game log | Get one player's game-by-game record for a season: the opponent, whether it was home or away, and what they did in each game. |
| Get a playoff series | Get one playoff series: the two clubs, how many wins it takes, and every game in it with dates, venues and scores. |
| Get a team's player stats | Get every skater's and goalie's season totals for one club: goals, assists, points, ice time, save percentage and the rest. |
| Get a team's prospects | Get a club's prospects (players it holds the rights to who are not on the NHL roster), split into forwards, defencemen and goalies. |
| Get a team's roster | Get a club's roster split into forwards, defencemen and goalies, each with their jersey number, position, size, birthplace and player id. |
| Get a team's schedule | Get one club's whole season schedule in date order: games played with their scores and games still to come with their start times and broadcasters. |
| Get a team's scoreboard | Get one club's games around today, the last few played and the next few coming up, with scores where they exist. |
| Get draft picks | Get the selections made at an NHL Entry Draft: who went where, to which club, and out of which junior or college team. |
| Get draft prospect rankings | Get NHL Central Scouting's ranked list of draft-eligible prospects, with each player's club, league, size and where they sat at the midterm and final rankings. |
| Get goalie leaders | Get the goalie leader boards: the top goaltenders by wins, shutouts, save percentage or goals-against average. |
| Get goalie season stats | Rank every goaltender in a season by any column: wins, save percentage, goals-against average, shutouts and more, optionally narrowed to one club. |
| Get scores | Get every game on one day with its score, how far along it is, and each goal as it was scored, with scorers and assists. |
| Get skater leaders | Get the skater leader boards: the top players by goals, assists, points, plus/minus, ice time, faceoffs, and power-play or shorthanded goals. |
| Get skater season stats | Rank every skater in a season by any column: points, goals, shooting percentage, faceoffs, ice time and more, optionally narrowed to one club. |
| Get spotlighted players | Get the players NHL.com is featuring on its front page right now, each with their club and a link to their profile. |
| Get team season stats | Rank every club in a season by any team column: points, goals for and against, power play, penalty kill, faceoffs and shots. |
| Get the NHL Network TV schedule | Get what NHL Network is airing on a day: every programme with its title, start and end time. |
| Get the playoff bracket | Get a postseason's whole bracket: all fifteen series with their two clubs, seedings, games won and who advanced. |
| Get the schedule | Get the league-wide schedule for the week containing a date: every game with its clubs, start time, arena, broadcasters and score if it has been played. |
| Get the standings | Get the NHL standings: every club's record, points, goal differential, streak and playoff position, ranked within its division, conference and the league. |
| List seasons | List every NHL season back to 1917-18, newest first, with the dates its standings cover and whether it used conferences, divisions, ties and wild cards. |
| List teams | List every NHL club with its three-letter code and team id, including franchises that no longer play. |
| Search players | Search NHL players by name, past and present, and get back each match with the player id the other player actions take. |
Get a game's box score
Get a game's box score: every skater's goals, assists, hits, blocks and ice time, and every goalie's saves, shots against and decision, for both clubs.
Inputs
- Game ID
game_idnumberRequired - The game to read, for example 2024020001. Get one from Get the schedule, Get scores, or a team's schedule.
Outputs
away_playersobject- The visiting club's players.
gameobject- Which game this is, and its score.
home_playersobject- The home club's players.
Example output
{
"away_players": {
"goalies": [
{
"decision": "W",
"even_strength_shots_against": "25/26",
"goals_against": 1,
"name": "J. Markstrom",
"penalty_minutes": 0,
"player_id": 8474593,
"power_play_shots_against": "5/5",
"save_pctg": 0.967742,
"saves": 30,
"shorthanded_shots_against": "0/0",
"shots_against": 31,
"starter": true,
"sweater_number": 25,
"time_on_ice": "59:38"
}
],
"skaters": [
{
"assists": 0,
"blocked_shots": 0,
"faceoff_win_pctg": 0.0,
"giveaways": 2,
"goals": 1,
"hits": 2,
"name": "S. Noesen",
"penalty_minutes": 0,
"player_id": 8476474,
"plus_minus": 0,
"points": 1,
"position": "R",
"power_play_goals": 0,
"shifts": 20,
"shots_on_goal": 1,
"sweater_number": 11,
"takeaways": 0,
"time_on_ice": "13:11"
}
]
},
"game": {
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_date": "2025-01-15",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"period": 3,
"period_type": "REG",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"venue": "KeyBank Center"
},
"home_players": {
"goalies": [
{
"decision": "W",
"even_strength_shots_against": "25/26",
"goals_against": 1,
"name": "J. Markstrom",
"penalty_minutes": 0,
"player_id": 8474593,
"power_play_shots_against": "5/5",
"save_pctg": 0.967742,
"saves": 30,
"shorthanded_shots_against": "0/0",
"shots_against": 31,
"starter": true,
"sweater_number": 25,
"time_on_ice": "59:38"
}
],
"skaters": [
{
"assists": 0,
"blocked_shots": 0,
"faceoff_win_pctg": 0.0,
"giveaways": 2,
"goals": 1,
"hits": 2,
"name": "S. Noesen",
"penalty_minutes": 0,
"player_id": 8476474,
"plus_minus": 0,
"points": 1,
"position": "R",
"power_play_goals": 0,
"shifts": 20,
"shots_on_goal": 1,
"sweater_number": 11,
"takeaways": 0,
"time_on_ice": "13:11"
}
]
}
}Get a game's details
Get the rest of a game's detail: the on-ice officials, both head coaches, the scratches, goals and shots broken out by period, the head-to-head team comparison, and the clubs' other meetings this season.
Inputs
- Game ID
game_idnumberRequired - The game to read, for example 2024020001. Get one from Get the schedule, Get scores, or a team's schedule.
Outputs
away_teamobject- The visiting club's coach and scratches.
final_scoreobject- The final score.
game_idnumber- The game read.
goals_by_periodlist- Goals scored in each period.
home_teamobject- The home club's coach and scratches.
linesmenlist- The two linesmen.
refereeslist- The two referees.
season_serieslist- Every meeting between the two clubs this season.
season_series_winsobject- How the season series stands.
shots_by_periodlist- Shots on goal in each period.
team_game_statslist- Head-to-head totals: shots, faceoffs, power play, penalty minutes, hits, blocks, giveaways, takeaways.
Example output
{
"away_team": {
"head_coach": "Sheldon Keefe",
"scratches": [
{
"name": "Justin Dowling",
"player_id": 8475413
}
]
},
"final_score": {
"away": 4,
"home": 1
},
"game_id": 2024020001,
"goals_by_period": [
{
"away": 2,
"home": 0,
"period": 1,
"period_type": "REG"
}
],
"home_team": {
"head_coach": "Sheldon Keefe",
"scratches": [
{
"name": "Justin Dowling",
"player_id": 8475413
}
]
},
"linesmen": [
"Brad Kovachik",
"Michel Cormier"
],
"referees": [
"Ghislain Hebert",
"Chris Lee"
],
"season_series": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": null,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"season_series_wins": {
"away": 2,
"home": 1
},
"shots_by_period": [
{
"away": 2,
"home": 0,
"period": 1,
"period_type": "REG"
}
],
"team_game_stats": [
{
"away_value": 23,
"category": "sog",
"home_value": 31
}
]
}Get a game's play-by-play
Get every event of a game in order: faceoffs, shots, goals, hits, penalties, giveaways and stoppages, each with its period, clock, on-ice strength and rink coordinates, plus a roster key so a player id in an event can be turned into a name.
Inputs
- Game ID
game_idnumberRequired - The game to read, for example 2024020001. Get one from Get the schedule, Get scores, or a team's schedule.
Outputs
countnumber- How many events.
gameobject- Which game this is, and its score.
playslist- Every event, in the order it happened.
roster_spotslist- Everyone who dressed, so a player id in an event can be matched to a name.
Example output
{
"count": 1,
"game": {
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_date": "2025-01-15",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"period": 3,
"period_type": "REG",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"venue": "KeyBank Center"
},
"plays": [
{
"details": {
"awaySOG": 1,
"eventOwnerTeamId": 1,
"goalieInNetId": 8480045,
"homeSOG": 0,
"shootingPlayerId": 8483495,
"shotType": "wrist",
"xCoord": 56,
"yCoord": -39,
"zoneCode": "O"
},
"event_id": 103,
"period": 1,
"period_type": "REG",
"situation_code": "1551",
"sort_order": 13,
"time_in_period": "00:08",
"time_remaining": "19:52",
"type_code": 506,
"type_desc_key": "shot-on-goal"
}
],
"roster_spots": [
{
"name": "Jacob Markstrom",
"player_id": 8474593,
"position_code": "G",
"sweater_number": 25,
"team_id": 1
}
]
}Get a game's summary
Get a game's scoring summary: every goal with its scorer, assists, strength and running score, plus the penalties, the three stars and the shootout if there was one.
Inputs
- Game ID
game_idnumberRequired - The game to read, for example 2024020001. Get one from Get the schedule, Get scores, or a team's schedule.
Outputs
gameobject- Which game this is, and its score.
goalslist- Every goal, in the order they were scored.
penaltieslist- Every penalty, in order.
shootoutlist- Shootout attempts in order. Empty for a game that did not reach one.
three_starslist- The game's three stars. Empty until they are named.
Example output
{
"game": {
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_date": "2025-01-15",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"period": 3,
"period_type": "REG",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"venue": "KeyBank Center"
},
"goals": [
{
"assists": [
{
"assists_to_date": 1,
"name": "Johnathan Kovacevic",
"player_id": 8480192
}
],
"away_score": 1,
"goal_modifier": "none",
"goals_to_date": 1,
"highlight_url": "https://nhl.com/video/njd-buf-noesen-scores-goal-against-ukko-pekka-luukkonen-6362848229112",
"home_score": 0,
"name": "Stefan Noesen",
"period": 1,
"period_type": "REG",
"player_id": 8476474,
"shot_type": "snap",
"strength": "ev",
"team_abbrev": "NJD",
"time_in_period": "08:39"
}
],
"penalties": [
{
"committed_by": "Erik Haula",
"description": "slashing",
"drawn_by": "Tage Thompson",
"duration": 2,
"period": 1,
"served_by": null,
"team_abbrev": "NJD",
"time_in_period": "01:37",
"type": "MIN"
}
],
"shootout": [
{
"game_winner": false,
"name": "Adrian Kempe",
"player_id": 8477960,
"result": "save",
"sequence": 1,
"shot_type": "wrist",
"team_abbrev": "LAK"
}
],
"three_stars": [
{
"assists": 1,
"goals": 1,
"goals_against_average": null,
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/NJD/8480192.png",
"name": "J. Kovacevic",
"player_id": 8480192,
"points": 2,
"position": "D",
"save_pctg": null,
"star": 1,
"sweater_number": 8,
"team_abbrev": "NJD"
}
]
}Get a player
Get one player's profile (position, club, size, birthplace and where they were drafted) with their current-season line, career totals, a season-by-season table going back to junior, and any trophies they have won.
Inputs
- Player ID
player_idnumberRequired - The player to read, for example 8478402. Use Search players to find one by name.
Outputs
awardslist- Trophies won, with the seasons they won them.
career_totalsobject- Career totals in the NHL.
current_seasonobject- This season's regular-season line.
playerobject- Who they are.
season_totalslist- A row per season and league, junior and pro alike, oldest first.
Example output
{
"awards": [
{
"seasons": [
20222023
],
"trophy": "Hart Trophy"
}
],
"career_totals": {
"playoffs": {
"assists": 56,
"avg_time_on_ice": "21:52",
"faceoff_winning_pctg": 0.4792,
"game_winning_goals": 4,
"games_played": 82,
"games_started": null,
"goals": 44,
"goals_against": null,
"goals_against_average": null,
"losses": null,
"ot_goals": 1,
"ot_losses": null,
"penalty_minutes": 44,
"plus_minus": 20,
"points": 100,
"power_play_goals": 13,
"power_play_points": 54,
"save_pctg": null,
"shooting_pctg": 0.1438,
"shorthanded_goals": 1,
"shorthanded_points": 2,
"shots": 306,
"shots_against": null,
"shutouts": null,
"time_on_ice": null,
"wins": null
},
"regular_season": {
"assists": 56,
"avg_time_on_ice": "21:52",
"faceoff_winning_pctg": 0.4792,
"game_winning_goals": 4,
"games_played": 82,
"games_started": null,
"goals": 44,
"goals_against": null,
"goals_against_average": null,
"losses": null,
"ot_goals": 1,
"ot_losses": null,
"penalty_minutes": 44,
"plus_minus": 20,
"points": 100,
"power_play_goals": 13,
"power_play_points": 54,
"save_pctg": null,
"shooting_pctg": 0.1438,
"shorthanded_goals": 1,
"shorthanded_points": 2,
"shots": 306,
"shots_against": null,
"shutouts": null,
"time_on_ice": null,
"wins": null
}
},
"current_season": {
"season": 20242025,
"season_label": "2024-25",
"stats": {
"assists": 56,
"avg_time_on_ice": "21:52",
"faceoff_winning_pctg": 0.4792,
"game_winning_goals": 4,
"games_played": 82,
"games_started": null,
"goals": 44,
"goals_against": null,
"goals_against_average": null,
"losses": null,
"ot_goals": 1,
"ot_losses": null,
"penalty_minutes": 44,
"plus_minus": 20,
"points": 100,
"power_play_goals": 13,
"power_play_points": 54,
"save_pctg": null,
"shooting_pctg": 0.1438,
"shorthanded_goals": 1,
"shorthanded_points": 2,
"shots": 306,
"shots_against": null,
"shutouts": null,
"time_on_ice": null,
"wins": null
}
},
"player": {
"birth_city": "Richmond Hill",
"birth_country": "CAN",
"birth_date": "1997-01-13",
"birth_state_province": "ON",
"current_team_abbrev": "EDM",
"current_team_id": 22,
"current_team_name": "Edmonton Oilers",
"draft_overall_pick": 1,
"draft_round": 1,
"draft_team_abbrev": "EDM",
"draft_year": 2015,
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/EDM/8478402.png",
"height_in_inches": 73,
"is_active": true,
"name": "Connor McDavid",
"player_id": 8478402,
"position": "C",
"profile_url": "https://www.nhl.com/player/connor-mcdavid-8478402",
"shoots_catches": "L",
"sweater_number": 97,
"weight_in_pounds": 194
},
"season_totals": [
{
"assists": 74,
"avg_time_on_ice": "21:57",
"game_type": 2,
"game_type_name": "Regular season",
"games_played": 67,
"games_started": null,
"goals": 26,
"goals_against": null,
"goals_against_average": null,
"league_abbrev": "NHL",
"losses": null,
"ot_losses": null,
"penalty_minutes": 42,
"plus_minus": 20,
"points": 100,
"save_pctg": null,
"season": 20242025,
"season_label": "2024-25",
"shots": 174,
"shots_against": null,
"shutouts": null,
"team_name": "Edmonton Oilers",
"wins": null
}
]
}Get a player's game log
Get one player's game-by-game record for a season: the opponent, whether it was home or away, and what they did in each game. Defaults to the season in progress.
Inputs
- Player ID
player_idnumberRequired - The player to read, for example 8478402. Use Search players to find one by name.
- Season
seasontext - Optional. The season to read. Defaults to the season in progress.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star).
Outputs
countnumber- How many games.
game_typenumber- 2 regular season, 3 playoffs.
gameslist- One row per game, most recent first.
player_idnumber- The player read.
seasonnumber- The season returned, e.g. 20242025.
season_labeltext- Season as 2024-25.
Example output
{
"count": 1,
"game_type": 2,
"games": [
{
"assists": 1,
"decision": null,
"game_date": "2025-04-16",
"game_id": 2024021306,
"game_winning_goals": 0,
"games_started": null,
"goals": 0,
"goals_against": null,
"home_road_flag": "R",
"opponent_abbrev": "SJS",
"penalty_minutes": 0,
"plus_minus": 1,
"points": 1,
"power_play_goals": 0,
"save_pctg": null,
"saves": null,
"shifts": 16,
"shorthanded_goals": 0,
"shots": 1,
"shots_against": null,
"shutouts": null,
"team_abbrev": "EDM",
"time_on_ice": "17:31"
}
],
"player_id": 8478402,
"season": 20242025,
"season_label": "2024-25"
}Get a playoff series
Get one playoff series: the two clubs, how many wins it takes, and every game in it with dates, venues and scores. Get the series letter from the playoff bracket.
Inputs
- Season
seasontextRequired - The season to read, for example 2024-25.
- Series
series_lettertextRequired - Which series. A to H are the first round, I to L the second, M and N the conference finals, and O the Stanley Cup Final.One of:
a(A: First round),b(B: First round),c(C: First round),d(D: First round),e(E: First round),f(F: First round),g(G: First round),h(H: First round),i(I: Second round),j(J: Second round), and 5 more.
Outputs
bottom_seed_teamobject- The lower-seeded club.
countnumber- How many games.
gameslist- Every game in the series, in order.
needed_to_winnumber- Wins needed to take the series.
roundnumber- Round number, 1 to 4.
round_labeltext- Round name, e.g. 1st-round.
seasontext- The season, e.g. 20242025.
season_labeltext- Season as 2024-25.
series_lettertext- The series returned, e.g. A.
top_seed_teamobject- The higher-seeded club.
Example output
{
"bottom_seed_team": {
"abbrev": "OTT",
"common_name": "Senators",
"id": 9,
"logo": "https://assets.nhle.com/logos/nhl/svg/OTT_light.svg",
"name": "Ottawa Senators"
},
"count": 1,
"games": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": 1,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 3,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"needed_to_win": 4,
"round": 1,
"round_label": "1st-round",
"season": "20242025",
"season_label": "2024-25",
"series_letter": "A",
"top_seed_team": {
"abbrev": "TOR",
"common_name": "Maple Leafs",
"id": 10,
"logo": "https://assets.nhle.com/logos/nhl/svg/TOR_light.svg",
"name": "Toronto Maple Leafs"
}
}Get a team's player stats
Get every skater's and goalie's season totals for one club: goals, assists, points, ice time, save percentage and the rest. Defaults to the season in progress.
Inputs
- Team
teamtextRequired - The club to read. Pick one, or reference a three-letter code such as TOR from an earlier step.
- Season
seasontext - Optional. The season to read. Defaults to the season in progress.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star).
Outputs
countnumber- Skaters and goalies together.
game_typenumber- 2 regular season, 3 playoffs.
goalieslist- Every goalie who played.
seasontext- The season returned, e.g. 20242025.
season_labeltext- Season as 2024-25.
skaterslist- Every skater who played, best scorers first.
team_abbrevtext- The club asked for, e.g. TOR.
Example output
{
"count": 2,
"game_type": 2,
"goalies": [
{
"games_played": 34,
"games_started": 33,
"goals_against": 71,
"goals_against_average": 2.14404,
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8476316.png",
"losses": 8,
"name": "Anthony Stolarz",
"overtime_losses": 3,
"player_id": 8476316,
"save_pctg": 0.925926,
"saves": 887,
"shots_against": 958,
"shutouts": 2,
"time_on_ice_seconds": 119221,
"wins": 21
}
],
"season": "20242025",
"season_label": "2024-25",
"skaters": [
{
"assists": 45,
"avg_shifts_per_game": 21.3134,
"avg_time_on_ice_seconds": 1180.4478,
"faceoff_win_pctg": 0.545455,
"game_winning_goals": 5,
"games_played": 67,
"goals": 33,
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"name": "Auston Matthews",
"overtime_goals": 1,
"penalty_minutes": 24,
"player_id": 8479318,
"plus_minus": 8,
"points": 78,
"position_code": "C",
"power_play_goals": 9,
"shooting_pctg": 0.147321,
"shorthanded_goals": 1,
"shots": 224
}
],
"team_abbrev": "TOR"
}Get a team's prospects
Get a club's prospects (players it holds the rights to who are not on the NHL roster), split into forwards, defencemen and goalies.
Inputs
- Team
teamtextRequired - The club to read. Pick one, or reference a three-letter code such as TOR from an earlier step.
Outputs
countnumber- Players across all three groups.
defensemenlist- Defencemen.
forwardslist- Centres and wingers.
goalieslist- Goaltenders.
team_abbrevtext- The club asked for, e.g. TOR.
Example output
{
"count": 3,
"defensemen": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Morgan",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Rielly",
"name": "Morgan Rielly",
"player_id": 8476853,
"position_code": "D",
"shoots_catches": "L",
"sweater_number": 44,
"weight_in_pounds": 208
}
],
"forwards": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Auston",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Matthews",
"name": "Auston Matthews",
"player_id": 8479318,
"position_code": "C",
"shoots_catches": "L",
"sweater_number": 34,
"weight_in_pounds": 208
}
],
"goalies": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Anthony",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Stolarz",
"name": "Anthony Stolarz",
"player_id": 8476316,
"position_code": "G",
"shoots_catches": "L",
"sweater_number": 41,
"weight_in_pounds": 208
}
],
"team_abbrev": "TOR"
}Get a team's roster
Get a club's roster split into forwards, defencemen and goalies, each with their jersey number, position, size, birthplace and player id. Defaults to the current roster; pick a season for a historical one.
Inputs
- Team
teamtextRequired - The club to read. Pick one, or reference a three-letter code such as TOR from an earlier step.
- Season
seasontext - Optional. The season to read. Defaults to the season in progress.
Outputs
countnumber- Players across all three groups.
defensemenlist- Defencemen.
forwardslist- Centres and wingers.
goalieslist- Goaltenders.
seasontext- The season asked for. Null when the current roster was returned.
team_abbrevtext- The club asked for, e.g. TOR.
Example output
{
"count": 3,
"defensemen": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Morgan",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Rielly",
"name": "Morgan Rielly",
"player_id": 8476853,
"position_code": "D",
"shoots_catches": "L",
"sweater_number": 44,
"weight_in_pounds": 208
}
],
"forwards": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Auston",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Matthews",
"name": "Auston Matthews",
"player_id": 8479318,
"position_code": "C",
"shoots_catches": "L",
"sweater_number": 34,
"weight_in_pounds": 208
}
],
"goalies": [
{
"birth_city": "San Ramon",
"birth_country": "USA",
"birth_date": "1997-09-17",
"birth_state_province": "CA",
"first_name": "Anthony",
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/TOR/8479318.png",
"height_in_inches": 75,
"last_name": "Stolarz",
"name": "Anthony Stolarz",
"player_id": 8476316,
"position_code": "G",
"shoots_catches": "L",
"sweater_number": 41,
"weight_in_pounds": 208
}
],
"season": "20242025",
"team_abbrev": "TOR"
}Get a team's schedule
Get one club's whole season schedule in date order: games played with their scores and games still to come with their start times and broadcasters. Defaults to the current season.
Inputs
- Team
teamtextRequired - The club to read. Pick one, or reference a three-letter code such as TOR from an earlier step.
- Season
seasontext - Optional. The season to read. Defaults to the season in progress.
Outputs
club_timezonetext- The club's home timezone.
countnumber- How many games.
current_seasonnumber- The season returned.
gameslist- Every game that season, in date order.
next_seasonnumber- The season after this one.
previous_seasonnumber- The season before this one.
team_abbrevtext- The club asked for, e.g. TOR.
Example output
{
"club_timezone": "America/Toronto",
"count": 1,
"current_season": 20242025,
"games": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": null,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"next_season": 20252026,
"previous_season": 20232024,
"team_abbrev": "TOR"
}Get a team's scoreboard
Get one club's games around today, the last few played and the next few coming up, with scores where they exist. The quickest way to answer "how did they do last night, and who is next".
Inputs
- Team
teamtextRequired - The club to read. Pick one, or reference a three-letter code such as TOR from an earlier step.
Outputs
club_timezonetext- The club's home timezone.
countnumber- How many games.
focused_datetext- The day the scoreboard is centred on.
gameslist- Recent and upcoming games, in date order.
team_abbrevtext- The club asked for, e.g. TOR.
Example output
{
"club_timezone": "America/Toronto",
"count": 1,
"focused_date": "2025-01-15",
"games": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": null,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"team_abbrev": "TOR"
}Get draft picks
Get the selections made at an NHL Entry Draft: who went where, to which club, and out of which junior or college team. Defaults to the most recent draft.
Inputs
- Draft year
yearnumber - Optional. The draft to read, for example 2024. Defaults to the most recent one.At least 1963.
- Round
round_numbertext - Optional. Which round to return. Defaults to all seven. Ignored unless a draft year is chosen.One of:
all(All rounds),1(Round 1),2(Round 2),3(Round 3),4(Round 4),5(Round 5),6(Round 6),7(Round 7). Default:all.
Outputs
countnumber- How many picks.
draft_yearnumber- The draft returned.
pickslist- Selections in draft order.
statetext- over once the draft has finished.
Example output
{
"count": 1,
"draft_year": 2024,
"picks": [
{
"amateur_club": "Boston University",
"amateur_league": "H-EAST",
"country_code": "CAN",
"height_in_inches": 72,
"name": "Macklin Celebrini",
"overall_pick": 1,
"pick_in_round": 1,
"player_id": null,
"position_code": "C",
"round": 1,
"team_abbrev": "SJS",
"team_id": 28,
"team_name": "San Jose Sharks",
"weight_in_pounds": 197
}
],
"state": "over"
}Get draft prospect rankings
Get NHL Central Scouting's ranked list of draft-eligible prospects, with each player's club, league, size and where they sat at the midterm and final rankings. Defaults to the current North American skaters list.
Inputs
- Draft year
yearnumber - Optional. The draft class to read, for example 2025. Defaults to the current one.At least 2010.
- Prospect list
categorytext - Optional. Which of Central Scouting's four lists to read. Defaults to North American skaters. Ignored unless a draft year is chosen.One of:
1(North American skaters),2(International skaters),3(North American goalies),4(International goalies). Default:1.
Outputs
category_idnumber- Which list, 1 to 4.
category_nametext- The list's name.
countnumber- How many prospects.
draft_yearnumber- The draft class returned.
prospectslist- Prospects in rank order.
Example output
{
"category_id": 1,
"category_name": "North American skaters",
"count": 1,
"draft_year": 2025,
"prospects": [
{
"birth_city": "Hamilton",
"birth_country": "CAN",
"birth_date": "2007-09-05",
"birth_state_province": "ON",
"final_rank": 1,
"first_name": "Matthew",
"height_in_inches": 74,
"last_amateur_club": "Erie",
"last_amateur_league": "OHL",
"last_name": "Schaefer",
"midterm_rank": 1,
"name": "Matthew Schaefer",
"position_code": "D",
"shoots_catches": "L",
"weight_in_pounds": 186
}
]
}Get goalie leaders
Get the goalie leader boards: the top goaltenders by wins, shutouts, save percentage or goals-against average. Ask for several at once and each comes back as its own board. Defaults to wins in the season in progress.
Inputs
- Categories
categorieslist - Which leader boards to return. Defaults to Wins.One or more of:
wins,shutouts,savePctg(Save %),goalsAgainstAverage(Goals-against average). - Season
seasontext - Optional. The season to read. Defaults to the season in progress.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star). - Players per board
limitnumber - How many players to return per category, 1 to 100. Defaults to 10.From 1 to 100. Default:
10.
Outputs
boardslist- One board per category asked for.
countnumber- How many boards.
Example output
{
"boards": [
{
"category": "wins",
"leaders": [
{
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/WPG/8476945.png",
"name": "Connor Hellebuyck",
"player_id": 8476945,
"position": "G",
"sweater_number": 37,
"team_abbrev": "WPG",
"team_name": "Jets",
"value": 47
}
]
}
],
"count": 1
}Get goalie season stats
Rank every goaltender in a season by any column: wins, save percentage, goals-against average, shutouts and more, optionally narrowed to one club.
Inputs
- Season
seasontextRequired - The season to read, for example 2024-25.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star). - Team filter
teamtext - Optional. Narrow the ranking to one club. Defaults to the whole league.
- Sort by
sort_bytext - Which column to rank by. Defaults to Wins.One of:
wins,losses,otLosses(Overtime losses),savePct(Save %),goalsAgainstAverage(Goals-against average),shutouts,saves,shotsAgainst(Shots against),goalsAgainst(Goals against),gamesPlayed(Games played),gamesStarted(Games started),timeOnIce(Time on ice). Default:wins. - Order
directiontext - Which end of the ranking to start from. Defaults to highest first.One of:
DESC(Highest first),ASC(Lowest first). Default:DESC. - Number of rows
limitnumber - How many rows to return, 1 to 100. Defaults to 25.From 1 to 100. Default:
25. - Skip
offsetnumber - How many rows to skip before the first one returned, for paging past the first page. Defaults to 0.At least 0. Default:
0.
Outputs
countnumber- How many rows were returned.
goalieslist- Goalies in the order asked for.
seasontext- The season ranked, e.g. 20242025.
season_labeltext- Season as 2024-25.
totalnumber- How many rows match in all; use it to page.
Example output
{
"count": 1,
"goalies": [
{
"assists": 1,
"games_played": 63,
"games_started": 63,
"goals": 0,
"goals_against": 126,
"goals_against_average": 2.00203,
"last_name": "Hellebuyck",
"losses": 12,
"name": "Connor Hellebuyck",
"ot_losses": 3,
"penalty_minutes": 2,
"player_id": 8476945,
"save_pct": 0.92533,
"saves": 1657,
"season": 20242025,
"shoots_catches": "L",
"shots_against": 1791,
"shutouts": 8,
"team_abbrevs": "WPG",
"time_on_ice_seconds": 226532,
"wins": 47
}
],
"season": "20242025",
"season_label": "2024-25",
"total": 103
}Get scores
Get every game on one day with its score, how far along it is, and each goal as it was scored, with scorers and assists. This is the action for a daily results digest. Defaults to today.
Inputs
- Date
datedate - Optional. The day to score. Defaults to today.
Outputs
countnumber- How many games.
datetext- The day covered.
gameslist- Games that day, each with its goals.
next_datetext- The next day with games.
previous_datetext- The previous day with games.
Example output
{
"count": 1,
"date": "2025-01-15",
"games": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": null,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"goals": [
{
"assists": [
{
"assists_to_date": 1,
"name": "Johnathan Kovacevic",
"player_id": 8480192
}
],
"away_score": 1,
"goal_modifier": "none",
"goals_to_date": 1,
"highlight_url": "https://nhl.com/video/njd-buf-noesen-scores-goal-against-ukko-pekka-luukkonen-6362848229112",
"home_score": 0,
"name": "Stefan Noesen",
"player_id": 8476474,
"shot_type": "snap",
"strength": "ev",
"team_abbrev": "NJD",
"time_in_period": "08:39"
}
],
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"next_date": "2025-01-16",
"previous_date": "2025-01-14"
}Get skater leaders
Get the skater leader boards: the top players by goals, assists, points, plus/minus, ice time, faceoffs, and power-play or shorthanded goals. Ask for several at once and each comes back as its own board. Defaults to points in the season in progress.
Inputs
- Categories
categorieslist - Which leader boards to return. Defaults to Points.One or more of:
goals,assists,points,plusMinus(Plus/minus),toi(Time on ice),faceoffLeaders(Faceoff win %),goalsSh(Shorthanded goals),goalsPp(Power-play goals). - Season
seasontext - Optional. The season to read. Defaults to the season in progress.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star). - Players per board
limitnumber - How many players to return per category, 1 to 100. Defaults to 10.From 1 to 100. Default:
10.
Outputs
boardslist- One board per category asked for.
countnumber- How many boards.
Example output
{
"boards": [
{
"category": "goals",
"leaders": [
{
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/EDM/8477934.png",
"name": "Leon Draisaitl",
"player_id": 8477934,
"position": "C",
"sweater_number": 29,
"team_abbrev": "EDM",
"team_name": "Oilers",
"value": 52
}
]
}
],
"count": 1
}Get skater season stats
Rank every skater in a season by any column: points, goals, shooting percentage, faceoffs, ice time and more, optionally narrowed to one club. Returns a page at a time, so it also answers "who led the league" in one row.
Inputs
- Season
seasontextRequired - The season to read, for example 2024-25.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star). - Team filter
teamtext - Optional. Narrow the ranking to one club. Defaults to the whole league.
- Sort by
sort_bytext - Which column to rank by. Defaults to Points.One of:
points,goals,assists,plusMinus(Plus/minus),penaltyMinutes(Penalty minutes),shots,shootingPct(Shooting %),pointsPerGame(Points per game),gamesPlayed(Games played),ppGoals(Power-play goals), and 4 more. Default:points. - Order
directiontext - Which end of the ranking to start from. Defaults to highest first.One of:
DESC(Highest first),ASC(Lowest first). Default:DESC. - Number of rows
limitnumber - How many rows to return, 1 to 100. Defaults to 25.From 1 to 100. Default:
25. - Skip
offsetnumber - How many rows to skip before the first one returned, for paging past the first page. Defaults to 0.At least 0. Default:
0.
Outputs
countnumber- How many rows were returned.
seasontext- The season ranked, e.g. 20242025.
season_labeltext- Season as 2024-25.
skaterslist- Skaters in the order asked for.
totalnumber- How many rows match in all; use it to page.
Example output
{
"count": 1,
"season": "20242025",
"season_label": "2024-25",
"skaters": [
{
"assists": 84,
"even_strength_goals": 29,
"even_strength_points": 75,
"faceoff_win_pct": 0.5,
"game_winning_goals": 9,
"games_played": 78,
"goals": 37,
"last_name": "Kucherov",
"name": "Nikita Kucherov",
"ot_goals": 1,
"penalty_minutes": 45,
"player_id": 8476453,
"plus_minus": 22,
"points": 121,
"points_per_game": 1.55128,
"position_code": "R",
"power_play_goals": 8,
"power_play_points": 46,
"season": 20242025,
"shooting_pct": 0.13962,
"shoots_catches": "L",
"shorthanded_goals": 0,
"shorthanded_points": 0,
"shots": 265,
"team_abbrevs": "TBL",
"time_on_ice_per_game_seconds": 1271.3717
}
],
"total": 920
}Get spotlighted players
Get the players NHL.com is featuring on its front page right now, each with their club and a link to their profile.
Inputs
None.
Outputs
countnumber- How many players.
playerslist- Featured players.
Example output
{
"count": 1,
"players": [
{
"headshot": "https://assets.nhle.com/mugs/nhl/20242025/CHI/8484144.png",
"name": "Connor Bedard",
"player_id": 8484144,
"position": "C",
"profile_url": "https://www.nhl.com/player/connor-bedard-8484144",
"sweater_number": 98,
"team_abbrev": "CHI",
"team_id": 16
}
]
}Get team season stats
Rank every club in a season by any team column: points, goals for and against, power play, penalty kill, faceoffs and shots. Use it to compare clubs rather than players.
Inputs
- Season
seasontextRequired - The season to read, for example 2024-25.
- Game type
game_typetext - Optional. Which games to count. Defaults to the regular season. Ignored unless a season is chosen.One of:
2(Regular season),3(Playoffs),1(Preseason),4(All-Star). - Team filter
teamtext - Optional. Narrow the ranking to one club. Defaults to the whole league.
- Sort by
sort_bytext - Which column to rank by. Defaults to Points.One of:
points,wins,losses,otLosses(Overtime losses),pointPct(Points %),goalsFor(Goals for),goalsAgainst(Goals against),goalsForPerGame(Goals for per game),goalsAgainstPerGame(Goals against per game),powerPlayPct(Power-play %), and 4 more. Default:points. - Order
directiontext - Which end of the ranking to start from. Defaults to highest first.One of:
DESC(Highest first),ASC(Lowest first). Default:DESC. - Number of rows
limitnumber - How many rows to return, 1 to 100. Defaults to 25.From 1 to 100. Default:
25. - Skip
offsetnumber - How many rows to skip before the first one returned, for paging past the first page. Defaults to 0.At least 0. Default:
0.
Outputs
countnumber- How many rows were returned.
seasontext- The season ranked, e.g. 20242025.
season_labeltext- Season as 2024-25.
teamslist- Clubs in the order asked for.
totalnumber- How many rows match in all; use it to page.
Example output
{
"count": 1,
"season": "20242025",
"season_label": "2024-25",
"teams": [
{
"faceoff_win_pct": 0.504107,
"games_played": 82,
"goals_against": 214,
"goals_against_per_game": 2.60975,
"goals_for": 274,
"goals_for_per_game": 3.34146,
"losses": 22,
"name": "Vegas Golden Knights",
"ot_losses": 10,
"penalty_kill_pct": 0.757397,
"point_pct": 0.67073,
"points": 110,
"power_play_pct": 0.283422,
"regulation_and_ot_wins": 49,
"season": 20242025,
"shots_against_per_game": 26.10975,
"shots_for_per_game": 30.26829,
"shutouts": 6,
"team_id": 54,
"wins": 50,
"wins_in_regulation": 46,
"wins_in_shootout": 1
}
],
"total": 32
}Get the NHL Network TV schedule
Get what NHL Network is airing on a day: every programme with its title, start and end time. Defaults to today.
Inputs
- Date
datedate - Optional. The day to look up. Defaults to today.
Outputs
broadcastslist- Programmes in air order.
countnumber- How many programmes.
datetext- The day covered.
Example output
{
"broadcasts": [
{
"broadcast_type": "HD",
"description": "On The Fly",
"duration_seconds": 1800,
"end_time": "2025-01-15T00:30:00",
"start_time": "2025-01-15T00:00:00",
"title": "On The Fly"
}
],
"count": 1,
"date": "2025-01-15"
}Get the playoff bracket
Get a postseason's whole bracket: all fifteen series with their two clubs, seedings, games won and who advanced. Each series carries the letter Get a playoff series takes.
Inputs
- Season
seasontextRequired - The season to read, for example 2024-25.
Outputs
countnumber- How many series.
serieslist- Every series, first round first.
yearnumber- The year the postseason was played.
Example output
{
"count": 1,
"series": [
{
"bottom_seed_rank": "WC1",
"bottom_seed_team": {
"abbrev": "OTT",
"common_name": "Senators",
"id": 9,
"logo": "https://assets.nhle.com/logos/nhl/svg/OTT_light.svg",
"name": "Ottawa Senators"
},
"bottom_seed_wins": 2,
"losing_team_id": 9,
"playoff_round": 1,
"series_abbrev": "R1",
"series_letter": "A",
"series_title": "1st Round",
"series_url": "https://www.nhl.com/schedule/playoff-series/2025/series-a/senators-vs-mapleleafs",
"top_seed_rank": "D1",
"top_seed_team": {
"abbrev": "TOR",
"common_name": "Maple Leafs",
"id": 10,
"logo": "https://assets.nhle.com/logos/nhl/svg/TOR_light.svg",
"name": "Toronto Maple Leafs"
},
"top_seed_wins": 4,
"winning_team_id": 10
}
],
"year": 2025
}Get the schedule
Get the league-wide schedule for the week containing a date: every game with its clubs, start time, arena, broadcasters and score if it has been played. Defaults to the current week.
Inputs
- Date
datedate - Optional. Any day in the week you want. Defaults to this week.
Outputs
countnumber- How many games.
dayslist- The seven days covered, with a game count each.
gameslist- Every game that week, in date order.
next_start_datetext- First day of the next week.
previous_start_datetext- First day of the previous week.
Example output
{
"count": 1,
"days": [
{
"date": "2025-01-15",
"day_abbrev": "WED",
"number_of_games": 1
}
],
"games": [
{
"away_team": {
"abbrev": "CAR",
"common_name": "Hurricanes",
"id": 12,
"logo": "https://assets.nhle.com/logos/nhl/svg/CAR_light.svg",
"name": "Carolina Hurricanes",
"place_name": "Carolina",
"score": 2,
"shots_on_goal": 29
},
"game_center_url": "https://www.nhl.com/gamecenter/car-vs-buf/2025/01/15/2024020705",
"game_date": "2025-01-15",
"game_number": null,
"game_schedule_state": "OK",
"game_state": "OFF",
"game_type": 2,
"game_type_name": "Regular season",
"home_team": {
"abbrev": "BUF",
"common_name": "Sabres",
"id": 7,
"logo": "https://assets.nhle.com/logos/nhl/svg/BUF_light.svg",
"name": "Buffalo Sabres",
"place_name": "Buffalo",
"score": 4,
"shots_on_goal": 31
},
"id": 2024020705,
"in_intermission": false,
"last_period_type": "REG",
"neutral_site": false,
"period": 3,
"period_type": "REG",
"recap_url": "/video/car-at-buf-recap-6367153994112",
"season": 20242025,
"season_label": "2024-25",
"start_time_utc": "2025-01-15T23:00:00Z",
"time_remaining": "00:00",
"tv_broadcasts": [
{
"country_code": "US",
"market": "N",
"network": "TNT"
}
],
"venue": "KeyBank Center",
"venue_timezone": "America/New_York"
}
],
"next_start_date": "2025-01-22",
"previous_start_date": "2025-01-08"
}Get the standings
Get the NHL standings: every club's record, points, goal differential, streak and playoff position, ranked within its division, conference and the league. Defaults to right now; pick a date to see how the table looked that day.
Inputs
- As of date
datedate - Optional. The day to read the standings as they stood. Defaults to right now.
Outputs
as_oftext- When these standings were generated, UTC.
countnumber- How many clubs.
standingslist- One row per club, best in the league first.
Example output
{
"as_of": "2025-04-17T12:00:00Z",
"count": 1,
"standings": [
{
"clinch_indicator": "p",
"conference_name": "Western",
"conference_sequence": 1,
"date": "2025-04-17",
"division_name": "Central",
"division_sequence": 1,
"games_played": 82,
"goal_differential": 99,
"goals_against": 203,
"goals_for": 302,
"home_record": "26-9-6",
"l10_record": "7-2-1",
"league_sequence": 1,
"losses": 16,
"ot_losses": 11,
"place_name": "Colorado",
"point_pctg": 0.737805,
"points": 121,
"regulation_plus_ot_wins": 51,
"regulation_wins": 48,
"road_record": "29-7-5",
"season": 20242025,
"season_label": "2024-25",
"streak_code": "W",
"streak_count": 3,
"team_abbrev": "COL",
"team_common_name": "Avalanche",
"team_logo": "https://assets.nhle.com/logos/nhl/svg/COL_light.svg",
"team_name": "Colorado Avalanche",
"wildcard_sequence": 0,
"wins": 55
}
]
}List seasons
List every NHL season back to 1917-18, newest first, with the dates its standings cover and whether it used conferences, divisions, ties and wild cards.
Inputs
None.
Outputs
countnumber- How many seasons.
current_datetext- The NHL's current date.
seasonslist- Seasons, newest first.
Example output
{
"count": 1,
"current_date": "2025-04-17",
"seasons": [
{
"conferences_in_use": true,
"divisions_in_use": true,
"season": 20242025,
"season_label": "2024-25",
"standings_end": "2025-04-17",
"standings_start": "2024-10-04",
"ties_in_use": false,
"wildcard_in_use": true
}
]
}List teams
List every NHL club with its three-letter code and team id, including franchises that no longer play. Use it to turn a team name into the code the other actions take.
Inputs
None.
Outputs
countnumber- How many clubs.
teamslist- Every club, in alphabetical order.
Example output
{
"count": 1,
"teams": [
{
"franchise_id": 5,
"id": 10,
"name": "Toronto Maple Leafs",
"tricode": "TOR"
}
]
}Search players
Search NHL players by name, past and present, and get back each match with the player id the other player actions take. Start here when all you have is a name.
Inputs
- Search query
querytextRequired - The name to search for, for example "mcdavid". Part of a name is enough.
- Active players only
active_onlytrue/false - Optional. Leave out players who are no longer active. Off by default.Default:
false. - Number of results
limitnumber - How many players to return, 1 to 100. Defaults to 20.From 1 to 100. Default:
20.
Outputs
countnumber- How many matches.
playerslist- Matching players, closest match first.
Example output
{
"count": 1,
"players": [
{
"active": true,
"birth_city": "Richmond Hill",
"birth_country": "CAN",
"birth_state_province": "ON",
"height_in_inches": 73,
"last_season": "20242025",
"name": "Connor McDavid",
"player_id": 8478402,
"position_code": "C",
"sweater_number": 97,
"team_abbrev": "EDM",
"weight_in_pounds": 194
}
]
}