- Public names are sportsdataverse-py's —
athlete→player,event→gameon every ESPN league; sdv-py'sname_patternon 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 wasAssetFetchError), 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 tounknown(wasany); verified endpoints resolve to their row interfaces; the summary dispatchers toParsedTables. Narrow or cast a raw payload. (changelog) - Typed wrapper params and loader rows;
strictmode — TypeScript only. A param the endpoint does not have, a missing required path param or a non-booleanboolparam is a type error; parser rows areRecord<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 followDEFAULT_RETRY_STATUSESwith backoff. (changelog)
cfl — Core API
82 endpoints on sdv.cfl. 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).
espnCflPlayerAwards
CFL — player awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/awards
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_awards / espnCflAthleteAwards
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerAwards({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_awards(...)
espnCflPlayerCareerStats
CFL — player career stats (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/statistics[/{stat_type}]
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_career_stats / espnCflAthleteCareerStats
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
{stat_type} | stat_type | no | number | string — the {stat_type} path segment; optional |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerCareerStats({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_career_stats(...)
espnCflPlayerContracts
CFL — player contracts (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/contracts
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_contracts / espnCflAthleteContracts
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerContracts({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_contracts(...)
espnCflPlayerCore
CFL — player core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_core / espnCflAthleteCore
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — 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.cfl.espnCflPlayerCore({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_core(...)
espnCflPlayerEventlog
CFL — player eventlog (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/eventlog
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_eventlog / espnCflAthleteEventlog
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerEventlog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_eventlog(...)
espnCflPlayerInjuries
CFL — player injuries (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/injuries
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_injuries / espnCflAthleteInjuries
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_injuries):
| col_name | type | description |
|---|---|---|
id | character | ESPN numeric identifier for the athlete. |
display_name | character | Athlete's full display name as shown on ESPN. |
injuries | character | Injury entries for the athlete (list of dicts, stringified): status, type, details, dates. |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerInjuries({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_injuries(...)
espnCflPlayerNotes
CFL — player notes (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/notes
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_notes / espnCflAthleteNotes
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerNotes({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_notes(...)
espnCflPlayerRecords
CFL — player records (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/records
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_records / espnCflAthleteRecords
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerRecords({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_records(...)
espnCflPlayerSeasons
CFL — player seasons (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/seasons
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_seasons / espnCflAthleteSeasons
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerSeasons({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_seasons(...)
espnCflPlayerStatisticslog
CFL — player statisticslog (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/statisticslog
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_statisticslog / espnCflAthleteStatisticslog
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayerStatisticslog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_statisticslog(...)
espnCflPlayerVsPlayer
CFL — player vs player (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes/{athlete_id}/vsathlete/{opp_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athlete_vs_athlete / espnCflAthleteVsAthlete
| API param | JS | required | description |
|---|---|---|---|
{athlete_id} | athlete_id | yes | number | string — the ESPN athlete id |
{opp_id} | opp_id | yes | number | string — the {opp_id} path segment |
| — | parsed | no | boolean — 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.cfl.espnCflPlayerVsPlayer({ athlete_id: '…', opp_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_player_vs_player(...)
espnCflPlayersIndex
CFL — players index (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/athletes
Deprecated aliases (pre-v4 names, still callable): espn_cfl_athletes_index / espnCflAthletesIndex
| API param | JS | required | description |
|---|---|---|---|
active | active | no | boolean — the active ESPN query parameter; default true |
limit | limit | no | number | string — the maximum number of items to return; default 100 |
page | page | no | number | string — the page of a paginated Core v2 list (1-based); default 1 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPlayersIndex({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_players_index(...)
espnCflAward
CFL — award (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/awards/{award_id}
| API param | JS | required | description |
|---|---|---|---|
{award_id} | award_id | yes | number | string — the ESPN award id |
| — | parsed | no | boolean — 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.cfl.espnCflAward({ award_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_award(...)
espnCflAwards
CFL — awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/awards
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflAwards({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_awards(...)
espnCflCoach
CFL — coach (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/coaches/{coach_id}
| API param | JS | required | description |
|---|---|---|---|
{coach_id} | coach_id | yes | number | string — the ESPN coach id |
| — | parsed | no | boolean — 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.cfl.espnCflCoach({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_coach(...)
espnCflCoachRecord
CFL — coach record (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/coaches/{coach_id}/record/{record_type}
| API param | JS | required | description |
|---|---|---|---|
{coach_id} | coach_id | yes | number | string — the ESPN coach id |
{record_type} | record_type | no | number | string — the {record_type} path segment; optional; default 0 |
| — | parsed | no | boolean — 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.cfl.espnCflCoachRecord({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_coach_record(...)
espnCflCoachSeason
CFL — coach season (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/coaches/{coach_id}/seasons/{season}
| API param | JS | required | description |
|---|---|---|---|
{coach_id} | coach_id | yes | number | string — the ESPN coach id |
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — 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.cfl.espnCflCoachSeason({ coach_id: '…', season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_coach_season(...)
espnCflGame
CFL — game (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event / espnCflEvent
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
| — | parsed | no | boolean — 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.cfl.espnCflGame({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game(...)
espnCflGameBroadcasts
CFL — game broadcasts (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/broadcasts
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_broadcasts / espnCflEventBroadcasts
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameBroadcasts({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_broadcasts(...)
espnCflGameCompetition
CFL — game competition (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competition / espnCflEventCompetition
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameCompetition({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_competition(...)
espnCflGameTeam
CFL — game team (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor / espnCflEventCompetitor
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameTeam({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team(...)
espnCflGameTeamLeaders
CFL — game team leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}/leaders
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor_leaders / espnCflEventCompetitorLeaders
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameTeamLeaders({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team_leaders(...)
espnCflGameTeamLinescores
CFL — game team linescores (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}/linescores
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor_linescores / espnCflEventCompetitorLinescores
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameTeamLinescores({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team_linescores(...)
espnCflGameTeamRecord
CFL — game team record (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}/record
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor_record / espnCflEventCompetitorRecord
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameTeamRecord({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team_record(...)
espnCflGameTeamRoster
CFL — game team roster (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}/roster
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor_roster / espnCflEventCompetitorRoster
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameTeamRoster({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team_roster(...)
espnCflGameTeamStatistics
CFL — game team statistics (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors/{team_id}/statistics
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitor_statistics / espnCflEventCompetitorStatistics
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_event_competitor_statistics):
| col_name | type | description |
|---|---|---|
split_name | character | Split / season-segment name |
category_name | character | Statistic category name |
stat_name | character | Statistic name |
stat_abbreviation | character | Statistic abbreviation |
stat_value | number | Numeric statistic value |
stat_display_value | character | Formatted statistic value |
stat_description | character | Statistic description |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameTeamStatistics({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_team_statistics(...)
espnCflGameTeams
CFL — game teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/competitors
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_competitors / espnCflEventCompetitors
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameTeams({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_teams(...)
espnCflGameLeaders
CFL — game leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/leaders
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_leaders / espnCflEventLeaders
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameLeaders({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_leaders(...)
espnCflGameOdds
CFL — game odds (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/odds
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_odds / espnCflEventOdds
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameOdds({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_odds(...)
espnCflGameOfficialDetail
CFL — game official detail (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/officials/{official_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_official_detail / espnCflEventOfficialDetail
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{official_id} | official_id | yes | number | string — the {official_id} path segment |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameOfficialDetail({ event_id: '…', official_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_official_detail(...)
espnCflGameOfficials
CFL — game officials (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/officials
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_officials / espnCflEventOfficials
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameOfficials({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_officials(...)
espnCflGamePlay
CFL — game play (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/plays/{play_id}
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_play / espnCflEventPlay
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{play_id} | play_id | yes | number | string — the {play_id} path segment |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGamePlay({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_play(...)
espnCflGamePlayPersonnel
CFL — game play personnel (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/plays/{play_id}/personnel
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_play_personnel / espnCflEventPlayPersonnel
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{play_id} | play_id | yes | number | string — the {play_id} path segment |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGamePlayPersonnel({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_play_personnel(...)
espnCflGamePlays
CFL — game plays (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/plays
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_plays / espnCflEventPlays
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
limit | limit | no | number | string — the maximum number of items to return; default 1000 |
| — | parsed | no | boolean — 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.cfl.espnCflGamePlays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_plays(...)
espnCflGamePowerindex
CFL — game powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/powerindex
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_powerindex / espnCflEventPowerindex
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGamePowerindex({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_powerindex(...)
espnCflGamePredictor
CFL — game predictor (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/predictor
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_predictor / espnCflEventPredictor
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGamePredictor({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_predictor(...)
espnCflGameProbabilities
CFL — game probabilities (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/probabilities
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_probabilities / espnCflEventProbabilities
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
limit | limit | no | number | string — the maximum number of items to return; default 300 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameProbabilities({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_probabilities(...)
espnCflGamePropbets
CFL — game propbets (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/propbets
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_propbets / espnCflEventPropbets
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGamePropbets({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_propbets(...)
espnCflGameScoringplays
CFL — game scoringplays (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/scoringplays
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_scoringplays / espnCflEventScoringplays
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGameScoringplays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_scoringplays(...)
espnCflGameSituation
CFL — game situation (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/situation
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_situation / espnCflEventSituation
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameSituation({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_situation(...)
espnCflGameStatus
CFL — game status (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events/{event_id}/competitions/{cid}/status
Deprecated aliases (pre-v4 names, still callable): espn_cfl_event_status / espnCflEventStatus
| API param | JS | required | description |
|---|---|---|---|
{event_id} | event_id | yes | number | string — the ESPN event (game) id |
{cid} | cid | no | number | string — the {cid} path segment; optional; default from event_id |
| — | parsed | no | boolean — 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.cfl.espnCflGameStatus({ event_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_game_status(...)
espnCflGames
CFL — games (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/events
Deprecated aliases (pre-v4 names, still callable): espn_cfl_events / espnCflEvents
| API param | JS | required | description |
|---|---|---|---|
dates | dates | no | number | string — a date YYYYMMDD, a range YYYYMMDD-YYYYMMDD or a season year YYYY |
limit | limit | no | number | string — the maximum number of items to return; default 500 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflGames({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_games(...)
espnCflFranchise
CFL — franchise (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/franchises/{franchise_id}
| API param | JS | required | description |
|---|---|---|---|
{franchise_id} | franchise_id | yes | number | string — the ESPN franchise id |
| — | parsed | no | boolean — 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.cfl.espnCflFranchise({ franchise_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_franchise(...)
espnCflFranchises
CFL — franchises (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/franchises
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflFranchises({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_franchises(...)
espnCflLeadersCore
CFL — leaders core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/leaders
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflLeadersCore({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_leaders_core(...)
espnCflLeagueNotes
CFL — league notes (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/notes
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflLeagueNotes({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_league_notes(...)
espnCflLeagueRoot
CFL — league root (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — 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.cfl.espnCflLeagueRoot({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_league_root(...)
espnCflPosition
CFL — position (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/positions/{position_id}
| API param | JS | required | description |
|---|---|---|---|
{position_id} | position_id | yes | number | string — the ESPN position id |
| — | parsed | no | boolean — 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.cfl.espnCflPosition({ position_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_position(...)
espnCflPositions
CFL — positions (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/positions
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflPositions({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_positions(...)
espnCflSeasonPlayers
CFL — season players (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/athletes
Deprecated aliases (pre-v4 names, still callable): espn_cfl_season_athletes / espnCflSeasonAthletes
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
limit | limit | no | number | string — the maximum number of items to return; default 100 |
page | page | no | number | string — the page of a paginated Core v2 list (1-based); default 1 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonPlayers({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_players(...)
espnCflSeasonAwards
CFL — season awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/awards
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonAwards({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_awards(...)
espnCflSeasonCoaches
CFL — season coaches (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/coaches
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
limit | limit | no | number | string — the maximum number of items to return; default 500 |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonCoaches({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_coaches(...)
espnCflSeasonDraft
CFL — season draft (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/draft
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonDraft({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_draft(...)
espnCflSeasonDraftRoundPicks
CFL — season draft round picks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/draft/rounds/{round_num}/picks
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{round_num} | round_num | yes | number | string — the {round_num} path segment |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonDraftRoundPicks({ season: '…', round_num: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_draft_round_picks(...)
espnCflSeasonFreeagents
CFL — season freeagents (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/freeagents
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonFreeagents({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_freeagents(...)
espnCflSeasonFutures
CFL — season futures (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/futures
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonFutures({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_futures(...)
espnCflSeasonGroup
CFL — season group (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/groups/{group_id}
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{group_id} | group_id | yes | number | string — the {group_id} path segment |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonGroup({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_group(...)
espnCflSeasonGroupChildren
CFL — season group children (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/groups/{group_id}/children
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{group_id} | group_id | yes | number | string — the {group_id} path segment |
limit | limit | no | number | string — the maximum number of items to return; default 500 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonGroupChildren({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_group_children(...)
espnCflSeasonGroupTeams
CFL — season group teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/groups/{group_id}/teams
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{group_id} | group_id | yes | number | string — the {group_id} path segment |
limit | limit | no | number | string — the maximum number of items to return; default 500 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonGroupTeams({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_group_teams(...)
espnCflSeasonGroups
CFL — season groups (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/groups
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonGroups({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_groups(...)
espnCflSeasonInfo
CFL — season info (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonInfo({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_info(...)
espnCflSeasonPointer
CFL — season pointer (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/season
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — 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.cfl.espnCflSeasonPointer({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_pointer(...)
espnCflSeasonPowerindex
CFL — season powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/powerindex[/{team_id}]
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{team_id} | team_id | no | number | string — the ESPN team id (see espn_<league>_teams); optional |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonPowerindex({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_powerindex(...)
espnCflSeasonPowerindexLeaders
CFL — season powerindex leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/powerindex/leaders
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonPowerindexLeaders({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_powerindex_leaders(...)
espnCflSeasonTeam
CFL — season team (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/teams/{team_id}
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonTeam({ season: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_team(...)
espnCflSeasonTeams
CFL — season teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/teams
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
limit | limit | no | number | string — the maximum number of items to return; default 1000 |
page | page | no | number | string — the page of a paginated Core v2 list (1-based); default 1 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonTeams({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_teams(...)
espnCflSeasonType
CFL — season type (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonType({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_type(...)
espnCflSeasonTypeCorrections
CFL — season type corrections (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/corrections
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonTypeCorrections({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_type_corrections(...)
espnCflSeasonTypeLeaders
CFL — season type leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/leaders
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonTypeLeaders({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_type_leaders(...)
espnCflSeasonTypes
CFL — season types (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonTypes({ season: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_types(...)
espnCflSeasonWeek
CFL — season week (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/weeks/{week}
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{week} | week | yes | number | string — the week of the season (football) |
| — | parsed | no | boolean — 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.cfl.espnCflSeasonWeek({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_week(...)
espnCflSeasonWeekGames
CFL — season week games (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/weeks/{week}/events
Deprecated aliases (pre-v4 names, still callable): espn_cfl_season_week_events / espnCflSeasonWeekEvents
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{week} | week | yes | number | string — the week of the season (football) |
limit | limit | no | number | string — the maximum number of items to return; default 500 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonWeekGames({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_week_games(...)
espnCflSeasonWeekPowerindex
CFL — season week powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/weeks/{week}/powerindex
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
{week} | week | yes | number | string — the week of the season (football) |
limit | limit | no | number | 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) |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonWeekPowerindex({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_week_powerindex(...)
espnCflSeasonWeeks
CFL — season weeks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons/{season}/types/{season_type}/weeks
| API param | JS | required | description |
|---|---|---|---|
{season} | season | yes | number | string — the season year (the year the season ends for winter sports, e.g. 2025 for 2024-25) |
{season_type} | season_type | yes | number | string — the season type: 1 preseason, 2 regular season, 3 postseason |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasonWeeks({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_season_weeks(...)
espnCflSeasons
CFL — seasons (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/seasons
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflSeasons({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_seasons(...)
espnCflStandingsCore
CFL — standings core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/standings
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_standings):
| col_name | type | description |
|---|---|---|
group_name | character | |
group_abbreviation | character | |
team_id | character | ESPN team id |
team_name | character | |
team_abbreviation | character | Team abbreviation |
team_display_name | character | Team display name |
team_location | character | |
team_logo | character | |
avg_points_against | number | |
avg_points_for | number | |
clincher | integer | |
differential | integer | |
division_win_percent | number | |
games_behind | integer | |
league_win_percent | number | |
losses | integer | Number of matches the team has lost. |
playoff_seed | integer | |
point_differential | integer | Goal difference (for minus against). |
points | integer | Competition points. |
points_against | integer | Goals conceded. |
points_for | integer | Goals (or runs) scored by the team. |
streak | integer | |
win_percent | number | |
wins | integer | Number of matches the team has won. |
games_ahead | integer | |
overall | character | Overall record summary as published by ESPN. |
home | character | |
road | character | |
vs_div | character | |
vs_conf | character | |
last_ten_games | character |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflStandingsCore({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_standings_core(...)
espnCflTalentpicks
CFL — talentpicks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/talentpicks
| API param | JS | required | description |
|---|---|---|---|
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflTalentpicks({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_talentpicks(...)
espnCflTeamCore
CFL — team core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/teams/{team_id}
| API param | JS | required | description |
|---|---|---|---|
{team_id} | team_id | yes | number | string — the ESPN team id (see espn_<league>_teams) |
| — | parsed | no | boolean — 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.cfl.espnCflTeamCore({ team_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_team_core(...)
espnCflTeamsCore
CFL — teams core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/teams
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 1000 |
page | page | no | number | string — the page of a paginated Core v2 list (1-based); default 1 |
| — | parsed | no | boolean — 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.cfl.espnCflTeamsCore({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_teams_core(...)
espnCflTournaments
CFL — tournaments (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/tournaments
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 200 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflTournaments({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_tournaments(...)
espnCflVenue
CFL — venue (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/venues/{venue_id}
| API param | JS | required | description |
|---|---|---|---|
{venue_id} | venue_id | yes | number | string — the ESPN venue id |
| — | parsed | no | boolean — 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.cfl.espnCflVenue({ venue_id: '…' });
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_venue(...)
espnCflVenues
CFL — venues (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/football/leagues/cfl/venues
| API param | JS | required | description |
|---|---|---|---|
limit | limit | no | number | string — the maximum number of items to return; default 1000 |
| — | parsed | no | boolean — return tidy rows instead of raw JSON |
Returns (with { parsed: true }, via parse_items):
| col_name | type | description |
|---|---|---|
$ref | character | Core v2 $ref URL to the resource |
Rows are untyped Row[] (not parity-verified yet).
Example:
await sdv.cfl.espnCflVenues({});
// snake_case alias (py/R parity): sdv.cfl.espn_cfl_venues(...)
Generated by tools/codegen/generate.mjs from tools/codegen/endpoints/espn*.yaml (vendored from sdv-py) — see How this library is built._