Fixtures

Fixtures / events (prematch & live)

List fixtures with optional filtering by sport, league, date range, or incremental polling via since.

Prematch vs Live: By default returns prematch fixtures. Set live=1 for live/in-play events. Live fixtures have a parent_id pointing to the prematch counterpart.

Resolving the live counterpart: Pass parent_id=<prematch event_id>&live=1 to get the live/in-play child event(s) of a prematch fixture in one call — works during the match and after settlement. The main match is the row with resulting_unit = "Regular"; Corners/Bookings variants appear as separate children with the same parent_id. With live=0 (default), parent_id returns the prematch children instead (the Corners/Bookings fixtures).

Polling pattern: Use since with an ISO 8601 timestamp to get only fixtures added or updated since your last poll. Ideal for building a local cache.

Time window: starts_from and starts_to accept both YYYY-MM-DD and YYYY-MM-DD HH:MM:SS (UTC) — pass a full datetime for narrow windows like "next 2 hours". Date-only starts_to includes the entire day (so starts_to=2026-04-12 still catches kickoffs at 23:45).

Response fields:

  • event_id — Unique event identifier (use in /api/odds, /api/closing, etc.)

  • starts — Scheduled kickoff (UTC)

  • runner_home / runner_away — Team/player names

  • live_status — null = prematch, 1 = currently live

  • resulting_unit — Settlement basis when not standard match result (e.g. "Corners", "Bookings"). Appears as suffix in runner names.

  • parent_id — For live fixtures, the prematch event_id for the same match

  • version — Increments on any metadata change (name, time, etc.)

  • closing_available / opening_available filters — set to 1 to get only fixtures with closing/opening data

get/api/fixtures

Request

  • Base URL: https://api.bettingiscool.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.bettingiscool.com/api/fixtures
  • Auth: API key in header X-API-Key

Query parameters

event_idinteger nullable

Look up a specific event

parent_idinteger nullable

Find child fixtures of a prematch event: combine with live=1 for the live/in-play counterpart, or live=0 (default) for prematch children like Corners/Bookings

sport_idinteger nullable
league_idinteger nullable
starts_fromstring nullable

YYYY-MM-DD or YYYY-MM-DD HH:MM:SS (UTC). T separator and trailing Z accepted.

starts_tostring nullable

YYYY-MM-DD or YYYY-MM-DD HH:MM:SS (UTC). Date-only includes the entire day.

sincestring nullable

Only fixtures added/updated after this timestamp (ISO 8601)

liveinteger

0 = prematch only (default), 1 = live/in-play only

closing_availableinteger nullable

1 = only fixtures with closing data

opening_availableinteger nullable

1 = only fixtures with opening data

limitinteger

Max rows returned (default 100, hard cap 1000). When the result is truncated, the response carries an X-Truncated: true header. Only raise this if you really need more rows in a single call — and combine it with league_id, since, or a starts_from/starts_to window so the response stays small and fast.

Response

Successful Response

unknown required

Changes

No recorded changes to this operation across all 1 revision of this API.