Skip to main content
Breaking in 4.0.0
  • Public names are sportsdataverse-py's — athlete → player, event → game on every ESPN league; sdv-py's name_pattern on the native families (nhlApiWeb* → nhl*, nflApi* → nfl*, CBS's 16 shorts, the 3.0.0 file-stem names). Every pre-v4 name still works as a deprecated alias that warns once. (changelog)
  • Integer id columns are decimal strings — Every id column of integers (id, *_id, game_pk, playerId, …) comes back as exact decimal strings on every surface — parsers, producers, loaders, HockeyTech analytics. Compare and join ids as strings; Number(row.game_id) for a safe number back. (changelog)
  • 400 / 422 raise InvalidParameterError — For every family (it was AssetFetchError), never retried; the message names host, path and status with a redacted excerpt of the body. (changelog)
  • Typed returns — generated row types for parsed: true — TypeScript only. A wrapper's raw payload resolves to unknown (was any); verified endpoints resolve to their row interfaces; the summary dispatchers to ParsedTables. Narrow or cast a raw payload. (changelog)
  • Typed wrapper params and loader rows; strict mode — TypeScript only. A param the endpoint does not have, a missing required path param or a non-boolean bool param is a type error; parser rows are Record<string, unknown>; loader rows are their generated row types. (changelog)
  • Wrapper failures raise NoDataError / AssetFetchError — Instead of raw axios errors. NoDataError = the fetch worked and there is nothing there (404, ESPN { code: 404 }); AssetFetchError = the fetch failed (403 / 429 / 5xx after retries, network). Retries follow DEFAULT_RETRY_STATUSES with backoff. (changelog)

mch — Core API

82 endpoints on sdv.mch. Each is exposed under a camelCase canonical name and a snake_case alias (py/R parity), accepts snake_case or camelCase params, and returns raw ESPN JSON by default ({ parsed: true } for tidy rows).

espnMchPlayerAwards​

MCH — player awards (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/awards

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_awards / espnMchAthleteAwards

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerAwards({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_awards(...)

espnMchPlayerCareerStats​

MCH — player career stats (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/statistics[/{stat_type}]

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_career_stats / espnMchAthleteCareerStats

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
{stat_type}stat_typenonumber | string — the {stat_type} path segment; optional
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerCareerStats({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_career_stats(...)

espnMchPlayerContracts​

MCH — player contracts (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/contracts

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_contracts / espnMchAthleteContracts

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerContracts({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_contracts(...)

espnMchPlayerCore​

MCH — player core (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_core / espnMchAthleteCore

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerCore({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_core(...)

espnMchPlayerEventlog​

MCH — player eventlog (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/eventlog

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_eventlog / espnMchAthleteEventlog

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerEventlog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_eventlog(...)

espnMchPlayerInjuries​

MCH — player injuries (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/injuries

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_injuries / espnMchAthleteInjuries

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_injuries):

col_nametypedescription
idcharacterESPN numeric identifier for the athlete.
display_namecharacterAthlete's full display name as shown on ESPN.
injuriescharacterInjury entries for the athlete (list of dicts, stringified): status, type, details, dates.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerInjuries({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_injuries(...)

espnMchPlayerNotes​

MCH — player notes (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/notes

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_notes / espnMchAthleteNotes

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerNotes({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_notes(...)

espnMchPlayerRecords​

MCH — player records (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/records

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_records / espnMchAthleteRecords

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerRecords({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_records(...)

espnMchPlayerSeasons​

MCH — player seasons (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/seasons

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_seasons / espnMchAthleteSeasons

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerSeasons({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_seasons(...)

espnMchPlayerStatisticslog​

MCH — player statisticslog (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/statisticslog

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_statisticslog / espnMchAthleteStatisticslog

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerStatisticslog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_statisticslog(...)

espnMchPlayerVsPlayer​

MCH — player vs player (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes/{athlete_id}/vsathlete/{opp_id}

Deprecated aliases (pre-v4 names, still callable): espn_mch_athlete_vs_athlete / espnMchAthleteVsAthlete

API paramJSrequireddescription
{athlete_id}athlete_idyesnumber | string — the ESPN athlete id
{opp_id}opp_idyesnumber | string — the {opp_id} path segment
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayerVsPlayer({ athlete_id: '…', opp_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_player_vs_player(...)

espnMchPlayersIndex​

MCH — players index (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/athletes

Deprecated aliases (pre-v4 names, still callable): espn_mch_athletes_index / espnMchAthletesIndex

API paramJSrequireddescription
activeactivenoboolean — the active ESPN query parameter; default true
limitlimitnonumber | string — the maximum number of items to return; default 100
pagepagenonumber | string — the page of a paginated Core v2 list (1-based); default 1
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPlayersIndex({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_players_index(...)

espnMchAward​

MCH — award (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{award_id}award_idyesnumber | string — the ESPN award id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchAward({ award_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_award(...)

espnMchAwards​

MCH — awards (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchAwards({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_awards(...)

espnMchCoach​

MCH — coach (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{coach_id}coach_idyesnumber | string — the ESPN coach id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchCoach({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_coach(...)

espnMchCoachRecord​

MCH — coach record (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{coach_id}coach_idyesnumber | string — the ESPN coach id
{record_type}record_typenonumber | string — the {record_type} path segment; optional; default 0
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchCoachRecord({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_coach_record(...)

espnMchCoachSeason​

MCH — coach season (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{coach_id}coach_idyesnumber | string — the ESPN coach id
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchCoachSeason({ coach_id: '…', season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_coach_season(...)

espnMchGame​

MCH — game (ESPN sports.core.api.espn.com (core v2)).

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

Deprecated aliases (pre-v4 names, still callable): espn_mch_event / espnMchEvent

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGame({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game(...)

espnMchGameBroadcasts​

MCH — game broadcasts (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/broadcasts

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_broadcasts / espnMchEventBroadcasts

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameBroadcasts({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_broadcasts(...)

espnMchGameCompetition​

MCH — game competition (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competition / espnMchEventCompetition

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameCompetition({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_competition(...)

espnMchGameTeam​

MCH — game team (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor / espnMchEventCompetitor

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeam({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team(...)

espnMchGameTeamLeaders​

MCH — game team leaders (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}/leaders

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor_leaders / espnMchEventCompetitorLeaders

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeamLeaders({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team_leaders(...)

espnMchGameTeamLinescores​

MCH — game team linescores (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}/linescores

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor_linescores / espnMchEventCompetitorLinescores

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_event_competitor_linescores); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_event_competitor_linescores for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeamLinescores({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team_linescores(...)

espnMchGameTeamRecord​

MCH — game team record (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}/record

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor_record / espnMchEventCompetitorRecord

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeamRecord({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team_record(...)

espnMchGameTeamRoster​

MCH — game team roster (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}/roster

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor_roster / espnMchEventCompetitorRoster

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_event_competitor_roster); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_event_competitor_roster for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeamRoster({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team_roster(...)

espnMchGameTeamStatistics​

MCH — game team statistics (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors/{team_id}/statistics

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitor_statistics / espnMchEventCompetitorStatistics

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_event_competitor_statistics):

col_nametypedescription
split_namecharacterSplit / season-segment name
category_namecharacterStatistic category name
stat_namecharacterStatistic name
stat_abbreviationcharacterStatistic abbreviation
stat_valuenumberNumeric statistic value
stat_display_valuecharacterFormatted statistic value
stat_descriptioncharacterStatistic description

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeamStatistics({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_team_statistics(...)

espnMchGameTeams​

MCH — game teams (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/competitors

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_competitors / espnMchEventCompetitors

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameTeams({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_teams(...)

espnMchGameLeaders​

MCH — game leaders (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/leaders

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_leaders / espnMchEventLeaders

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameLeaders({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_leaders(...)

espnMchGameOdds​

MCH — game odds (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/odds

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_odds / espnMchEventOdds

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameOdds({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_odds(...)

espnMchGameOfficialDetail​

MCH — game official detail (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/officials/{official_id}

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_official_detail / espnMchEventOfficialDetail

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{official_id}official_idyesnumber | string — the {official_id} path segment
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameOfficialDetail({ event_id: '…', official_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_official_detail(...)

espnMchGameOfficials​

MCH — game officials (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/officials

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_officials / espnMchEventOfficials

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameOfficials({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_officials(...)

espnMchGamePlay​

MCH — game play (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/plays/{play_id}

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_play / espnMchEventPlay

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{play_id}play_idyesnumber | string — the {play_id} path segment
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePlay({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_play(...)

espnMchGamePlayPersonnel​

MCH — game play personnel (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/plays/{play_id}/personnel

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_play_personnel / espnMchEventPlayPersonnel

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{play_id}play_idyesnumber | string — the {play_id} path segment
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePlayPersonnel({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_play_personnel(...)

espnMchGamePlays​

MCH — game plays (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/plays

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_plays / espnMchEventPlays

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
limitlimitnonumber | string — the maximum number of items to return; default 1000
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_event_plays); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_event_plays for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePlays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_plays(...)

espnMchGamePowerindex​

MCH — game powerindex (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/powerindex

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_powerindex / espnMchEventPowerindex

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePowerindex({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_powerindex(...)

espnMchGamePredictor​

MCH — game predictor (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/predictor

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_predictor / espnMchEventPredictor

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePredictor({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_predictor(...)

espnMchGameProbabilities​

MCH — game probabilities (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/probabilities

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_probabilities / espnMchEventProbabilities

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
limitlimitnonumber | string — the maximum number of items to return; default 300
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameProbabilities({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_probabilities(...)

espnMchGamePropbets​

MCH — game propbets (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/propbets

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_propbets / espnMchEventPropbets

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGamePropbets({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_propbets(...)

espnMchGameScoringplays​

MCH — game scoringplays (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/scoringplays

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_scoringplays / espnMchEventScoringplays

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameScoringplays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_scoringplays(...)

espnMchGameSituation​

MCH — game situation (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/situation

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_situation / espnMchEventSituation

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameSituation({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_situation(...)

espnMchGameStatus​

MCH — game status (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/events/{event_id}/competitions/{cid}/status

Deprecated aliases (pre-v4 names, still callable): espn_mch_event_status / espnMchEventStatus

API paramJSrequireddescription
{event_id}event_idyesnumber | string — the ESPN event (game) id
{cid}cidnonumber | string — the {cid} path segment; optional; default from event_id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGameStatus({ event_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_game_status(...)

espnMchGames​

MCH — games (ESPN sports.core.api.espn.com (core v2)).

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

Deprecated aliases (pre-v4 names, still callable): espn_mch_events / espnMchEvents

API paramJSrequireddescription
datesdatesnonumber | string — a date YYYYMMDD, a range YYYYMMDD-YYYYMMDD or a season year YYYY
limitlimitnonumber | string — the maximum number of items to return; default 500
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchGames({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_games(...)

espnMchFranchise​

MCH — franchise (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{franchise_id}franchise_idyesnumber | string — the ESPN franchise id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchFranchise({ franchise_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_franchise(...)

espnMchFranchises​

MCH — franchises (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchFranchises({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_franchises(...)

espnMchLeadersCore​

MCH — leaders core (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchLeadersCore({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_leaders_core(...)

espnMchLeagueNotes​

MCH — league notes (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchLeagueNotes({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_league_notes(...)

espnMchLeagueRoot​

MCH — league root (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchLeagueRoot({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_league_root(...)

espnMchPosition​

MCH — position (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{position_id}position_idyesnumber | string — the ESPN position id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPosition({ position_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_position(...)

espnMchPositions​

MCH — positions (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchPositions({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_positions(...)

espnMchSeasonPlayers​

MCH — season players (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/athletes

Deprecated aliases (pre-v4 names, still callable): espn_mch_season_athletes / espnMchSeasonAthletes

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
limitlimitnonumber | string — the maximum number of items to return; default 100
pagepagenonumber | string — the page of a paginated Core v2 list (1-based); default 1
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonPlayers({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_players(...)

espnMchSeasonAwards​

MCH — season awards (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/awards

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonAwards({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_awards(...)

espnMchSeasonCoaches​

MCH — season coaches (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
limitlimitnonumber | string — the maximum number of items to return; default 500
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_coaches); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_coaches for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonCoaches({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_coaches(...)

espnMchSeasonDraft​

MCH — season draft (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/draft

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_draft); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_draft for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonDraft({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_draft(...)

espnMchSeasonDraftRoundPicks​

MCH — season draft round picks (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/draft/rounds/{round_num}/picks

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{round_num}round_numyesnumber | string — the {round_num} path segment
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonDraftRoundPicks({ season: '…', round_num: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_draft_round_picks(...)

espnMchSeasonFreeagents​

MCH — season freeagents (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/freeagents

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonFreeagents({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_freeagents(...)

espnMchSeasonFutures​

MCH — season futures (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/futures

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonFutures({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_futures(...)

espnMchSeasonGroup​

MCH — season group (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/groups/{group_id}

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{group_id}group_idyesnumber | string — the {group_id} path segment
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonGroup({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_group(...)

espnMchSeasonGroupChildren​

MCH — season group children (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/groups/{group_id}/children

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{group_id}group_idyesnumber | string — the {group_id} path segment
limitlimitnonumber | string — the maximum number of items to return; default 500
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonGroupChildren({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_group_children(...)

espnMchSeasonGroupTeams​

MCH — season group teams (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/groups/{group_id}/teams

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{group_id}group_idyesnumber | string — the {group_id} path segment
limitlimitnonumber | string — the maximum number of items to return; default 500
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonGroupTeams({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_group_teams(...)

espnMchSeasonGroups​

MCH — season groups (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/groups

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonGroups({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_groups(...)

espnMchSeasonInfo​

MCH — season info (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonInfo({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_info(...)

espnMchSeasonPointer​

MCH — season pointer (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/season

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonPointer({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_pointer(...)

espnMchSeasonPowerindex​

MCH — season powerindex (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/powerindex[/{team_id}]

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{team_id}team_idnonumber | string — the ESPN team id (see espn_<league>_teams); optional
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonPowerindex({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_powerindex(...)

espnMchSeasonPowerindexLeaders​

MCH — season powerindex leaders (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/powerindex/leaders

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonPowerindexLeaders({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_powerindex_leaders(...)

espnMchSeasonTeam​

MCH — season team (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/teams/{team_id}

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonTeam({ season: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_team(...)

espnMchSeasonTeams​

MCH — season teams (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/teams

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
limitlimitnonumber | string — the maximum number of items to return; default 1000
pagepagenonumber | string — the page of a paginated Core v2 list (1-based); default 1
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonTeams({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_teams(...)

espnMchSeasonType​

MCH — season type (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonType({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_type(...)

espnMchSeasonTypeCorrections​

MCH — season type corrections (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/corrections

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonTypeCorrections({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_type_corrections(...)

espnMchSeasonTypeLeaders​

MCH — season type leaders (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/leaders

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonTypeLeaders({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_type_leaders(...)

espnMchSeasonTypes​

MCH — season types (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonTypes({ season: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_types(...)

espnMchSeasonWeek​

MCH — season week (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/weeks/{week}

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{week}weekyesnumber | string — the week of the season (football)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonWeek({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_week(...)

espnMchSeasonWeekGames​

MCH — season week games (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/weeks/{week}/events

Deprecated aliases (pre-v4 names, still callable): espn_mch_season_week_events / espnMchSeasonWeekEvents

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{week}weekyesnumber | string — the week of the season (football)
limitlimitnonumber | string — the maximum number of items to return; default 500
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonWeekGames({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_week_games(...)

espnMchSeasonWeekPowerindex​

MCH — season week powerindex (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/weeks/{week}/powerindex

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
{week}weekyesnumber | string — the week of the season (football)
limitlimitnonumber | string — Page size for this weekly power-index table; pass a limit large enough to avoid paging (table size varies by sport/league -- CFB's FBS table alone is ~134 rows)
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonWeekPowerindex({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_week_powerindex(...)

espnMchSeasonWeeks​

MCH — season weeks (ESPN sports.core.api.espn.com (core v2)).

Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/hockey/leagues/mens-college-hockey/seasons/{season}/types/{season_type}/weeks

API paramJSrequireddescription
{season}seasonyesnumber | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25)
{season_type}season_typeyesnumber | string — the season type: 1 preseason, 2 regular season, 3 postseason
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasonWeeks({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_season_weeks(...)

espnMchSeasons​

MCH — seasons (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchSeasons({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_seasons(...)

espnMchStandingsCore​

MCH — standings core (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_standings):

col_nametypedescription
group_namecharacterGroup name (conference / division).
group_abbreviationcharacterGroup abbreviation.
team_idcharacterESPN team id
team_namecharacterTeam name.
team_abbreviationcharacterTeam abbreviation
team_display_namecharacterTeam display name
team_locationcharacterTeam city/location.
team_logocharacterURL to the team logo image.
avg_points_againstnumber
avg_points_fornumber
clincherinteger
differentialinteger
division_win_percentnumber
games_behindinteger
league_win_percentnumber
lossesintegerNumber of matches the team has lost.
playoff_seedintegerCurrent playoff seed.
point_differentialintegerGoal difference (for minus against).
pointsintegerCompetition points.
points_againstintegerGoals conceded.
points_forintegerGoals (or runs) scored by the team.
streakintegerCurrent streak value.
win_percentnumber
winsintegerNumber of matches the team has won.
games_aheadinteger
overallcharacterOverall record summary as published by ESPN.
homecharacterWhether the player's team was home.
roadcharacter
vs_divcharacter
vs_confcharacter
last_ten_gamescharacter

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchStandingsCore({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_standings_core(...)

espnMchTalentpicks​

MCH — talentpicks (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchTalentpicks({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_talentpicks(...)

espnMchTeamCore​

MCH — team core (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{team_id}team_idyesnumber | string — the ESPN team id (see espn_<league>_teams)
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchTeamCore({ team_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_team_core(...)

espnMchTeamsCore​

MCH — teams core (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 1000
pagepagenonumber | string — the page of a paginated Core v2 list (1-based); default 1
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_teams); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_teams for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchTeamsCore({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_teams_core(...)

espnMchTournaments​

MCH — tournaments (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 200
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchTournaments({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_tournaments(...)

espnMchVenue​

MCH — venue (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
{venue_id}venue_idyesnumber | string — the ESPN venue id
—parsednoboolean — return tidy rows instead of raw JSON

Returns: raw ESPN Dict by default. With { parsed: true } the payload is routed through its parser (parse_single_entity); the column set varies by league and payload, so no fixed table is published. This endpoint is exposed on 30 leagues (nba, wnba, nbagl, mbb, wbb, cfb, nfl, mlb, nhl, mch, wch, college_baseball, college_softball, ufl, xfl, cfl, soccer, epl, laliga, bundesliga, seriea, ligue1, mls, ligamx, ucl, uel, nwsl, wwc, wc, cricket) — see parse_single_entity for the shared parser note.

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchVenue({ venue_id: '…' });
// snake_case alias (py/R parity): sdv.mch.espn_mch_venue(...)

espnMchVenues​

MCH — venues (ESPN sports.core.api.espn.com (core v2)).

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

API paramJSrequireddescription
limitlimitnonumber | string — the maximum number of items to return; default 1000
—parsednoboolean — return tidy rows instead of raw JSON

Returns (with { parsed: true }, via parse_items):

col_nametypedescription
$refcharacterCore v2 $ref URL to the resource

Rows are untyped Row[] (not parity-verified yet).

Example:

await sdv.mch.espnMchVenues({});
// snake_case alias (py/R parity): sdv.mch.espn_mch_venues(...)

Generated by tools/codegen/generate.mjs from tools/codegen/endpoints/espn*.yaml (vendored from sdv-py) — see How this library is built._