Documentation / Guides

Runners, traps and statuses

How GreyhoundAPI shows every dog declared for a race: the box it started from, the rug it wore, and what happened to the dogs that were not placed.

A race lists every dog declared for it, not only the dogs that ran. Each runner carries three fields that together say who started, from where, and what became of the rest.

trap and rug

trap is the box the dog started from. rug is the rug it wore. For almost every runner they are the same number. They differ when a reserve comes into a race: a reserve carded in rug 9 that replaces a scratched dog runs from that dog's box, so it reads "trap": 4, "rug": 9. Before the race, a reserve that has not been given a box carries its rug in both.

{ "trap": 4, "rug": 9, "dog_name": "Wild Hippo", "position": 4, "runner_status": "runner" }
{ "trap": 4, "rug": 4, "dog_name": "Demon Days", "position": null, "runner_status": "scratched" }

runner_status

  • runner: in the race. Before the off, a boxed dog expected to run; after it, a dog with a placing.
  • scratched: taken out of the race before it ran.
  • reserve: on the card as a reserve and never given a box, so it did not run.
  • did_not_finish: started but has no placing.
  • withdrawn: did not run, with no reason recorded. Older races, and Great Britain and Ireland, use this where the source gives no reason.
  • disqualified: ran and was disqualified.

field_size

field_size is the number of dogs in the race. Before the off it counts the boxed dogs, leaving out scratchings and reserves. Once the race has run it counts the dogs placed plus any that did not finish. A card of ten with two reserves that were not used reads eight.

Results and the full field

The result block lists the placed dogs in finishing order. The race and runner endpoints list every declared dog with its runner_status. To see the scratchings and reserves beside a result, read the race's runners and join on dog_id. A result is final once every dog that ran has a placing; see Data freshness.