Football (soccer) results and fixtures, goals and cards with the minute and players, player match stats, league tables, clubs and squads for the Premier League, LaLiga, Bundesliga, Serie A, Ligue 1, Champions League, Europa League, EFL Championship, Eredivisie, Primeira Liga, MLS and Liga MX. Export to JSON, CSV or Excel, or schedule it to get each result once.
Built for football analysts and bettors, fantasy managers, media and newsletters, apps and Discord or Telegram bots, and AI agents.
How to use it
This weekend's results in the top five leagues:
{ "leagues": ["premier-league", "la-liga", "bundesliga", "serie-a", "ligue-1"], "daysBack": 3, "gameStatus": "final" }Champions League fixtures this week:
{ "leagues": ["champions-league"], "daysBack": 0, "daysAhead": 7, "gameStatus": "scheduled" }Premier League table:
{ "leagues": ["premier-league"], "dataType": "standings" }Opening and current betting lines for the weekend:
{ "leagues": ["premier-league", "la-liga"], "dataType": "odds", "daysBack": 0, "daysAhead": 3 }Options
| Option | What it does |
|---|---|
Competitions (leagues) | e.g. premier-league, la-liga, bundesliga, serie-a, ligue-1, champions-league, mls |
Data (dataType) | games, boxScores, odds, standings, teams or rosters |
Days back / Days ahead (daysBack, daysAhead) | Rolling window: daysBack: 1 = yesterday and today; daysAhead: 7 = next week's fixtures |
From date / To date (dateFrom, dateTo) | Exact range (YYYY-MM-DD), up to about one season per run |
Game status (gameStatus) | any, final, live or scheduled |
Teams (teams) | Club names or abbreviations, e.g. Arsenal, Real Madrid, BAY. Empty = all |
Season (season) | Standings for a past season, e.g. 2025 (the 2025-26 season); empty = current |
Max results (maxItems) | Most rows per run |
Only new (onlyNew, monitorName) | With a schedule, each run returns only rows earlier runs did not deliver; a game comes again when its status changes |
Pricing
$3 per 1,000 matches, odds rows, table rows, clubs or players, and $1 per 1,000 player match lines, plus a small start fee per run. On the Apify free plan a run returns up to 100 rows.
Good to know
- Only new + a daily schedule returns each match again only when its status changes, so results arrive once.
- Need US sports, F1, tennis or golf? Sports Data (tacps126/sports-data) covers 24 leagues with the same fields.
- Questions: tacps126@gmail.com.