Documentation / Guides

Timezones & dates

How GreyhoundAPI handles time across Great Britain and Australia: UTC timestamps, track-local rendering and track-local date parameters.

Covering GB and AU together means two racing days are always in play. The API keeps this unambiguous with two rules.

Rule 1 — timestamps are UTC, rendered locally too

"scheduled_start": {
  "utc":   "2026-07-08T20:46:00Z",
  "local": "2026-07-08T21:46:00+01:00"
},
"track": { "name": "Romford", "timezone": "Europe/London" }

Store and compare the utc value; show the local value. Every track carries its IANA timezone.

Rule 2 — date parameters are track-local

?date=2026-07-09 means the 9th of July at that track. A Wentworth Park evening card on the 9th (Sydney time) matches date=2026-07-09 even while it is still the 8th in London. Likewise racecards/today resolves "today" per track — an AU card and a GB card can both be today's at the same moment. This is deliberate: it matches how racing calendars are published in each country.