rugbyAPI
Stats / Discipline
Documentation/Stats/Discipline

Discipline

Archive

Yellow and red cards by player in a match or a season, optionally one team. Top 25.

GEThttps://api.rugbyapi.com/v1/stats/discipline

Parameters

NameWhat it doesExample
matchid, optionalCount only this match.mt_2QQ50R0
seasonid, optionalCount this season. Give a season or a match.ss_1VSX6S8
teamid, optionalOnly this team's players.tm_2QWN0R8

Any other parameter is refused with a 422 naming the ones this endpoint takes, so a typo never silently returns everything.

What each plan returns

Free key

Not included. Returns 403 with the upgrade link.

Archive

Included.

Live

Included.

Response fields

FieldMeaning
data[].player, teamID and name of each
data[].yellow_cards, red_cardsCards shown

Errors you can get

StatusCodeWhen
400key_in_addressThe key was put in the address. Send it in a header (see Authentication).
401missing_keyNo Authorization: Bearer header, or the key was rotated (invalid_key, revoked_key).
403plan_requiredYour plan is below Archive.
422bad_parameterA parameter is malformed, or unknown (unknown_parameter names the ones this endpoint takes).
422missing_parameterNeither a match nor a season was given.
429daily_limitToday's lookups are used. Resets at 00:00 UTC.

Every error has the same shape. All error codes

Try it live

Runs this call from your browser with your own key and shows what comes back.

Your key Get a free key
curl https://api.rugbyapi.com/v1/stats/discipline?season=ss_1VSX6S8 \
  -H "Authorization: Bearer YOUR_KEY"
$ch = curl_init('https://api.rugbyapi.com/v1/stats/discipline?season=ss_1VSX6S8');
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER     => ['Authorization: Bearer YOUR_KEY'],
    CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
import requests

r = requests.get(
    "https://api.rugbyapi.com/v1/stats/discipline",
    params={"season": "ss_1VSX6S8"},
    headers={"Authorization": "Bearer YOUR_KEY"},
)
data = r.json()
const r = await fetch('https://api.rugbyapi.com/v1/stats/discipline?season=ss_1VSX6S8', {
  headers: { Authorization: 'Bearer YOUR_KEY' }
});
const data = await r.json();
200ResponseExample from the live archive, lists cut to 3
{
  "count": 0,
  "data": []
}