Skip to main content
GET
/
v2
/
sports
/
fifa-world-cup
/
live-games
FIFA World Cup Live Games
curl --request GET \
  --url https://api.predexon.com/v2/sports/fifa-world-cup/live-games \
  --header 'x-api-key: <api-key>'
{
  "games": [
    {
      "polymarket_event_id": "351715",
      "polymarket_game_id": "90086908",
      "polymarket_slug": "fifwc-mex-rsa-2026-06-11",
      "ticker": "fifwc-mex-rsa-2026-06-11",
      "sport": "soccer",
      "league": "fifwc",
      "title": "Mexico vs. South Africa",
      "description": "This event is for the upcoming FIFA World Cup game, scheduled for Thursday, June 11, 2026 between Mexico and South Africa.",
      "image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/soccer ball-bba4025f77.png",
      "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/soccer ball-bba4025f77.png",
      "scheduled_start": "2026-06-11T19:00:00Z",
      "active": true,
      "closed": false,
      "home_team": {
        "code": "mex",
        "name": "Mexico",
        "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/country-flags/mx.png",
        "color": "#107051"
      },
      "away_team": {
        "code": "rsa",
        "name": "South Africa",
        "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/country-flags/za.png",
        "color": "#10704b"
      },
      "status": "scheduled",
      "status_text": "Scheduled",
      "live": false,
      "ended": false,
      "period": null,
      "clock": null,
      "score": {
        "home": 0,
        "away": 0,
        "display": "0-0"
      },
      "winner": null,
      "ended_at": null,
      "last_play": null,
      "significant_events": [],
      "updated_at": null,
      "markets": [
        {
          "polymarket_market_id": "1897034",
          "condition_id": "0x4cd77d456c83e7d8c569a8fb8f6396c3f40154f657e6d970733e2b1b6a7110ff",
          "market_slug": "fifwc-mex-rsa-2026-06-11-mex",
          "question": "Will Mexico win on 2026-06-11?",
          "description": "In the upcoming game, scheduled for June 11, 2026...",
          "selection_label": "Mexico",
          "sports_market_type": "moneyline",
          "status": "open",
          "outcomes": [
            {
              "label": "Yes",
              "price": 0.66
            },
            {
              "label": "No",
              "price": 0.34
            }
          ]
        }
      ]
    }
  ],
  "pagination": {
    "limit": 20,
    "has_more": true,
    "pagination_key": "eyJyb..."
  },
  "updated_at": "2026-05-20T21:55:12.360662Z"
}

Overview

Returns FIFA World Cup game-level display data for games covered by Predexon. This endpoint is for building an Explore or live-games page. It returns one object per FIFA World Cup game, including Polymarket-native identifiers, teams, scheduled start, display metadata, current live-state fields, and nested game-winner markets.
This is a REST discovery endpoint. Use the FIFA World Cup WebSocket for live streaming updates.
status=live returns currently live covered FIFA World Cup games. If no covered game is live at request time, the response is a successful empty games array.

Endpoint

GET https://api.predexon.com/v2/sports/fifa-world-cup/live-games

Query Parameters

ParamTypeDefaultDescription
statusstringliveFilter returned games. One of live, upcoming, or all.
mockstringOptional synthetic live-state overlay for testing. One of live or final. Do not combine with status.
limitint100Maximum games to return. Range: 1-200.
pagination_keystringCursor returned from the previous response. Omit on the first request.
event_typesstringOptional comma-separated event-type filter for significant_events[], e.g. score_change,red_card,yellow_card.
max_ended_age_secondsintOmit finished games whose ended_at is older than this many seconds. Applies only to games with ended: true.

Status Filters

StatusDescription
liveGames currently marked live. Returns games: [] when no covered FIFA World Cup game is live.
upcomingScheduled games that have not started or ended. Useful for display/testing before the tournament begins.
allAll active FIFA World Cup games currently covered by Predexon.

Example Requests

Current live games:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?status=live&limit=20" \
  --header "x-api-key: YOUR_DATA_KEY"
Upcoming games:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?status=upcoming&limit=10" \
  --header "x-api-key: YOUR_DATA_KEY"
Next page:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?status=upcoming&limit=10&pagination_key=eyJyb..." \
  --header "x-api-key: YOUR_DATA_KEY"
Keep the same status value when requesting the next page. Mock live game state:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?mock=live&limit=3" \
  --header "x-api-key: YOUR_DATA_KEY"
Mock final game state:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?mock=final&limit=3" \
  --header "x-api-key: YOUR_DATA_KEY"
