OrbTop

FIFA World Cup 2026 Match Lineups, Goals & Events Scraper

SPORTSAI

FIFA World Cup 2026 Match Lineups, Goals & Events Scraper

Scrapes per-match lineups, tactical formations, goal/card events, and referee data for all 104 FIFA World Cup 2026 matches using the official FIFA live API (api.fifa.com/api/v3).

What this actor does

For each World Cup 2026 match, this actor:

  1. Fetches the full fixture list from FIFA's calendar API (104 matches total)
  2. Filters matches by status (played, upcoming, or all)
  3. For each match, retrieves the full lineup and events from the live endpoint
  4. Returns one record per player-match with match metadata, tactical data, goals, and cards

Output

Each record represents one player in one match. Fields include:

Field Description
id_match FIFA match ID
id_stage FIFA stage ID
matchday Match day number
stage_name Tournament stage (e.g. "First Stage", "Round of 16")
date_utc Match date/time in UTC
home_team / away_team Team names
home_score / away_score Final score
attendance Official attendance figure
stadium_name Stadium name
tactics_home / tactics_away Tactical formation strings (e.g. "4-3-3")
player_id FIFA player ID
player_name Player full name
shirt_number Player shirt number
position_code Position (0=GK, 1=DEF, 2=MID, 3=FWD)
is_captain Whether the player is the captain
lineup_x / lineup_y Tactical X/Y coordinates on pitch (when available)
goal_minute Minute of goal scored (null if no goal)
goal_period Period of goal (null if no goal)
assist_player_id FIFA ID of assist player (null if no assist)
card_type Card received: Yellow, Red, or Yellow-Red (null if none)
referee_name Main referee name
source Source API endpoint URL

Input

Parameter Type Default Description
maxItems integer 10 Maximum number of player-match records to return (0 = no limit)
matchStatus string played Filter: played (completed matches only), upcoming (unplayed), all

Example inputs

Get lineup data for all played matches:

{
  "maxItems": 0,
  "matchStatus": "played"
}

Quick sample of 50 records:

{
  "maxItems": 50,
  "matchStatus": "played"
}

All 104 matches (including upcoming):

{
  "maxItems": 0,
  "matchStatus": "all"
}

Data source

This actor uses FIFA's official api.fifa.com/api/v3 endpoints:

  • /calendar/matches — fixture discovery (competition 17, season 285023)
  • /live/football/17/285023/{idStage}/{idMatch} — per-match lineups and events

No authentication required. The same API powers the official fifa.com website.

Use cases

  • Tactical analysis: LineupX/Y coordinates and formation strings for positional analysis
  • Sports media: Per-match lineup and goal data for automated match reports
  • AI content generation: Structured "who scored what" data for WC 2026 summaries
  • Betting models: Real lineup context (who started, who scored, formations) for each match
  • Data journalism: Full tournament-level dataset linking players, goals, and match outcomes

Notes

  • The actor fetches from played matches by default (matchStatus: played). As the tournament progresses, more matches become available.
  • lineup_x / lineup_y tactical coordinates may be null — FIFA populates them for selected matches only.
  • Goal records capture only the first goal per player per match. Players with multiple goals will have only the first goal annotated.
  • The dataset covers the full 26-player squad per team (11 starters + 15 substitutes), not just starters.