/horse-racing/races/{id}/resultsGet horse racing race results
Returns a race with its wagers and each runner's status and finishing detail. Check results_final before settling.
Parameters
idinteger · pathrequiredRace ID
oddsstring · queryInclude odds (default true; false omits them)
formstring · queryInclude recent_form (default true; false omits it)
bookmaker_idstring · queryComma-separated bookmaker IDs to keep in odds (max 100)
Response
JSON with success, the result in data, and where the endpoint pages its results meta.
dataobjectdistancestringeach_wayobjectEachWay is the most common each-way terms across bookmakers; individual bookmakers may offer different terms (see each quote's each_way).
fractionstringplacesintegeridintegermeetingobjectdatestringDate is the local card date (YYYY-MM-DD). It can precede the UTC race_date when a card runs past midnight UTC.
goingstringidintegerID is the the data provider racecourse id. It is reused every day the course races, so a meeting is identified by (id, date).
namestringregionstringpursestringrace_classstringrace_datestringRaceDate and StartTime are UTC.
race_namestringresults_finalbooleanResultsFinal is true once every declared runner is accounted for as a finisher, a non-finisher or a non-runner.
runnersarray of objectagestringdistancestringgenderstringhorse_namestringidintegerID is the the data provider horse id.
jockeyobjectmorning_lineobjectnumberstringNumber is the saddle-cloth number; outcome codes never appear here.
oddsobjectrace_idintegerratingstringrecent_formobjectresultobjectstallstringstatusstringStatus is "runner", "non_runner" (withdrawn) or "did_not_finish".
trainerobjectupdated_atstringUpdatedAt is when anything about this runner last changed (UTC, RFC 3339).
weightstringweight_lbsstringrunners_countintegersportstringstart_timestringstart_utcstringStartUTC is the scheduled off-time in ISO 8601 UTC.
statusstringStatus: NS (not started), live (off within the last 30 minutes, no results yet), result_pending (off more than 30 minutes ago, no results yet), FT (results published). the data provider sends no called-off signal, so an abandoned race stays result_pending.
surfacestringupdated_atstringUpdatedAt is when the race or any of its runners last changed (UTC, RFC 3339).
wagersobjecterrorobjectcodestringmessagestringmetaobjectattributionstringAttribution a data source's licence asks for (Cricsheet's history).
limitintegeroffsetintegertotalintegersuccessboolean
Errors
| Status | Code | When |
|---|---|---|
| 400 | INVALID_PARAM | A parameter is missing or wrong, and the message names it. Fix the request; do not retry it. |
| 401 | UNAUTHORIZED | The key is missing, mistyped or was rotated. |
| 402 | x402 offers | No key and no valid payment: the body lists what to pay. Only a 200 answer is charged. |
| 403 | FORBIDDEN | The sport or feature is not in your plan (FEATURE_NOT_IN_PLAN for Insights and other plan features). |
| 404 | NOT_FOUND | No record with that id. |
| 429 | RATE_LIMIT_EXCEEDED | Too many requests (QUOTA_EXCEEDED for the daily limit). Wait for Retry-After. |
| 500 | INTERNAL_ERROR | Our side. Try again after a few seconds and check the status page. |
All errors have the shape described in Errors and limits.
Generated from the OpenAPI file, version 1.0. See it as JSON