Public card of a tournament match
const url = 'https://foxleague.ai/api/public/tournament-match/example';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://foxleague.ai/api/public/tournament-match/exampleThe public header of a tournament or challenge match for the watch page, asked by its public id (matches[].id of GET /api/tournaments/{id}): tournament, round, teams, kickoff and whether to open the live broadcast (mode: "live", then GET /api/live/tournament-match/{id}) or the replay (mode: "replay", then GET /api/replay/tournament-match/{id}). The score is null while the match is on air and appears once its broadcast ends. A tournament match is named by its public id only: no answer carries its match id. The answer is the object itself, without the success envelope.
Who: anyone.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The match’s public id (matches[].id of the tournament): 22 URL-safe characters.
Responses
Section titled “ Responses ”Success or a refusal: read success (the refusals are in the description).
The public header of a tournament or challenge match.
object
Away goals; null while the match is on air.
Away team name (TBD when not known).
When the match’s broadcast ended (RFC 3339); null while it is on air.
true for a developer tournament, played by uploaded team code.
The group of a group-stage match; null otherwise.
Home goals; null while the match is on air.
Home team name (TBD when not known).
live while the match is on air: open GET /api/live/tournament-match/{tournament_match_id}. replay once its broadcast ends: open GET /api/replay/tournament-match/{tournament_match_id}.
The round’s name; Round <n> when it has none.
Kickoff (RFC 3339). A viewer joining late seeks to the time since kickoff.
live while the match is on air, then its final state once its broadcast ends: forfeit for a match decided without being played and otherwise finished.
The match’s public id (matches[].id of the tournament): 22 URL-safe characters with no order. A tournament match is named by it only.
The tournament’s title.
Example
{ "away_score": null, "away_team": "Golden Lynx", "broadcast_ended_at": null, "developer_mode": false, "group_name": null, "home_score": null, "home_team": "Red Foxes", "mode": "live", "round_label": "Semi-final", "scheduled_at": "2026-10-01T18:00:00Z", "status": "live", "tournament_match_id": "Qx7_kP2mZr9-aB3cD4eF5g", "tournament_title": "Autumn Cup"}No such public id; a match before its kickoff; a seed that goes through without an opponent. The body is empty.
A server read failed. The body is empty.