Media, Film & Knowledge

Sports Data API

The Sports Data API returns live scores, fixtures and standings as clean JSON.

50 actionsLive JSON1,000 free creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

The primary scores endpoint returns events with teams, score, status and competition, and you can pull fixtures, standings, a team, its roster, a match summary and odds. It is built for sports apps, betting tools and fan products that need live sports data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.

Live example

Real request and response JSON

Captured from the indexed primary action, search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/sports-data/v1/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "query": "Arsenal",
    "type": "team"
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "sports-data",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 288.5,
    "record_count": 1,
    "bytes": 17171,
    "cache_hit": false,
    "completeness_pct": 100,
    "source": "espn",
    "engine": "sports-data"
  },
  "data": {
    "type": "team",
    "query": "Arsenal",
    "results": [
      {
        "source_id": "133604",
        "name": "Arsenal",
        "league": "English Premier League",
        "sport": "Soccer",
        "country": "England",
        "formed_year": "1892",
        "stadium": "Emirates Stadium",
        "badge": "https://r2.thesportsdb.com/images/media/team/badge/uyhbfe[redacted-phone].png",
        "website": "www.arsenal.com"
      }
    ],
    "count": 1
  }
}
Actions

What the Sports Data API does

ActionDescriptionConcrete use caseKey params
scoresLive and final scores for a league — pass a date (YYYYMMDD) or range to get scores for any day; omit it for today/in-play games.Content platforms call scores to get live and final scores for a league.sport, league, date, dates
fixturesUpcoming fixtures and the match schedule for a league, by date or date range (same event shape as scores).Research tools call fixtures to get upcoming fixtures and the match schedule for a league, by date or date range (same event shap….sport, league, date, dates
standingsFull league table / standings with wins, losses, points and per-team stats (soccer leagues accept a season year).Community analysts call standings to get full league table / standings with wins, losses, points and per-team stats (soccer leagues ac….sport, league, season
teamEvery team in a league, or one team's detail (record, next game, logo) when you pass a team_id.Media monitors call team to get every team in a league, or one team's detail (record, next game, logo) when you pass a team_id..sport, league, team_id
rosterA team's full roster / squad with jersey, position, age, height, weight and nationality for each player.Content platforms call roster to get a team's full roster / squad with jersey, position, age, height, weight and nationality for e….sport, league, team_id
summaryFull match summary: boxscore, per-player stats, lineups, play-by-play count, head-to-head, win probability and odds.Research tools call summary to get full match summary.sport, league, event_id
oddsBetting odds (moneyline, spread, over/under) — for one game by event_id, or every scheduled game in the league that has odds.Community analysts call odds to get betting odds (moneyline, spread, over/under).sport, league, event_id, dates
newsLatest news headlines and articles for a league.Media monitors call news to get latest news headlines and articles for a league..sport, league
searchLook up a team or player by name across all sports (returns ids, badges, league, country) — start here when you only have a name.Content platforms call search to look up a team or player by name across all sports (returns ids, badges, league, country).query, type
injuriesCurrent injury report for a league, grouped by team, with each player's status and detail.Research tools call injuries to get current injury report for a league, grouped by team, with each player's status and detail..sport, league
team_scheduleOne team's full season schedule and results (every game the team plays, unlike league-wide fixtures).Community analysts call team_schedule to get one team's full season schedule and results (every game the team plays, unlike league-wide fi….sport, league, team_id, season
conferencesA league's conference / division structure (the directory of groups and sub-groups, e.g. college conferences).Media monitors call conferences to get a league's conference / division structure (the directory of groups and sub-groups, e.g.sport, league
leaguesDirectory of every supported league/competition (key, name, sport) — call this first to discover the league keys the other actions take.Content platforms call leagues to get directory of every supported league/competition (key, name, sport).sport
entity_searchsearch players/teams/tournaments/managers/referees → SofaScore idsResearch tools call entity_search to search players/teams/tournaments/managers/referees → SofaScore ids.query
live_eventsall in-play events for a sportCommunity analysts call live_events to get all in-play events for a sport.sport
scheduled_eventsall scheduled events for a sport on a dateMedia monitors call scheduled_events to get all scheduled events for a sport on a date.sport, date
tournament_seasonsEvery season available for a competition (season id + year) — use the id to scope season-specific calls.Content platforms call tournament_seasons to get every season available for a competition (season id + year).league
match_statisticsdetailed match stats (possession/shots/xG)Research tools call match_statistics to get detailed match stats (possession/shots/xG).event_id
match_lineupslineups + per-player ratings & statsCommunity analysts call match_lineups to get lineups + per-player ratings & stats.event_id
match_momentumattack-momentum graphMedia monitors call match_momentum to get attack-momentum graph.event_id
match_incidentsgoal/card/sub timelineContent platforms call match_incidents to get goal/card/sub timeline.event_id
match_best_playersbest player per teamResearch tools call match_best_players to get best player per team.event_id
match_h2hhead-to-head duel recordCommunity analysts call match_h2h to get head-to-head duel record.event_id
match_managersboth managers for a matchMedia monitors call match_managers to get both managers for a match.event_id
match_oddsmulti-market odds for a matchContent platforms call match_odds to get multi-market odds for a match.event_id
match_player_heatmapa player's touch heatmap in a matchResearch tools call match_player_heatmap to get a player's touch heatmap in a match.event_id, player_id
match_player_shotmapa player's shotmap in a matchCommunity analysts call match_player_shotmap to get a player's shotmap in a match.event_id, player_id
match_average_positionsaverage player positions on the pitchMedia monitors call match_average_positions to get average player positions on the pitch.event_id
playerPlayer profile: current team, position, market value, preferred foot, height, date of birth and contract — by SofaScore player id.Content platforms call player to get player profile.player_id
player_season_statsplayer's season statistics in a leagueResearch tools call player_season_stats to get player's season statistics in a league.player_id, league, season, type
player_heatmapplayer's season heatmapCommunity analysts call player_heatmap to get player's season heatmap.player_id, league, season
player_attributesplayer attribute radar (att/tech/tac/def/cre)Media monitors call player_attributes to get player attribute radar (att/tech/tac/def/cre).player_id
player_transfersA player's full transfer history (from/to club, fee, date) by SofaScore player id.Content platforms call player_transfers to get a player's full transfer history (from/to club, fee, date) by SofaScore player id..player_id
player_recentplayer's recent matchesResearch tools call player_recent to get player's recent matches.player_id
team_detailsTeam profile: manager, venue, founding year and recent pregame form — by SofaScore team id.Community analysts call team_details to get team profile.team_id
team_squadA club's full current squad (every player with id, position, value) by SofaScore team id.Media monitors call team_squad to get a club's full current squad (every player with id, position, value) by SofaScore team id..team_id
team_transfersA club's transfers in and out (player, club, fee, date) by SofaScore team id.Content platforms call team_transfers to get a club's transfers in and out (player, club, fee, date) by SofaScore team id..team_id
team_season_statsteam's season statistics in a leagueResearch tools call team_season_stats to get team's season statistics in a league.team_id, league, season, type
team_formteam recent form + next/prev eventCommunity analysts call team_form to get team recent form + next/prev event.team_id
team_goal_distributionsgoals scored/conceded by match periodMedia monitors call team_goal_distributions to get goals scored/conceded by match period.team_id, league, season
season_standingsSofaScore league table for a competition (overall / home / away splits) with goals for/against and goal difference.Content platforms call season_standings to get sofaScore league table for a competition (overall / home / away splits) with goals for/agains….league, season, type
season_top_playersseason leaders by categoryResearch tools call season_top_players to get season leaders by category.league, season, type
season_top_teamsseason top teams by categoryCommunity analysts call season_top_teams to get season top teams by category.league, season, type
team_of_weekteam of the week (round or rounds list)Media monitors call team_of_week to get team of the week (round or rounds list).league, season, round_id
power_rankingsseason power rankingsContent platforms call power_rankings to get season power rankings.league, season, round_id
cup_treeknockout bracket / cup treeResearch tools call cup_tree to get knockout bracket / cup tree.league, season
tournament_detailsCompetition metadata: country, tier, and the clubs with the most titles — by league key.Community analysts call tournament_details to get competition metadata.league
managerManager profile and full club-by-club career history (matches, wins, points) by SofaScore manager id.Media monitors call manager to get manager profile and full club-by-club career history (matches, wins, points) by SofaScore man….manager_id
refereereferee details + per-tournament statsContent platforms call referee to get referee details + per-tournament stats.referee_id
rankingsWorld rankings — FIFA men's football, or ATP / WTA tennis (set type; defaults to FIFA).Research tools call rankings to get world rankings.type
Code samples

Call search from your stack

curl -X POST https://api.reefapi.com/sports-data/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"Arsenal","type":"team"}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.sports-data.search with {"query":"Arsenal","type":"team"}.
Use cases

Who uses this API and why

  • Sports apps call scores and standings to show live results and league tables.
  • Betting tools use odds and fixtures to price and schedule markets.
  • Fan products use team and roster to build club and player pages.
FAQ

Questions developers ask before integrating

What is the Sports Data API?

Sports Data API is a ReefAPI endpoint group for scores, schedules, teams and standings. It returns live JSON through POST requests under /sports-data/v1.

Is the Sports Data API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. Sports Data calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Sports Data login or account?

No login to Sports Data is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Sports Data data?

The page example is captured from a live scores call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Sports Data API use?

Sports Data actions currently cost 1-2 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.

Can I call Sports Data from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call sports-data actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the Sports Data API a Sports Data scraper?

It is the managed alternative to a DIY Sports Data scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same scores, schedules, teams and standings back as clean JSON.

Why does my Sports Data scraper keep getting blocked?

Most Sports Data scrapers break on anti-bot defenses, rate limits and IP bans that need rotating residential proxies and browser fingerprinting to clear. ReefAPI handles all of that for you — no proxies, no captchas, no maintenance — and returns live JSON. Blocked or failed calls are free.

docs / sports-data

Sports Data

Scores, schedules, teams and standings.

base /sports-data/v150 endpoints
post/sports-data/v1/scores1 credit

Live and final scores for a league — pass a date (YYYYMMDD) or range to get scores for any day; omit it for today/in-play games.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
dateoptionalDate filter, ESPN format YYYYMMDD (or a range 'YYYYMMDD-YYYYMMDD'). Omit for today / live.
Try in playground →
post/sports-data/v1/fixtures1 credit

Upcoming fixtures and the match schedule for a league, by date or date range (same event shape as scores).

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
dateoptionalDate filter, ESPN format YYYYMMDD (or a range 'YYYYMMDD-YYYYMMDD'). Omit for today / live.
Try in playground →
post/sports-data/v1/standings1 credit

Full league table / standings with wins, losses, points and per-team stats (soccer leagues accept a season year).

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
Try in playground →
post/sports-data/v1/team1 credit

Every team in a league, or one team's detail (record, next game, logo) when you pass a team_id.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
team_idoptionalESPN team id — get it from the `team` action's teams[].team_id for the same sport/league (e.g. 13 = NBA Denver Nuggets).
Try in playground →
post/sports-data/v1/roster1 credit

A team's full roster / squad with jersey, position, age, height, weight and nationality for each player.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
team_idrequiredESPN team id — get it from the `team` action's teams[].team_id for the same sport/league (e.g. 13 = NBA Denver Nuggets).
Try in playground →
post/sports-data/v1/summary2 credits

Full match summary: boxscore, per-player stats, lineups, play-by-play count, head-to-head, win probability and odds.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/odds1 credit

Betting odds (moneyline, spread, over/under) — for one game by event_id, or every scheduled game in the league that has odds.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
event_idoptionalOptional ESPN event id: returns the closing line for that one game; omit to list every scheduled game that currently has odds.
dateoptionalDate filter, ESPN format YYYYMMDD (or a range 'YYYYMMDD-YYYYMMDD'). Omit for today / live.
Try in playground →
post/sports-data/v1/news1 credit

Latest news headlines and articles for a league.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
Try in playground →
post/sports-data/v1/injuries1 credit

Current injury report for a league, grouped by team, with each player's status and detail.

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
Try in playground →
post/sports-data/v1/team_schedule1 credit

One team's full season schedule and results (every game the team plays, unlike league-wide fixtures).

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
team_idrequiredESPN team id — get it from the `team` action's teams[].team_id for the same sport/league (e.g. 13 = NBA Denver Nuggets).
seasonoptionalSeason year (soccer standings need it; default current season).
Try in playground →
post/sports-data/v1/conferences1 credit

A league's conference / division structure (the directory of groups and sub-groups, e.g. college conferences).

ParameterAllowed / rangeDescription
sportrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
leaguerequirednba · wnba · ncaam · ncaaw · nfl · ncaaf · mlb · college-baseball · nhl · atp · wta · eng.1 · eng.2 · esp.1 · ita.1 · ger.1 · fra.1 · ned.1 · por.1 · usa.1 · mex.1 · bra.1 · uefa.champions · uefa.europa · fifa.world · ipl · bbl · sheffield-shield · county-championship · cricket-world-cupLeague key (e.g. nba, nfl, mlb, nhl, eng.1, esp.1, ita.1, ger.1, fra.1, uefa.champions, usa.1) or a raw ESPN segment ('bra.1') / cricket series id. SofaScore actions also accept a numeric tournament id.
Try in playground →
post/sports-data/v1/leaguesfree

Directory of every supported league/competition (key, name, sport) — call this first to discover the league keys the other actions take.

ParameterAllowed / rangeDescription
sportoptionalbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
Try in playground →
post/sports-data/v1/live_events1 credit

all in-play events for a sport

ParameterAllowed / rangeDescription
sport = footballrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
Try in playground →
post/sports-data/v1/scheduled_events1 credit

all scheduled events for a sport on a date

ParameterAllowed / rangeDescription
sport = footballrequiredbaseball · basketball · cricket · football · hockey · soccer · tennisSport family (ESPN path). Required with a raw league segment; a known league key (e.g. 'nba') can resolve the sport on its own.
daterequiredDate filter, ESPN format YYYYMMDD (or a range 'YYYYMMDD-YYYYMMDD'). Omit for today / live.
Try in playground →
post/sports-data/v1/tournament_seasonsfree

Every season available for a competition (season id + year) — use the id to scope season-specific calls.

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
Try in playground →
post/sports-data/v1/match_statistics2 credits

detailed match stats (possession/shots/xG)

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_lineups2 credits

lineups + per-player ratings & stats

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_momentum1 credit

attack-momentum graph

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_incidents1 credit

goal/card/sub timeline

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_best_players1 credit

best player per team

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_h2h1 credit

head-to-head duel record

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_managers1 credit

both managers for a match

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_odds2 credits

multi-market odds for a match

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/match_player_heatmap1 credit

a player's touch heatmap in a match

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/match_player_shotmap1 credit

a player's shotmap in a match

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/match_average_positions1 credit

average player positions on the pitch

ParameterAllowed / rangeDescription
event_idrequiredESPN event/game id — take it from the `event_id` of any scores, fixtures or team_schedule result for the same sport/league.
Try in playground →
post/sports-data/v1/player1 credit

Player profile: current team, position, market value, preferred foot, height, date of birth and contract — by SofaScore player id.

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/player_season_stats2 credits

player's season statistics in a league

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
type = overalloptionaloverall · home · awayStat split. Other SofaScore split keys are accepted but a wrong one 404s.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/player_heatmap1 credit

player's season heatmap

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/player_attributes1 credit

player attribute radar (att/tech/tac/def/cre)

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/player_transfers1 credit

A player's full transfer history (from/to club, fee, date) by SofaScore player id.

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/player_recent1 credit

player's recent matches

ParameterAllowed / rangeDescription
player_idrequiredSofaScore player id (e.g. 839956 = Erling Haaland). Resolve unknown players from a SofaScore player URL or a team_squad result.
Try in playground →
post/sports-data/v1/team_details1 credit

Team profile: manager, venue, founding year and recent pregame form — by SofaScore team id.

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
Try in playground →
post/sports-data/v1/team_squad1 credit

A club's full current squad (every player with id, position, value) by SofaScore team id.

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
Try in playground →
post/sports-data/v1/team_transfers1 credit

A club's transfers in and out (player, club, fee, date) by SofaScore team id.

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
Try in playground →
post/sports-data/v1/team_season_stats2 credits

team's season statistics in a league

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
type = overalloptionaloverall · home · awayStat split. Other SofaScore split keys are accepted but a wrong one 404s.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/team_form1 credit

team recent form + next/prev event

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
Try in playground →
post/sports-data/v1/team_goal_distributions1 credit

goals scored/conceded by match period

ParameterAllowed / rangeDescription
team_idrequiredSofaScore team id (NOT the ESPN id) — e.g. 17 = Manchester City, 42 = Arsenal. Resolve unknown teams via a SofaScore team URL.
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/season_standings2 credits

SofaScore league table for a competition (overall / home / away splits) with goals for/against and goal difference.

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
type = totaloptionaltotal · home · awayWhich standings table to return.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/season_top_players2 credits

season leaders by category

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
type = overalloptionaloverall · home · awaySplit for the season leaders.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/season_top_teams2 credits

season top teams by category

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
type = overalloptionaloverall · home · awaySplit for the season leaders.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/team_of_week2 credits

team of the week (round or rounds list)

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
round_idoptionalSpecific round id; omit to list the available rounds.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/power_rankings2 credits

season power rankings

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
round_idoptionalSpecific round id; omit to list the available rounds.
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/cup_tree2 credits

knockout bracket / cup tree

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
seasonoptionalSeason year (soccer standings need it; default current season).
season_idoptionalExplicit SofaScore season id (skips season resolution).
Try in playground →
post/sports-data/v1/tournament_details1 credit

Competition metadata: country, tier, and the clubs with the most titles — by league key.

ParameterAllowed / rangeDescription
leaguerequiredLeague key (e.g. 'eng.1', 'nba'), a raw name to search, or a SofaScore numeric unique-tournament id.
Try in playground →
post/sports-data/v1/manager1 credit

Manager profile and full club-by-club career history (matches, wins, points) by SofaScore manager id.

ParameterAllowed / rangeDescription
manager_idrequiredSofaScore manager id (from entity_search).
Try in playground →
post/sports-data/v1/referee1 credit

referee details + per-tournament stats

ParameterAllowed / rangeDescription
referee_idrequiredSofaScore referee id (from entity_search).
Try in playground →
post/sports-data/v1/rankings1 credit

World rankings — FIFA men's football, or ATP / WTA tennis (set type; defaults to FIFA).

ParameterAllowed / rangeDescription
type = fifaoptionalfifa · atp · wtaWhich world ranking to return. Closed set: fifa, atp, wta (a wrong value returns INVALID_PARAM).
Try in playground →