Skip to main content
GET
List games

Notes

  • To authenticate, you’ll need a Tako API key. It’s best practice to store it as an environment variable to avoid hardcoding sensitive credentials in your code.
  • This endpoint is the subject lookup for sports monitors. Find the game or the team here, then pass its id to Create a monitor.
  • Games come back soonest first. limit defaults to 100 and maxes at 500. To get the next page, pass a response’s next_cursor back as cursor.
  • Filter with league, a league id such as NBA or EPL, which is case-insensitive, and with team, a team id, which matches games where the team plays on either side.
  • Rate limits are 60 requests a minute and 5,000 a day, per user.
  • home and away are null for events without teams, such as F1 and NASCAR. title is the only label those rows carry.

Which id goes where

sports.game_start, sports.game_result, and sports.score_event take either id, or both: game_id alone watches the whole game, team_id alone follows that team’s games, and both together watch that team’s side of that one game. For the full rule, see Naming a subject.
Only a live_event row’s id works as a game_id. A row whose source is schedule_table is an FBS or FCS football game that only the football schedule table records. Its id belongs to that table, no live document exists for it, and no monitor accepts it. Only live_event rows can carry odds.

Setting the window

from and to are ISO 8601, and Tako reads a naive value as UTC. They default to one day back and seven days ahead, which is the whole range the schedule covers. A window outside that range returns 400. status defaults to scheduled,live, because you can’t monitor a finished game. To include the games that finished inside the one-day tail, pass final.

Reading odds_available

odds_available is true when the game document already holds a market. Prematch odds arrive inside a per-sport window, so a game further out reports false until that window opens. You can create a monitor either way, so a false here is no reason to wait.

Authorizations

X-API-Key
string
header
required

Query Parameters

league
string

A league id, such as NBA or EPL. Case-insensitive.

team
string

A team id. Matches games where the team plays on either side.

from
string<date-time>

Window start, ISO 8601. Defaults to one day ago, which is the earliest the schedule covers. A naive value reads as UTC.

to
string<date-time>

Window end, ISO 8601. Defaults to seven days ahead, which is the furthest the schedule covers. A window outside that range returns 400.

status
string
default:scheduled,live

Keep only games in these states, comma-separated. Defaults to scheduled,live, because you can't monitor a finished game. To include the games that finished inside the one-day lookback, pass final.

Examples:

"scheduled,live"

"final"

limit
integer
default:100

Games per page. Defaults to 100, maximum 500.

Required range: 1 <= x <= 500
cursor
string

The next_cursor from the previous page. Opaque; pass it back unchanged.

Response

Games in the window, soonest first

Games in the window, soonest first.

items
GameResponse · object[]
required
generated_at
string<date-time>
required
next_cursor
string | null

Pass as 'cursor' to get the next page. Null on the last page.