Discover/FotMob API
live

FotMob APIfotmob.com ↗

Access FotMob football data via 23 endpoints: live scores, league standings, match lineups, xG analytics, player profiles, and season stats across hundreds of competitions.

Endpoint health
verified 1h ago
get_match_lineup
get_league_details
get_matches_by_date
get_team_fixtures
get_league_players
23/23 passing latest checkself-healing
Endpoints
23
Updated
12d ago

What is the FotMob API?

The FotMob API exposes 23 endpoints covering live match scores, league standings, player profiles, and advanced match analytics for football competitions worldwide. get_match_analytics returns per-player progressive passing, defensive contributions, and a full shotmap with xG and xGOT values in a single call. Use get_leagues to enumerate supported competitions and resolve league IDs needed across other endpoints, from get_league_details to get_historical_match_results.

This call costs3 credits / call— charged only on success
Try it

No input parameters required.

→ api.parse.bot/scraper/645b8e03-271d-4c85-97e7-35d5733a2d78/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/645b8e03-271d-4c85-97e7-35d5733a2d78/get_leagues' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 23 totalmissing one? ·

List all supported leagues with their IDs and metadata. Returns popular leagues, country-specific leagues, and international league groups. Use league IDs from this endpoint as input to get_league_details and get_league_stats.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "popular": "array of popular league objects with id, name, pageUrl, and ccode",
    "countries": "array of country objects each containing a leagues array",
    "international": "array of international league group objects each containing a leagues array"
  },
  "sample": {
    "data": {
      "popular": [
        {
          "id": 77,
          "name": "World Cup",
          "ccode": "INT",
          "pageUrl": "/leagues/77/overview/world-cup",
          "localizedName": "FIFA World Cup"
        },
        {
          "id": 47,
          "name": "Premier League",
          "ccode": "ENG",
          "pageUrl": "/leagues/47/overview/premier-league",
          "localizedName": "Premier League"
        }
      ],
      "countries": [
        {
          "name": "Albania",
          "ccode": "ALB",
          "leagues": [
            {
              "id": 260,
              "name": "Kategoria Superiore",
              "ccode": "ALB",
              "pageUrl": "/leagues/260/overview/kategoria-superiore",
              "localizedName": "Kategoria Superiore"
            }
          ],
          "localizedName": "Albania"
        }
      ],
      "international": [
        {
          "name": "International",
          "ccode": "INT",
          "leagues": [
            {
              "id": 42,
              "name": "Champions League",
              "ccode": "INT",
              "pageUrl": "/leagues/42/overview/champions-league",
              "localizedName": "Champions League"
            }
          ],
          "localizedName": "International"
        }
      ]
    },
    "status": "success"
  }
}

About the FotMob API

Match Data

get_matches_by_date returns all FotMob matches for a given date (YYYYMMDD) grouped by league, including home/away teams, live scores, and status flags (started, finished, cancelled). For bandwidth-constrained clients, get_compact_matches_by_date returns the same date's fixtures in a sub-12 KB payload using short field keys (e.g. i for match ID, h for home team). Once you have a match_id, get_match_details provides the full picture: lineups, team stats, events (goals, cards, substitutions), momentum data, and head-to-head context. Matches that have not yet kicked off will not return full detail content.

League & Season Coverage

get_league_details accepts a league_id and an optional season parameter (YYYY/YYYY format) and returns standings broken down into all/home/away/form/xG tables alongside available fixtures and transfer data. get_league_stats returns the same standings enriched with top-scorer, assist, and clean-sheet leaderboards. get_historical_match_results retrieves finished match results for a league season — including HT/FT/ET scores, penalty shootout details, team stats like possession and xG, referee, and venue — with an optional team_id filter to narrow to one club's matches.

Player Data

search_players resolves a name string to a FotMob player_id. From there, get_player_profile returns biographical details (age, height, nationality, contract end date, market value), current club, and a list of stat_seasons entries. Pass those to get_player_season_stats for per-competition aggregated totals and per-90 values covering goals, assists, xG, xA, chances created, dribbles, duels, and more. get_player_match_stats returns a game-by-game log of up to 60 recent appearances, filterable by season date range and league_id. get_player_traits returns percentile-based trait comparisons against positional peers and the player's positional profile.

Advanced Analytics

