Endpoint Playground
Lists today's races (about 500 across all tracks) with track, number, post time, minutes to post, status, race type, surface, class, distance, purse and runner count. Filter by track, country, race type, status, open or closed, or the next N minutes; sort by minutes to post, post time or race number. `total` counts every match so `page` and `limit` page through them.
25 Oct 2026: 40 races; 16 fields had a value in every checked item.
Sample value profiles: race_date: 2026-10-24; track_name: AU1 - Maryborough (10), Downs at Albuquerque (9), AU - Coonabarabran (8) and 2 more; number: 1 to 10, median 4.
curl 'https://api.crawlora.net/api/v1/fanduel/racing/races?race_type=T&status=O&sort=mtp&order=asc' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| track | string | No | Keep only these track codes (repeat the parameter or comma-separate), such as `LRL`; list codes with the `tracks` route | |
| country | string | No | Keep only races or tracks in these countries (repeat the parameter or comma-separate): upper-case three-letter codes such as `USA`, `GBR`, `AUS`. Today's codes are listed in the `filters` route's `countries`; lower-case or two-letter values return `400` | |
| exclude_country | string | No | Drop these countries (repeat the parameter or comma-separate), same codes as `country` | |
| race_type | string | No | T | Keep only these race types (repeat the parameter or comma-separate): `T` Thoroughbred, `H` Harness, `Q` QuarterHorse, `L` Thoroughbred LARC |
| status | string | No | O | Keep only these race statuses (repeat the parameter or comma-separate): `O` Open, `IC` Up Next, `SK` Race Off, `RO` Race Official |
| open | boolean | No | `true` for races still open for betting (`O` and `IC`), `false` for off or official races; omit for both | |
| within_minutes | integer | No | Keep races that post within this many minutes, 1 to 1440 | |
| sort | string | No | mtp | Sort: `mtp` (minutes to post), `post_time`, `race_number`; default is the service's own order |
| order | string | No | asc | `asc` or `desc`; default `asc`. Only valid together with `sort` |
| page | integer | No | Page number, from 1; default 1, at most 10000 | |
| limit | integer | No | Items per page, 1 to 200; default 50 |
{
"code": 200,
"data": {
"race_date": "2026-10-23",
"total": 14,
"page": 1,
"limit": 3,
"races": [
{
"id": "A04-1",
"track_code": "A04",
"track_name": "AU - Ascot",
"country": "AUS",
"number": "1",
"race_date": "2026-10-23",
"mtp": 702,
"post_time": "2026-10-24T03:44:00Z",
"status": {
"code": "O",
"name": "Open"
},
"race_type": {
"code": "T",
"name": "Thoroughbred"
},
"surface": {
"code": "T",
"name": "Turf"
},
"race_class": {
"code": "OPEN",
"name": "OPEN"
},
"distance": "5f",
"purse": 56219,
"runner_count": 8,
"live_streaming": true
}
],
"fetched_at": "2026-10-23T16:09:31Z"
},
"msg": "OK"
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.