Skip to main content
Version: 0.1.5

NHL — ESPN core API (v2) — Other

espn_nhl_league_root​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl

API ParameterPythonPatternRequiredNullableDescription

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
abbreviationcharacterTeam abbreviation.
colorcharacterPrimary color hex.
display_namecharacterPlayer display name.
gendercharacterLeague gender designation.
guidcharacterAthlete global unique identifier.
idcharacterUnique player identifier.
is_tournamentlogicalWhether the league is a tournament.
linkscharacter
logoscharacter
namecharacterTeam mascot name.
short_namecharacterShort game name.
slugcharacterURL slug.
uidcharacterCompetitor uid string.
athletes_$refcharacter
awards_$refcharacter
calendar_$refcharacter
draft_$refcharacter
events_$refcharacter
franchises_$refcharacter
group_$refcharacter
groups_$refcharacter
leaders_$refcharacter
notes_$refcharacter
rankings_$refcharacter
season_$refcharacter
season_athletes_$refcharacter
season_coaches_$refcharacter
season_display_namecharacter
season_end_datecharacter
season_futures_$refcharacter
season_power_index_leaders_$refcharacter
season_power_indexes_$refcharacter
season_rankings_$refcharacter
season_start_datecharacter
season_type_$refcharacter
season_type_abbreviationcharacter
season_type_corrections_$refcharacter
season_type_end_datecharacter
season_type_groups_$refcharacter
season_type_has_groupslogical
season_type_has_legslogical
season_type_has_standingslogical
season_type_idcharacterSeason type id (1=pre, 2=reg, 3=post, 4=off).
season_type_namecharacter
season_type_slugcharacter
season_type_start_datecharacter
season_type_typeinteger
season_type_weeks_$refcharacter
season_type_yearinteger
season_types_$refcharacter
season_types_countinteger
season_types_itemscharacter
season_types_page_countinteger
season_types_page_indexinteger
season_types_page_sizeinteger
season_yearintegerSeason end year.
seasons_$refcharacter
teams_$refcharacter
transactions_$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_league_root()

Last validated n/a.

espn_nhl_seasons​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/seasons

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/seasons?limit=200

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_seasons()

Last validated n/a.

espn_nhl_games​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/events

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/events?limit=500

API ParameterPythonPatternRequiredNullableDescription
datesdatesYDate or date range filter (YYYYMMDD or YYYYMMDD-YYYYMMDD).
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_games()

Last validated n/a.

