statshawk
REST APICompetitions

GET /v1/competitions/{comp}/editions/{year}/standings/{table} — one standings table, uniform across the MatchRecord and PointsRank kinds (standings registry spec §6). The two legacy endpoints above stay byte-identical; this is additive. table is a registered slug from GET.../capabilities's standings list ("league" for a Match-shaped sport, "drivers" / "constructors" for racing) — a slug the sport doesn't register 404s.

cost 1 unitany plan
GET
/v1/competitions/{comp}/editions/{year}/standings/{table}
X-API-Key<token>

Raw API key (sk_live_… or sk_test_…). Preferred for REST clients.

In: header

Path Parameters

comp*string

Competition slug (nba, mlb, epl, …)

year*string

Season start year (e.g. 2026) — cross-year leagues (NBA/NHL/NCAA) use the year the season STARTS in (2025 = the 2025-26 season)

table*string

Registered standings table slug (league | drivers | constructors — see GET.../capabilities's standings list)

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/competitions/string/editions/string/standings/string"
{
  "data": {
    "entries": [
      {
        "entrant": "ent_0a1b2c3d4e5f6g7h8i9j0k1l2m",
        "games_played": 0,
        "losses": 0,
        "otl": 0,
        "pct": 0.1,
        "points": 0,
        "points_against": 0,
        "points_for": 0,
        "team": null,
        "ties": 0,
        "wins": 0
      }
    ],
    "kind": "match_record",
    "slug": "string"
  },
  "meta": {
    "cache": "HIT",
    "fetched_at": "2025-10-15T18:30:00Z",
    "request_id": "266ea41d-adf5-480b-af50-15b940c2b846",
    "source": "postgres",
    "version": "v1"
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}
{
  "error": {
    "code": "string",
    "message": "string",
    "property1": null,
    "property2": null
  }
}