Get futures for a sport
Returns futures/outright competition events (e.g. tournament winner) for a sport, with future-class markets in the standard V2 market → participants → lines → prices shape and per-market settlement state. Competition events are excluded from the dated game endpoints and served only here. Early access — requires an Ultra plan or higher.
A competition is an interval, not an instant: event_date is when it starts and settle_by is when it must have graded. Futures events carry no teams array and no score — the human-readable identity is schedule.event_name.
Date filtering uses interval overlap. An event is returned when its [event_date, settle_by] span intersects the requested window — settle_by >= from and event_date <= to. So the default from=now means “in flight right now” and matches a season future that started months ago.
Paging is keyset-based (no skip parameter). When more results exist the response carries meta.next_cursor; pass it back verbatim as cursor. Ordering is soonest-to-resolve first: settle_by, then event_date, then event_id.
Default visibility: settled markets are removed per market, an event is hidden once every requested future-class market on it has settled, and terminal (final/canceled/abandoned) events are excluded. include_settled=true lifts all of those and the default from=now, so settled history is reachable.
Delta bootstrap: meta.delta_last_id seeds GET /api/v2/markets/delta exactly like the game-event snapshots. Futures market IDs are not in the delta feed’s default set — pass them explicitly (e.g. market_ids=1141) when polling. See the Futures guide for the full integration recipe.
Authorizations
API key as query parameter
Path Parameters
Sport ID. Common values: 1=NCAAF, 2=NFL, 3=MLB, 4=NBA, 5=NCAAB, 6=NHL, 7=UFC, 8=WNBA, 9=CFL, 10=MLS, 11=EPL, 16=UEFA Champions League, 33=UEFA Europa League, 38=ATP Tennis, 39=WTA Tennis, 40=PGA Tour Golf, 41=Formula 1
Query Parameters
Start of the window. A competition is returned when its settle_by is at or after this — i.e. it has not finished yet. RFC3339 timestamp or YYYY-MM-DD; date-only values use the offset timezone. Defaults to now, with two exceptions where it is left unbounded instead: when include_settled=true (so settled history, whose intervals ended in the past, stays reachable), and when an explicit to is itself already in the past (defaulting from to now would describe an inverted, always-empty window).
End of the window. A competition is returned when its event_date (start) is at or before this. RFC3339 timestamp or YYYY-MM-DD, inclusive; date-only values use the offset timezone. Unbounded when omitted.
UTC offset in minutes for the date boundary. Use 300 for US Central, 240 for Eastern, 360 for Mountain, 420 for Pacific. Without this, the API day boundary is midnight UTC.
300
Maximum events returned per page (values above 200 are clamped to 200).
x <= 200Opaque keyset page token. Pass meta.next_cursor from the previous response verbatim; omit for the first page. Do not parse or construct the token.
Set to true to include settled markets (with their graded settlement entries) and terminal (finished/canceled) competition events. Also lifts the default from=now, so settled history is reachable — add explicit from/to bounds to scope it.
Comma-separated market IDs, intersected with the future-class market set (1141 = Tournament Winner on every futures sport; golf adds 1392–1396). When omitted, all future-class markets are returned. Game-market IDs match no markets here (events still return, with empty markets arrays).
Comma-separated sportsbook/affiliate IDs to filter. Common values include DraftKings (19), FanDuel (23), BetMGM (22), Bovada (2), Pinnacle (3).