matches

Single match

get/v1/matches/{id}

Request

  • Base URL: https://api.bigballsdata.com
  • URL: https://api.bigballsdata.com/v1/matches/{id}
  • Auth: one of:
    • API key in header x-api-key
    • HTTP bearer

Path parameters

idstring uuid required

A stored BigBalls id. This is the identifier every match, team, player and league endpoint returns, and the one every {id} path segment accepts. Take it from the id field of the corresponding list endpoint and use it as-is.

Example:cf2d81c8-8e7c-4eaf-a515-c51be3962e57

Query parameters

sport'football' | 'basketball' | 'baseball' | 'ice_hockey' | 'cricket' | 'mma' | 'boxing' | 'formula1' | 'american_football' required
fieldsstring

Comma-separated: scores,odds,lineups,stats,events,player_market_value. ACCEPTED BUT DOES NOT CHANGE THE RESPONSE. Measured 2026-09-18 across 4 field combinations and 2 sports: the returned key set was byte-for-byte identical with the parameter absent, with one field and with all five. Do not build a projection on it. Tracked in issue #2761.

Response

ok. data is a single Match object, the same shape /v1/matches returns in its array. Until 2026-09-18 this declared a FieldKey-keyed map of FieldResult envelopes, which this route has never returned.

Example response

{
  "data": {
    "id": "cf2d81c8-8e7c-4eaf-a515-c51be3962e57",
    "league": "MLB",
    "home": {
      "id": "cf2d81c8-8e7c-4eaf-a515-c51be3962e57"
    },
    "away": {
      "id": "cf2d81c8-8e7c-4eaf-a515-c51be3962e57"
    },
    "round": "Regular Season - 2"
  },
  "meta": {
    "date_window": {
      "timezone": "UTC",
      "start_utc": "2026-09-13T00:00:00.000Z",
      "end_utc": "2026-09-14T00:00:00.000Z"
    },
    "source": "official-league",
    "confidence": 0.95,
    "cache_age_ms": 4200,
    "request_id": "req_abc123",
    "note": "match_id is omitted on 380 of 380 rows in this response. The live feed behind them does not carry an id we can resolve to a stored match, so we return no id rather than one that will not work. For rows with ids you can call back into, use /v1/stored/matches with the same sport or league, for example /v1/stored/matches?league=epl."
  },
  "error": {
    "code": "NOT_FOUND"
  }
}

Changes

No recorded changes to this operation across all 2 revisions of this API.