espn_nhl_game​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/events/{event_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/events/401584793

API ParameterPythonPatternRequiredNullableDescription
event_idevent_idYevent_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
competitionscharacter
datecharacterGame date (ISO 8601 datetime string).
idcharacterUnique player identifier.
linkscharacter
namecharacterTeam mascot name.
short_namecharacterShort game name.
time_validlogicalWhether the start time is confirmed.
uidcharacterCompetitor uid string.
venuescharacter
league_$refcharacter
season_$refcharacter
season_type_$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_game(event_id='401584793')

Last validated n/a.

espn_nhl_teams_core​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/teams

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/teams?limit=1000&page=1

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.
pagepageYpage query parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
team_abbreviationcharacterShort team abbreviation (e.g. "BOS").
team_alternate_colorcharacterSecondary team color as a hex string (no leading '#').
team_colorcharacterPrimary team color as a hex string (no leading '#').
team_display_namecharacterFull team display name (location + nickname).
team_idcharacterESPN team id (stable join key across ESPN endpoints).
team_is_activelogicalWhether the team is currently active.
team_is_all_starlogicalWhether the entry is an all-star squad rather than a franchise.
team_locationcharacterTeam location / city (e.g. "Boston").
team_logoscharacterPipe-delimited logo image URLs.
team_namecharacterTeam nickname/mascot (e.g. "Celtics").
team_nicknamecharacterTeam nickname as ESPN labels it (often equals team_name).
team_short_display_namecharacterAbbreviated display name for compact UIs.
team_slugcharacterURL slug used in ESPN web paths.
team_uidcharacterESPN global UID (encodes sport/league/team).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_teams_core()

Last validated n/a.

espn_nhl_team_core​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/teams/{team_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/teams/4

API ParameterPythonPatternRequiredNullableDescription
team_idteam_idYteam_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
abbreviationcharacterTeam abbreviation.
alternate_colorcharacterAlternate color hex.
colorcharacterPrimary color hex.
display_namecharacterPlayer display name.
guidcharacterAthlete global unique identifier.
idcharacterUnique player identifier.
is_activelogicalWhether the team is active.
is_all_starlogicalWhether the team is an all-star team.
linkscharacter
locationcharacterTeam city/location.
logoscharacter
namecharacterTeam mascot name.
short_display_namecharacterShort display name.
slugcharacterURL slug.
uidcharacterCompetitor uid string.
against_the_spread_records_$refcharacter
athletes_$refcharacter
awards_$refcharacter
coaches_$refcharacter
depth_charts_$refcharacter
events_$refcharacter
franchise_$refcharacter
groups_$refcharacter
injuries_$refcharacter
notes_$refcharacter
odds_records_$refcharacter
ranks_$refcharacter
record_$refcharacter
transactions_$refcharacter
venue_$refcharacter
venue_address_citycharacter
venue_address_statecharacter
venue_full_namecharacterVenue full name.
venue_grasslogical
venue_guidcharacter
venue_idcharacterVenue identifier.
venue_imagescharacter
venue_indoorlogicalWhether the venue is indoors.
venue_short_namecharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_team_core(team_id='4')

Last validated n/a.

espn_nhl_venues​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/venues

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/venues?limit=1000

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_venues()

Last validated n/a.

espn_nhl_venue​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/venues/{venue_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/venues/3663

API ParameterPythonPatternRequiredNullableDescription
venue_idvenue_idYvenue_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
full_namecharacterPlayer full name.
grasslogicalWhether the surface is grass.
guidcharacterAthlete global unique identifier.
idcharacterUnique player identifier.
imagescharacter
indoorlogicalWhether the venue is indoors.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_venue(venue_id='3663')

Last validated n/a.

espn_nhl_franchises​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/franchises

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/franchises?limit=200

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_franchises()

Last validated n/a.

espn_nhl_franchise​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/franchises/{franchise_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/franchises/2

API ParameterPythonPatternRequiredNullableDescription
franchise_idfranchise_idYfranchise_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
abbreviationcharacterTeam abbreviation.
colorcharacterPrimary color hex.
display_namecharacterPlayer display name.
idcharacterUnique player identifier.
is_activelogicalWhether the team is active.
locationcharacterTeam city/location.
namecharacterTeam mascot name.
short_display_namecharacterShort display name.
slugcharacterURL slug.
uidcharacterCompetitor uid string.
team_$refcharacter
venue_$refcharacter
venue_address_citycharacter
venue_address_statecharacter
venue_full_namecharacterVenue full name.
venue_grasslogical
venue_guidcharacter
venue_idcharacterVenue identifier.
venue_imagescharacter
venue_indoorlogicalWhether the venue is indoors.
venue_short_namecharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_franchise(franchise_id='2')

Last validated n/a.

espn_nhl_coach​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/{coach_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/1

API ParameterPythonPatternRequiredNullableDescription
coach_idcoach_idYcoach_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
career_recordscharacter
coach_seasonscharacter
experienceintegerYears of coaching experience (if returned).
first_namecharacterPlayer first name.
idcharacterUnique player identifier.
last_namecharacterPlayer last name.
uidcharacterCompetitor uid string.
birth_place_citycharacterBirth place city.
birth_place_statecharacterBirth place state.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_coach(coach_id='1')

Last validated n/a.

espn_nhl_coach_record​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/{coach_id}/record/{record_type}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/1/record/0

API ParameterPythonPatternRequiredNullableDescription
coach_idcoach_idYcoach_id path parameter.
record_typerecord_typeYrecord_type path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
display_valuecharacterLeader stat display value.
idcharacterUnique player identifier.
namecharacterTeam mascot name.
statscharacter
summarycharacterRecord summary string (e.g. "25-15-10").
typecharacterCompetitor type (e.g. "team").
valuedoubleLeader stat numeric value.

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_coach_record(coach_id='1')

Last validated n/a.

espn_nhl_coach_season​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/{coach_id}/seasons/{season}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/coaches/1/seasons/2024

API ParameterPythonPatternRequiredNullableDescription
coach_idcoach_idYcoach_id path parameter.
seasonseasonYseason path parameter.

Returns​

return_parsed=True (default) — the output of parse_single_entity; pass return_as_pandas=True for a pandas.DataFrame.

No returns table is published for this endpoint: no capture: 404 in nba, nfl, mlb, nhl, wnba, cfb, mbb, wbb with the documented example arguments (2026-10-07).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_coach_season(coach_id='1', season=2024)

Last validated n/a.

espn_nhl_positions​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/positions

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/positions?limit=200

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_positions()

Last validated n/a.

espn_nhl_position​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/positions/{position_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/positions/1

API ParameterPythonPatternRequiredNullableDescription
position_idposition_idYposition_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter
abbreviationcharacterTeam abbreviation.
display_namecharacterPlayer display name.
idcharacterUnique player identifier.
leaflogicalWhether this is a leaf (non-parent) position.
namecharacterTeam mascot name.
parent_$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_position(position_id='1')

Last validated n/a.

espn_nhl_tournaments​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/tournaments

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/tournaments?limit=200

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_tournaments()

Last validated n/a.

espn_nhl_awards​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/awards

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/awards?limit=200

API ParameterPythonPatternRequiredNullableDescription
limitlimitYMaximum number of items to return.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
$refcharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_awards()

Last validated n/a.

espn_nhl_award​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/awards/{award_id}

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/awards/1

API ParameterPythonPatternRequiredNullableDescription
award_idaward_idYaward_id path parameter.

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
countintegerTotal athlete count matching the filter.
itemscharacter
page_countintegerTotal pages in the collection.
page_indexinteger
page_sizeinteger

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_award(award_id='1')

Last validated n/a.

espn_nhl_standings_core​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/standings

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/standings

API ParameterPythonPatternRequiredNullableDescription

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
group_namecharacterGroup name.
group_abbreviationcharacterGroup abbreviation.
team_idcharacterTeam id.
team_namecharacterTeam name.
team_abbreviationcharacterTeam abbreviation.
team_display_namecharacterTeam display name.
team_locationcharacterTeam location.
team_logocharacterTeam logo.
ot_lossesdoubleOvertime losses.
clincherdoubleClincher.
differentialdoubleDifferential.
games_behinddoubleGames behind.
games_playeddoubleMatches played.
lossesdoubleLosses.
playoff_seeddoublePlayoff seed.
point_differentialdoublePoint differential.
pointsdoublePoints.
points_againstdoublePoints against.
points_fordoublePoints for.
streakdoubleStreak.
winsdoubleWins.
overtime_lossesdoubleTotal overtime losses.
overtime_winsdoubleOvertime wins.
points_diffdoubleDifference between total points scored for and against the team across all games played.
reg_lossesdoubleNumber of losses the team has suffered in regulation time (excluding overtime and shootout losses).
reg_winsdoubleNumber of wins the team has earned in regulation time (excluding overtime and shootout wins).
rot_lossesdoubleNumber of losses the team has suffered in overtime or the shootout (non-regulation losses).
rot_winsdoubleNumber of wins the team has earned in overtime or the shootout (non-regulation wins).
shootout_lossesdoubleShootout losses.
shootout_winsdoubleShootout wins.
overallcharacterOverall.
homecharacterHome.
roadcharacterRoad.
last ten gamescharacterLast ten games.
vs. div.characterVs. div..

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_standings_core()

Last validated n/a.

espn_nhl_leaders_core​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/leaders

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/leaders

API ParameterPythonPatternRequiredNullableDescription

Returns​

return_parsed=True (default) — the output of parse_items; pass return_as_pandas=True for a pandas.DataFrame.

No returns table is published for this endpoint: parser: parse_items returns no columns on the live payload (nba, nfl, mlb, nhl, 2026-10-07); its rows sit under keys it does not read (top level: $ref, abbreviation, categories, id, name, type).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_leaders_core()

Last validated n/a.

espn_nhl_league_notes​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/notes

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/notes

API ParameterPythonPatternRequiredNullableDescription

Returns​

return_parsed=True (default) — the output of parse_items; pass return_as_pandas=True for a pandas.DataFrame.

No returns table is published for this endpoint: no capture: the page holds zero items (count 0) in nba, nfl, mlb, nhl, wnba, cfb, mbb, wbb with the documented example arguments (2026-10-07).

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_league_notes()

Last validated n/a.

espn_nhl_talentpicks​

ESPN endpoint.

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/talentpicks

Valid URL: https://sports.core.api.espn.com/v2/sports/hockey/leagues/nhl/talentpicks

API ParameterPythonPatternRequiredNullableDescription

Returns​

return_parsed=True (default) — a tidy polars.DataFrame with the columns below; pass return_as_pandas=True for a pandas.DataFrame.

col_nametypedescription
pick_competition_$refcharacter
pick_competitor_$refcharacter
pick_correctlogical
pick_person_display_namecharacter
pick_person_first_namecharacter
pick_person_headshot_altcharacter
pick_person_headshot_hrefcharacter
pick_person_idcharacter
pick_person_last_namecharacter
week_record_display_valuecharacter
week_record_season_$refcharacter
week_record_statscharacter

return_parsed=False — the raw JSON Dict payload, unparsed.

Example​

espn_nhl_talentpicks()

Last validated n/a.