Base URL
/api/match/{matchId}/...
Finding Match IDs: Use
/api/live for current matches, /api/schedule/{date} for scheduled matches, or /api/search?q=team to find matches by team name. Match IDs are numeric.Core Match Data
Get Match Details
number
required
Numeric match ID. Discover via
/api/live, /api/schedule/{date}, or /api/search.Get Period Scores
Example response
Example response
Recorded 24 October 2026 from
GET /v2/basketball/api/match/16624778/scores (lists trimmed to 2 items).Basketball scores include
period1 through period4, plus overtime and normaltime fields — unlike football which uses halftime periods.Basketball Status Codes
Pattern: Quarter codes are
12 + quarter_number. So 1st quarter = 13, 2nd = 14, 3rd = 15, 4th = 16. The statusCode field in /api/live responses matches status.code in match detail responses.Get Lineups
Example response
Example response
Recorded 24 October 2026 from
GET /v2/basketball/api/match/16607282/lineups (lists trimmed to 1 item).Get Statistics
Get Incidents / Play-by-Play
Get Referee
Get Venue
Player Statistics
All Player Box Scores
The full-game box score for every player is in the Lineups response:GET /api/match/{matchId}/lineups. Each player’s statistics object holds points, rebounds, assists, steals, blocks, FG/3PT/FT splits, secondsPlayed and plus/minus. On a finished game, player points add up to the final score.
GET /api/match/{matchId}/player-statistics is not the box score source for basketball and can return 404, even when hasEventPlayerStatistics is true. Use /lineups instead. During a live game, /lineups is an in-progress snapshot; fetch it again 15–30 minutes after status.type becomes finished and treat that copy as final.Specific Player Statistics
number
required
Numeric player ID. Get from lineups or match details.