HORSERACINGAPI --:--:-- UTC Sign inFree key

Documentation / Horses

Search horses

Find a horse by name.

GET/v1/horses/search
Try itRuns against the real API with your key
No key yet? The free key is made the moment you sign in, and appears here by itself.Get a free key
required
optional
optional
https://api.horseracingapi.org/v1/horses/search?q=Druma

Press Run to see the live answer here.

curl "https://api.horseracingapi.org/v1/horses/search?q=Druma" \
  -H "X-API-Key: hra_live_…"

Parameters

NameIn · typeRequiredWhat it is
qquery · stringYesPart of the name, two letters or more.
per_pagequery · integerNoHow many to a page, 1 to 100. Default 25.
cursorquery · stringNometa.next_cursor from the previous answer, as it came.

Returns

FieldTypeWhat it holds
horse_idstringOur own id for the horse.
namestringThe name it races under.
sexstringAs published.
last_runstringThe day it last ran.

Example answer

{
  "data": [
    {
      "horse_id": "hs_s8vyb06e",
      "name": "Drumadeise",
      "sex": "m",
      "last_run": "2026-10-05"
    },
    {
      "horse_id": "hs_wja7ehed",
      "name": "Drumadoon",
      "sex": "h",
      "last_run": "2024-07-06"
    },
    "… 2 more"
  ],
  "meta": {
    "plan": "results",
    "window": "2022-01-01 to now",
    "data_as_of": "2026-10-21T21:19:06Z",
    "count": 4,
    "next_cursor": null
  }
}

Errors

StatusCodeWhen
400bad_requestA value is the wrong shape, or the key was sent in the address.
401unauthorizedNo key, or one we do not know.
403upgrade_requiredYour plan does not open this endpoint. It is on the Results plan.
422unknown_parameterA parameter this endpoint does not take.
429rate_limitedOver your calls a minute. Retry after the seconds given.
429quota_exceededYour allowance is used. The answer says when it comes back.
503server_errorOn our side. Try again in a minute.