get_match_analytics bundles three data layers in one call: team xG split by half and open-play/set-play/non-penalty/xGOT breakdown; per-player stats including touches in opposition box, recoveries, and pass counts; and a shotmap array with x/y coordinates, xG, xGOT, situation (open play, corner, free kick), and shot type for every attempt. get_league_players_with_traits paginates through a league season's full squad roster — including playing-style trait percentiles — using offset and limit parameters, with optional filtering by team_id or nationality.

Reliability & maintenanceVerified

The FotMob API is a managed, monitored endpoint for fotmob.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when fotmob.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official fotmob.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1h ago
Latest check
23/23 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a live score dashboard consuming get_matches_by_date and refreshing match status and scorelines.
  • Generate league standing tables with home/away splits and xG columns from get_league_details.
  • Power a player comparison tool using per-90 stats from get_player_season_stats across multiple competitions.
  • Visualize shotmaps with xG values per attempt using the shotmap array returned by get_match_analytics.
  • Track a team's full fixture list and results across a season with get_team_fixtures and get_historical_match_results.
  • Filter a league's entire squad by nationality and retrieve playing-style trait percentiles via get_league_players_with_traits.
  • Build a cup competition squad tracker by aggregating player appearances from recent matches using get_cup_players.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does FotMob have an official developer API?+
FotMob does not publish an official public developer API. There is no documented API portal or developer program available at fotmob.com as of mid-2025.
What does `get_match_xg` return, and how does it differ from the xG data in `get_match_analytics`?+
get_match_xg returns team-level xG figures only — total, open-play, set-play, non-penalty, and xG on target for both teams — split across full match, first half, and second half. get_match_analytics includes that same team xG breakdown plus a per-player stat layer and a full shotmap with individual shot coordinates and xGOT. Use get_match_xg when you only need the team aggregates and want to minimize response size.
Does `get_player_match_stats` cover a player's full career history?+
No. The endpoint returns up to 60 of the player's most recent matches from FotMob's recent-matches data. Coverage does not extend to full career histories. The season filter narrows results to matches within a given season's date range, and league_id filters to a single competition, but older seasons beyond that 60-match window are not accessible through this endpoint. You can fork this API on Parse and revise it to add a separate endpoint that pages through historical season stats via get_player_season_stats for deeper career coverage.
Are odds, betting lines, or fantasy point projections available through any endpoint?+
Not currently. The API covers match stats, lineups, xG, standings, player profiles, and trait data — no odds or fantasy projections are exposed. You can fork this API on Parse and revise it to add an endpoint pulling in odds data from a dedicated betting source.
What are the known limitations of `get_cup_players`?+
get_cup_players aggregates lineups from at most 25 of the most recent finished matches in the cup, prioritizing later rounds. Earlier-round matches beyond that cap are not included, so player appearance counts may be understated for players who only featured early in the competition. The total_matches_processed field in the response tells you exactly how many matches were included.
Page content last updated . Spec covers 23 endpoints from fotmob.com.
Related APIs in SportsSee all →
statshub.com API
Access detailed football match statistics including xG, xGA, and possession metrics across multiple leagues, plus retrieve fixtures by date and current league standings. Get comprehensive season-level and match-level performance data to analyze team and player statistics in depth.
whoscored.com API
Search for players and teams, then dive deep into their performance metrics, match statistics, and detailed passing data to analyze football games and player abilities. Get comprehensive insights on team performance, individual player stats, and play-by-play event information to power your football analysis and decision-making.
stats.ncaa.org API
Access comprehensive NCAA sports statistics to search for players, teams, and coaches, view game box scores and play-by-play data, and review team schedules, rosters, and rankings. Get detailed head coach records and scoreboard information to analyze performance across college sports.
flashscore.com API
Search teams and competitions, pull daily fixtures and live scores, and retrieve match details including events, statistics, and league standings from FlashScore.
atptour.com API
Access data from atptour.com.
sofascore.com API
Access head-to-head statistics and streaks for sporting events across a wide range of sports. Retrieve daily scheduled events, detailed H2H metrics (win rates, unbeaten records, draw rates, manager duels), and event fun facts. Filter and rank H2H streak metrics by configurable percentage thresholds to identify historically consistent patterns between any two teams.
fmplayer.net API
Search and filter Football Manager players across FM 18-26 databases to discover detailed player profiles including abilities, attributes, contract details, best roles, and comparable players. Find the perfect talent for your team by accessing comprehensive player information and performance data all in one place.
snai.it API
Get real-time Serie A match information, odds, and top betting opportunities directly from SNAI.it, plus discover live matches and football leagues to inform your betting decisions. Access match details, current odds, and curated top bets all in one place to stay updated on Italian football betting options.