- 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)
epl — Core API
82 endpoints on sdv.epl. 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).
espnEplPlayerAwards
EPL — player awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/awards
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_awards / espnEplAthleteAwards
| 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.epl.espnEplPlayerAwards({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_awards(...)
espnEplPlayerCareerStats
EPL — player career stats (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/statistics[/{stat_type}]
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_career_stats / espnEplAthleteCareerStats
| 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.epl.espnEplPlayerCareerStats({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_career_stats(...)
espnEplPlayerContracts
EPL — player contracts (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/contracts
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_contracts / espnEplAthleteContracts
| 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.epl.espnEplPlayerContracts({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_contracts(...)
espnEplPlayerCore
EPL — player core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_core / espnEplAthleteCore
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplPlayerCore({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_core(...)
espnEplPlayerEventlog
EPL — player eventlog (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/eventlog
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_eventlog / espnEplAthleteEventlog
| 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.epl.espnEplPlayerEventlog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_eventlog(...)
espnEplPlayerInjuries
EPL — player injuries (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/injuries
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_injuries / espnEplAthleteInjuries
| 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.epl.espnEplPlayerInjuries({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_injuries(...)
espnEplPlayerNotes
EPL — player notes (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/notes
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_notes / espnEplAthleteNotes
| 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.epl.espnEplPlayerNotes({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_notes(...)
espnEplPlayerRecords
EPL — player records (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/records
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_records / espnEplAthleteRecords
| 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.epl.espnEplPlayerRecords({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_records(...)
espnEplPlayerSeasons
EPL — player seasons (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/seasons
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_seasons / espnEplAthleteSeasons
| 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.epl.espnEplPlayerSeasons({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_seasons(...)
espnEplPlayerStatisticslog
EPL — player statisticslog (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/statisticslog
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_statisticslog / espnEplAthleteStatisticslog
| 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.epl.espnEplPlayerStatisticslog({ athlete_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_statisticslog(...)
espnEplPlayerVsPlayer
EPL — player vs player (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes/{athlete_id}/vsathlete/{opp_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_athlete_vs_athlete / espnEplAthleteVsAthlete
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplPlayerVsPlayer({ athlete_id: '…', opp_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_player_vs_player(...)
espnEplPlayersIndex
EPL — players index (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/athletes
Deprecated aliases (pre-v4 names, still callable): espn_epl_athletes_index / espnEplAthletesIndex
| 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.epl.espnEplPlayersIndex({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_players_index(...)
espnEplAward
EPL — award (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplAward({ award_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_award(...)
espnEplAwards
EPL — awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplAwards({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_awards(...)
espnEplCoach
EPL — coach (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplCoach({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_coach(...)
espnEplCoachRecord
EPL — coach record (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplCoachRecord({ coach_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_coach_record(...)
espnEplCoachSeason
EPL — coach season (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplCoachSeason({ coach_id: '…', season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_coach_season(...)
espnEplGame
EPL — game (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_event / espnEplEvent
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGame({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game(...)
espnEplGameBroadcasts
EPL — game broadcasts (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/broadcasts
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_broadcasts / espnEplEventBroadcasts
| 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.epl.espnEplGameBroadcasts({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_broadcasts(...)
espnEplGameCompetition
EPL — game competition (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competition / espnEplEventCompetition
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameCompetition({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_competition(...)
espnEplGameTeam
EPL — game team (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor / espnEplEventCompetitor
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameTeam({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team(...)
espnEplGameTeamLeaders
EPL — game team leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}/leaders
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor_leaders / espnEplEventCompetitorLeaders
| 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.epl.espnEplGameTeamLeaders({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team_leaders(...)
espnEplGameTeamLinescores
EPL — game team linescores (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}/linescores
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor_linescores / espnEplEventCompetitorLinescores
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameTeamLinescores({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team_linescores(...)
espnEplGameTeamRecord
EPL — game team record (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}/record
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor_record / espnEplEventCompetitorRecord
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameTeamRecord({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team_record(...)
espnEplGameTeamRoster
EPL — game team roster (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}/roster
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor_roster / espnEplEventCompetitorRoster
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameTeamRoster({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team_roster(...)
espnEplGameTeamStatistics
EPL — game team statistics (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors/{team_id}/statistics
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitor_statistics / espnEplEventCompetitorStatistics
| 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.epl.espnEplGameTeamStatistics({ event_id: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_team_statistics(...)
espnEplGameTeams
EPL — game teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/competitors
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_competitors / espnEplEventCompetitors
| 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.epl.espnEplGameTeams({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_teams(...)
espnEplGameLeaders
EPL — game leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/leaders
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_leaders / espnEplEventLeaders
| 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.epl.espnEplGameLeaders({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_leaders(...)
espnEplGameOdds
EPL — game odds (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/odds
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_odds / espnEplEventOdds
| 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.epl.espnEplGameOdds({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_odds(...)
espnEplGameOfficialDetail
EPL — game official detail (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/officials/{official_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_official_detail / espnEplEventOfficialDetail
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameOfficialDetail({ event_id: '…', official_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_official_detail(...)
espnEplGameOfficials
EPL — game officials (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/officials
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_officials / espnEplEventOfficials
| 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.epl.espnEplGameOfficials({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_officials(...)
espnEplGamePlay
EPL — game play (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/plays/{play_id}
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_play / espnEplEventPlay
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGamePlay({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_play(...)
espnEplGamePlayPersonnel
EPL — game play personnel (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/plays/{play_id}/personnel
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_play_personnel / espnEplEventPlayPersonnel
| 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.epl.espnEplGamePlayPersonnel({ event_id: '…', play_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_play_personnel(...)
espnEplGamePlays
EPL — game plays (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/plays
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_plays / espnEplEventPlays
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGamePlays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_plays(...)
espnEplGamePowerindex
EPL — game powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/powerindex
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_powerindex / espnEplEventPowerindex
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGamePowerindex({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_powerindex(...)
espnEplGamePredictor
EPL — game predictor (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/predictor
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_predictor / espnEplEventPredictor
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGamePredictor({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_predictor(...)
espnEplGameProbabilities
EPL — game probabilities (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/probabilities
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_probabilities / espnEplEventProbabilities
| 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.epl.espnEplGameProbabilities({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_probabilities(...)
espnEplGamePropbets
EPL — game propbets (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/propbets
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_propbets / espnEplEventPropbets
| 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.epl.espnEplGamePropbets({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_propbets(...)
espnEplGameScoringplays
EPL — game scoringplays (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/scoringplays
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_scoringplays / espnEplEventScoringplays
| 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.epl.espnEplGameScoringplays({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_scoringplays(...)
espnEplGameSituation
EPL — game situation (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/situation
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_situation / espnEplEventSituation
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameSituation({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_situation(...)
espnEplGameStatus
EPL — game status (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events/{event_id}/competitions/{cid}/status
Deprecated aliases (pre-v4 names, still callable): espn_epl_event_status / espnEplEventStatus
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplGameStatus({ event_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_game_status(...)
espnEplGames
EPL — games (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/events
Deprecated aliases (pre-v4 names, still callable): espn_epl_events / espnEplEvents
| 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.epl.espnEplGames({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_games(...)
espnEplFranchise
EPL — franchise (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplFranchise({ franchise_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_franchise(...)
espnEplFranchises
EPL — franchises (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplFranchises({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_franchises(...)
espnEplLeadersCore
EPL — leaders core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplLeadersCore({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_leaders_core(...)
espnEplLeagueNotes
EPL — league notes (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplLeagueNotes({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_league_notes(...)
espnEplLeagueRoot
EPL — league root (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1
| 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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplLeagueRoot({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_league_root(...)
espnEplPosition
EPL — position (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplPosition({ position_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_position(...)
espnEplPositions
EPL — positions (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplPositions({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_positions(...)
espnEplSeasonPlayers
EPL — season players (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/seasons/{season}/athletes
Deprecated aliases (pre-v4 names, still callable): espn_epl_season_athletes / espnEplSeasonAthletes
| 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.epl.espnEplSeasonPlayers({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_players(...)
espnEplSeasonAwards
EPL — season awards (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonAwards({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_awards(...)
espnEplSeasonCoaches
EPL — season coaches (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonCoaches({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_coaches(...)
espnEplSeasonDraft
EPL — season draft (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonDraft({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_draft(...)
espnEplSeasonDraftRoundPicks
EPL — season draft round picks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonDraftRoundPicks({ season: '…', round_num: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_draft_round_picks(...)
espnEplSeasonFreeagents
EPL — season freeagents (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonFreeagents({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_freeagents(...)
espnEplSeasonFutures
EPL — season futures (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonFutures({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_futures(...)
espnEplSeasonGroup
EPL — season group (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonGroup({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_group(...)
espnEplSeasonGroupChildren
EPL — season group children (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonGroupChildren({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_group_children(...)
espnEplSeasonGroupTeams
EPL — season group teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonGroupTeams({ season: '…', season_type: '…', group_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_group_teams(...)
espnEplSeasonGroups
EPL — season groups (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonGroups({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_groups(...)
espnEplSeasonInfo
EPL — season info (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonInfo({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_info(...)
espnEplSeasonPointer
EPL — season pointer (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonPointer({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_pointer(...)
espnEplSeasonPowerindex
EPL — season powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonPowerindex({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_powerindex(...)
espnEplSeasonPowerindexLeaders
EPL — season powerindex leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonPowerindexLeaders({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_powerindex_leaders(...)
espnEplSeasonTeam
EPL — season team (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonTeam({ season: '…', team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_team(...)
espnEplSeasonTeams
EPL — season teams (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonTeams({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_teams(...)
espnEplSeasonType
EPL — season type (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonType({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_type(...)
espnEplSeasonTypeCorrections
EPL — season type corrections (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonTypeCorrections({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_type_corrections(...)
espnEplSeasonTypeLeaders
EPL — season type leaders (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonTypeLeaders({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_type_leaders(...)
espnEplSeasonTypes
EPL — season types (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonTypes({ season: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_types(...)
espnEplSeasonWeek
EPL — season week (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplSeasonWeek({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_week(...)
espnEplSeasonWeekGames
EPL — season week games (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/seasons/{season}/types/{season_type}/weeks/{week}/events
Deprecated aliases (pre-v4 names, still callable): espn_epl_season_week_events / espnEplSeasonWeekEvents
| 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.epl.espnEplSeasonWeekGames({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_week_games(...)
espnEplSeasonWeekPowerindex
EPL — season week powerindex (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonWeekPowerindex({ season: '…', season_type: '…', week: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_week_powerindex(...)
espnEplSeasonWeeks
EPL — season weeks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasonWeeks({ season: '…', season_type: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_season_weeks(...)
espnEplSeasons
EPL — seasons (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplSeasons({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_seasons(...)
espnEplStandingsCore
EPL — standings core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplStandingsCore({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_standings_core(...)
espnEplTalentpicks
EPL — talentpicks (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplTalentpicks({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_talentpicks(...)
espnEplTeamCore
EPL — team core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplTeamCore({ team_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_team_core(...)
espnEplTeamsCore
EPL — teams core (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplTeamsCore({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_teams_core(...)
espnEplTournaments
EPL — tournaments (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplTournaments({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_tournaments(...)
espnEplVenue
EPL — venue (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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 40 leagues (nba, wnba, nbagl, nbl, fiba, olympics_mbk, olympics_wbk, nbasl_lv, nbasl_ut, nbasl_ca, nbasl_sac, nbasl_orl, nbasl_gs, 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.epl.espnEplVenue({ venue_id: '…' });
// snake_case alias (py/R parity): sdv.epl.espn_epl_venue(...)
espnEplVenues
EPL — venues (ESPN sports.core.api.espn.com (core v2)).
Endpoint URL: GET https://sports.core.api.espn.com/v2/sports/soccer/leagues/eng.1/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.epl.espnEplVenues({});
// snake_case alias (py/R parity): sdv.epl.espn_epl_venues(...)
Generated by tools/codegen/generate.mjs from tools/codegen/endpoints/espn*.yaml (vendored from sdv-py) — see How this library is built._