When mock is provided, the endpoint uses real FIFA game, team, icon, identifier, and market metadata, then overlays deterministic synthetic live-state fields. This is intended for integration testing before any FIFA World Cup games are live. Mock responses include the same response shape as normal responses, plus top-level mock: true and mock_scenario. mock is mutually exclusive with status. Use status=live|upcoming|all for real data, or mock=live|final for test data. Filter key incidents:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?status=all&event_types=score_change,red_card,yellow_card" \
  --header "x-api-key: YOUR_DATA_KEY"
Exclude games that ended more than one hour ago:
curl --request GET \
  --url "https://api.predexon.com/v2/sports/fifa-world-cup/live-games?status=all&max_ended_age_seconds=3600" \
  --header "x-api-key: YOUR_DATA_KEY"

Response Shape

{
  "games": [
    {
      "polymarket_event_id": "351715",
      "polymarket_game_id": "90086908",
      "polymarket_slug": "fifwc-mex-rsa-2026-06-11",
      "ticker": "fifwc-mex-rsa-2026-06-11",
      "sport": "soccer",
      "league": "fifwc",
      "title": "Mexico vs. South Africa",
      "description": "This event is for the upcoming FIFA World Cup game...",
      "image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/soccer ball-bba4025f77.png",
      "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/soccer ball-bba4025f77.png",
      "scheduled_start": "2026-06-11T19:00:00Z",
      "active": true,
      "closed": false,
      "home_team": {
        "code": "mex",
        "name": "Mexico",
        "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/country-flags/mx.png",
        "color": "#107051"
      },
      "away_team": {
        "code": "rsa",
        "name": "South Africa",
        "icon": "https://polymarket-upload.s3.us-east-2.amazonaws.com/country-flags/za.png",
        "color": "#10704b"
      },
      "status": "scheduled",
      "status_text": "Scheduled",
      "live": false,
      "ended": false,
      "period": null,
      "clock": null,
      "score": {
        "home": 0,
        "away": 0,
        "display": "0-0"
      },
      "penalty_score": null,
      "winner": null,
      "ended_at": null,
      "last_play": null,
      "significant_events": [],
      "updated_at": null,
      "markets": [
        {
          "polymarket_market_id": "1897034",
          "condition_id": "0x4cd77d456c83e7d8c569a8fb8f6396c3f40154f657e6d970733e2b1b6a7110ff",
          "market_slug": "fifwc-mex-rsa-2026-06-11-mex",
          "question": "Will Mexico win on 2026-06-11?",
          "description": "In the upcoming game, scheduled for June 11, 2026...",
          "selection_label": "Mexico",
          "sports_market_type": "moneyline",
          "status": "open",
          "outcomes": [
            {
              "label": "Yes",
              "price": 0.66
            },
            {
              "label": "No",
              "price": 0.34
            }
          ]
        }
      ]
    }
  ],
  "pagination": {
    "limit": 20,
    "has_more": true,
    "pagination_key": "eyJyb..."
  },
  "updated_at": "2026-05-20T21:55:12.360662Z"
}
No games currently live:
{
  "games": [],
  "pagination": {
    "limit": 20,
    "has_more": false,
    "pagination_key": null
  },
  "updated_at": "2026-05-20T21:55:12.353331Z"
}

Response Fields

FieldTypeDescription
polymarket_event_idstringPolymarket Gamma event ID for the game.
polymarket_game_idstringPolymarket sports game ID.
polymarket_slugstringPolymarket event slug.
tickerstringPolymarket event ticker/slug.
sportstringAlways soccer for this endpoint.
leaguestringAlways fifwc for this endpoint.
titlestringDisplay title.
descriptionstringEvent-level description.
imagestringEvent image URL.
iconstringEvent icon URL.
scheduled_startstringScheduled kickoff timestamp.
home_teamobjectHome team code, name, icon URL, and display color from Polymarket event team metadata.
away_teamobjectAway team code, name, icon URL, and display color from Polymarket event team metadata.
statusstringCurrent game-state status, e.g. scheduled, in_progress, final.
status_textstring?Display status when available.
livebooleanWhether the game is live.
endedbooleanWhether the game has ended.
periodstring?Current period/half when live data is available.
clockstring?Game clock when live data is available.
scoreobjectHome/away/display score. Defaults to 0-0 before live data is available.
penalty_scoreobject?Penalty shootout score when the game is in or finished after a penalty shootout. null otherwise.
winnerstring?Winner value when game is final and available.
ended_atstring?Observed game completion timestamp when the game has ended. null before completion.
last_playobject?Latest notable play when available.
significant_events[]arrayKey incident list when available. Empty when no incidents are available.
markets[]arrayNested Polymarket moneyline markets for the game.

Period and Clock

