Fixtures
Fixtures by date
GET/v2/fixturesAll plans
Fixtures kicking off on one UTC calendar day — for one league, or for a whole sport ten leagues per page (in the order the leagues are ranked).
Walk pages until hasNextPage is false. Every page but the last holds 10 leagues, so a page with no league means the day is over; a page can still hold fewer fixtures than leagues (a league whose matches fall just outside the UTC day contributes none). Which fixtures a day holds is cached for minutes (today and ahead) or hours (past days; for good once every fixture is finished); the status, score and clock of a fixture in play are current to the second (see Data freshness). For a live feed use /v2/livescores or the WebSocket.
Parameters
date
a UTC day, YYYY-MM-DD (1990-01-01 up to a year ahead)
sport
a sport slug — required unless league is given
league
a league id: that league’s fixtures that day (one page; page must be 0)
page
with sport only: page index 0–99 (default 0), 10 leagues per page
Response
- data
Fixture[]- meta
- date, page, count, hasNextPage; with league: league (+ sport if given), page always 0 and hasNextPage false; with sport: sport, leagueCount (leagues on this page), complete (false when some league lists could not be fetched right now — retry shortly)
- errors
- 400 bad_request — missing/invalid date, unknown sport, neither sport nor league, page not 0–99, page other than 0 with league503 upstream_unavailable — none of the page’s league lists could be fetched
Every /v2 call can also answer the common errors.
ExampleTry it →
$ curl -H "Authorization: Bearer sk_live_…" "https://api.sportsapi.app/v2/fixtures?date=2026-10-18&sport=football" { "data": [ { "id": 201324, "sport": "football", "status": { "type": "finished", … }, "startTime": "2026-10-18T15:30:00.000Z", "league": { "id": 195828, "name": "Premier League", … }, … }, … ], "meta": { "date": "2026-10-18", "sport": "football", "page": 0, "count": 38, "leagueCount": 10, "hasNextPage": true, "complete": true } }