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
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
Documentation / Rugby / Teams and players

Rugby head to head API

Head to head
Free key reads yesterdayMCP tool: head_to_headKept 30 minutes

Every meeting between two teams.

A list you will want once and then keep: it changes rarely. Ids in it open their own endpoints.

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

GET/v1/rugby/head-to-head

Try it

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

GET
200 OK1374 ms2 rows shownReal answer from 2026-11-03, trimmed
{
    "data": [
        {
            "id": "rg_7pn17h2031",
            "date": "2026-04-04",
            "kickoff_utc": "2026-04-04T19:00:00Z",
            "status": "finished",
            "competition": {
                "id": "rg_mgmna5xt92",
                "name": "Challenge Cup"
            },
            "season": {
                "id": "rg_2234qg6q6v",
                "name": "2025-26"
            },
            "home": {
                "id": "rg_3wgs9z80xa",
                "name": "Ulster",
                "score": 28
            },
            "away": {
                "id": "rg_tnz71wf1rk",
                "name": "Ospreys",
                "score": 24
            }
        },
        {
            "id": "rg_y7p9vp2a7r",
            "date": "2026-02-28",
            "kickoff_utc": "2026-02-28T19:45:00Z",
            "status": "finished",
            "competition": {
                "id": "rg_66dnen7n9s",
                "name": "United Rugby Championship"
            },
            "season": {
                "id": "rg_5d0222fxmz",
                "name": "2025-26"
            },
            "home": {
                "id": "rg_tnz71wf1rk",
                "name": "Ospreys",
                "score": 21
            },
            "away": {
                "id": "rg_3wgs9z80xa",
                "name": "Ulster",
                "score": 10
            }
        }
    ],
    "meta": {
        "sport": "rugby",
        "endpoint": "/head-to-head",
        "count": 41,
        "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
teamidrequiredA team, by its id.
opponentidrequiredThe other side, by its id.

Returns

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

FieldTypeWhat it holds
ididOur id for this record
datedateThe day, YYYY-MM-DD
kickoff_utcdatetimeKick-off time in UTC
statusstringIts state: scheduled, live, finished or similar
competitionobjectThe competition
seasonobjectThe season
homeobjectThe home side
awayobjectThe away side
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 rugby
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 Rugby plan opens live, fixtures and every date held, for $29 a month.

Add Rugby