For FIFA World Cup game state, period is a normalized soccer match phase.
ValueMeaning
nullScheduled/not started, or no period available yet.
1HFirst half.
HTHalf time.
2HSecond half.
WETWaiting for extra time.
ET1Extra time first half.
HT ETExtra time half time.
ET2Extra time second half.
FTFull time.
FT ETFull time after extra time.
WPEWaiting for penalty shootout.
PENPenalty shootout.
FT PENFull time after penalty shootout.
INTInterrupted.
SUSPSuspended.
ABDAbandoned.
CANCCanceled or coverage canceled.
POSTPPostponed.
clock is a display clock for elapsed match time. It counts upward, not downward. It is minute-level, not second-level, and is formatted as values such as 18', 45+3', 67', or 120+1'. clock can be null during scheduled, half-time, full-time, waiting, penalty-shootout, canceled, postponed, abandoned, suspended, or interrupted states. The endpoint currently exposes the overall scheduled kickoff as scheduled_start. It does not expose separate first-half, second-half, extra-time, or penalty-shootout start timestamps. Clients should use period, status_text, clock, updated_at, and significant_events[] for phase display.

Penalty Shootouts

Penalty shootout score is separate from regular match score:
{
  "period": "PEN",
  "status_text": "Penalty Shootout",
  "score": {
    "home": 3,
    "away": 3,
    "display": "3-3"
  },
  "penalty_score": {
    "home": 4,
    "away": 2,
    "display": "4-2"
  }
}
For final games after penalties, score remains the match score and penalty_score shows the shootout result:
{
  "status": "final",
  "status_text": "Full Time (Penalties)",
  "period": "FT PEN",
  "score": {
    "home": 3,
    "away": 3,
    "display": "3-3"
  },
  "penalty_score": {
    "home": 4,
    "away": 2,
    "display": "4-2"
  },
  "winner": "home"
}
penalty_score is display metadata for the game state. Market resolution still follows each market’s rules.

Significant Events

significant_events[] contains normalized key incidents for the game when available. It is intended for display-level incidents such as goals, cards, substitutions, penalties, and game-end events, not every low-level stat. last_play is the latest notable play for display. When present, it maps to the most recent item in significant_events[]. last_play can be null when no notable incident has happened yet, or when the live data source has not supplied a latest notable play for that game at that time. This does not mean the field is under development. Use event_types to narrow the returned significant_events[] array. If omitted, all available event types are returned. Common event types:
TypeDescription
score_changeGoal or other score-changing event.
yellow_cardYellow card.
red_cardRed card.
substitutionPlayer substitution.
penaltyPenalty awarded or source-supplied generic penalty event.
missed_penaltyMissed penalty during regular or extra-time play.
penalty_shootout_goalSuccessful penalty in a penalty shootout.
penalty_shootout_missMissed penalty in a penalty shootout.
period_startStart of a half or period.
period_endEnd of a half or period.
game_startGame started.
game_endGame ended or final status reached.
delayGame delayed or suspended.
cancellationGame canceled or postponed.
otherKey incident that does not map cleanly to another normalized type.

Pagination

Responses include cursor pagination:
FieldTypeDescription
pagination.limitintRequested page size.
pagination.has_morebooleanWhether another page is available.
pagination.pagination_keystring?Cursor to pass as pagination_key on the next request.

Market Fields

FieldTypeDescription
polymarket_market_idstringPolymarket market ID.
condition_idstringPolymarket condition ID.
market_slugstringPolymarket market slug.
questionstringMarket question.
descriptionstringMarket-level description.
selection_labelstringGame selection, e.g. Mexico, South Africa, or Draw.
sports_market_typestringCurrently moneyline.
outcomes[].labelstringOutcome label, usually Yes or No.
outcomes[].pricenumberCurrent outcome price when available.
This endpoint is display/discovery focused. It intentionally does not expose Polymarket CLOB token IDs, Predexon routing IDs, volume, or liquidity.

Authorizations

x-api-key
string
header
required

Data key provided by Predexon. The trading key used by the Order Router on trade.predexon.com is a separate credential.

Query Parameters

status
enum<string>
default:live

Filter returned games. Use live for currently live games, upcoming for scheduled games, or all for all active FIFA World Cup games covered by Predexon.

Available options:
live,
upcoming,
all
mock
enum<string>

Optional deterministic mock live-state overlay for integration testing before FIFA games are live. Mutually exclusive with status.

Available options:
live,
final
limit
integer
default:100

Max games to return.

Required range: 1 <= x <= 200
pagination_key
string

Cursor returned from the previous response. Omit on the first request.

event_types
string

Optional comma-separated event-type filter for significant_events, e.g. score_change,red_card,yellow_card.

max_ended_age_seconds
integer

Omit finished games whose ended_at is older than this many seconds.

Required range: x >= 0

Response

Successful response