DataSportAPI
Docs
Your first call in one line

The free key reads yesterday for every sport, 50 calls a day. No card.

Get a free key
Greyhounds: Search
Search/v1/greyhounds/search
Every sport, one key

Complete reads all sixteen sports for $249 a month.

Take Complete
Ask in plain words

"Who won at Kempton yesterday?" Your assistant picks the tool and answers from your plan.

Connect in two minutes
Showing

Greyhounds a trainer API

A trainer
Free key reads yesterdayMCP tool: racing_profileKept 30 minutes

A trainer and their figures.

Ask for it by our id, taken from any other greyhounds answer. The ids inside the answer each open their own endpoint, so you can follow a record from here to everything it links to.

It needs id. Leave one out and the answer names it, before any data is read.

GET/v1/greyhounds/trainers/{id}

Try it

Your key stays in this browser and is filled in on every docs page.

GET
200 OK1467 ms1 recordReal answer from 2026-11-02, trimmed
{
    "data": {
        "trainer_id": "gh_gg8vyekn1s",
        "name": "Peter Craig",
        "slug": "peter-craig",
        "regions": [
            "AU"
        ],
        "stats": {
            "runners_12m": 234,
            "wins_12m": 34,
            "win_pct_12m": 14.53,
            "by_track": [
                {
                    "track": "Warragul",
                    "runners": 68,
                    "wins": 8
                },
                {
                    "track": "Ballarat",
                    "runners": 33,
                    "wins": 4
                },
                {
                    "track": "Bendigo",
                    "runners": 30,
                    "wins": 6
                }
            ]
        }
    },
    "meta": {
        "sport": "greyhounds",
        "endpoint": "/trainers/{id}",
        "as_of": "2026-11-02T09:40:35Z",
        "cached": false,
        "age_seconds": 0
    }
}
No key yet? Get a free key: it reads yesterday for every sport and is filled in here once made.

Parameters

Query values this call takes. Anything else is refused with bad_param and the list it accepts.

NameTypeWhat it does
ididrequiredThe record, by our id, in the path.

Returns

Each field in data, from a real answer. Every id is ours and opens its own endpoint.

FieldTypeWhat it holds
trainer_ididThe trainer, by our id
namestringIts name
slugstringSlug
regionslistRegions
statsobjectStats
metaWhat it holds
sport, endpointWhat you asked
countRows in this answer
page, per_page, total, next_cursorWhere you are in a paged list, when it is paged
as_ofWhen the data was built
cached, age_secondsWhether this is a stored copy, and its age
accessOn the free key: what it reads, and the plan that opens the rest

Errors

Codes this call can give. Each is explained in Errors.

StatusCodeWhen
401no_keyNo key sent, or not in a form we read
401bad_keyA key we do not know
403planThe free key asked for a date other than yesterday
404not_foundAn id we never issued for greyhounds
422bad_paramA value this call does not take, or a required one missing
429rateOver the calls a minute for your plan
503upstreamThe data is not answering; retry after Retry-After

The free key reads yesterday. The Greyhounds plan opens live, fixtures and every date held, for $79 a month.

Add Greyhounds