Discover/FotMob API
live

FotMob APIfotmob.com

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

Endpoint health
verified 1h ago
get_league_stats
get_match_details
get_player_profile
get_match_lineup
get_cup_players
19/20 passing latest checkself-healing
Endpoints
20
Updated
4d ago

What is the FotMob API?

The FotMob API exposes 20 endpoints covering live match scores, league standings, player profiles, and advanced match analytics across hundreds of football competitions worldwide. Starting with get_leagues to retrieve league IDs, you can chain calls to get_match_details for lineups and events, get_match_xg for expected-goals breakdowns, and get_player_season_stats for per-competition aggregates — all returning structured JSON.

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 · 20 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

League and Match Coverage

get_leagues returns every supported competition grouped into popular leagues, country-specific leagues, and international groups — each with a numeric id, name, pageUrl, and ccode. Those IDs feed into get_league_details (standings with home/away/form/xG breakdowns, available seasons via allAvailableSeasons) and get_league_stats (top scorers, assists, clean sheets, and other statistical categories). get_matches_by_date accepts a date in YYYYMMDD format and returns every match for that day grouped by league, including live scores, status (started/finished/cancelled), and timing. A compact variant, get_compact_matches_by_date, returns the same day's matches under short keys (i, l, h, a, s) in under 12 KB, suited for high-frequency polling.

Match-Level Detail

get_match_details returns the full fact sheet for a started or finished match: header (teams, scores, goal/card events), content.matchFacts (stats, top players, momentum), content.lineup, and content.playerStats. get_match_lineup surfaces each player's formation position, per-match rating, goals, assists, shots, passes, duels, xG, xA, and heatmap coordinates alongside the bench. get_match_xg returns xG totals split by open play, set piece, non-penalty, and on-target for both halves and the full match. get_match_analytics combines all three in one call, adding a shotmap array where each shot carries x, y, xg, xgot, situation, shot_type, and minute.

Player Data

search_players resolves a name string to a numeric player_id. get_player_profile returns biographical fields (age, height, nationality, contract_end, market_value) and a stat_seasons list used to parameterise get_player_season_stats. That endpoint returns totals and per-90 values for goals, assists, xG, xA, chances created, dribbles, duels, tackles, and more, broken down by competition. get_player_match_stats delivers a game-by-game log of up to 60 recent appearances filterable by season and league_id. get_player_traits adds percentile-ranked trait comparisons against positional peers.

Bulk and Historical Data

get_league_players returns every squad member in a league season with biographical details and performance metrics. get_league_players_with_traits paginates that roster (up to 50 per page via limit/offset) with traits embedded on each player. get_historical_match_results returns full result records for a league season — scores, scorers, cards, substitutions, team stats, venue, and referee — filterable by team_id. get_full_team_stat retrieves the complete ranked team list for any single stat category (e.g. possession_percentage_team, big_chance_team) identified by stat_name; the response includes available_stat_names so you can enumerate all categories for a given league.

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
19/20 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 match dashboard that polls get_compact_matches_by_date for score updates and drills into get_match_details on user selection.
  • Aggregate xG data across a season by iterating get_historical_match_results and enriching each match with get_match_xg.
  • Generate a player scouting report combining get_player_profile, get_player_season_stats, and get_player_traits into a single view.
  • Track a team's league campaign by querying get_team_fixtures for the schedule and get_league_details for the live standings table.
  • Compare all teams in a league on a specific metric like corners_per_match using get_full_team_stat with the appropriate stat_name.
  • Compile a cup squad roster by running get_cup_players to aggregate appearances across all finished rounds of a knockout competition.
  • Power a fantasy football tool by pulling get_league_players rosters and get_player_match_stats game logs for rating and scoring trends.
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 public developer API?+
FotMob does not publish an official public developer API or developer portal with documented endpoints and issued API keys.
What does `get_match_details` return for a match that hasn't kicked off yet?+
The endpoint is designed for started or finished matches. Pre-kickoff matches may return partial data — general metadata (teams, UTC time, league) is typically present, but content.matchFacts, content.lineup, and content.playerStats will be empty or absent until the match begins.
How do I get all players in a league with their playing-style traits without fetching each player individually?+
get_league_players_with_traits returns a paginated roster (up to 50 players per page via the limit and offset params) with traits and positional profile already embedded on each player object. Use has_more and next_offset in the response to walk through all pages. You can also pass a team_id to restrict the roster to one club.
Does the API return betting odds or match predictions?+
No endpoint currently returns betting odds, bookmaker lines, or match predictions. The analytics coverage includes xG, shotmaps, and player performance metrics. You can fork this API on Parse and revise it to add an odds endpoint if you need that data.
How far back does historical match data go, and are all leagues covered equally?+
get_historical_match_results and get_league_details both expose an all_available_seasons (or allAvailableSeasons) array that shows exactly which seasons FotMob holds for a given league. Coverage depth varies by competition — major European leagues typically have several years of history, while smaller leagues may have fewer seasons available. Season strings not present in that array cannot be queried.
Page content last updated . Spec covers 20 endpoints from fotmob.com.
Related APIs in SportsSee all →
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.
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.
soccerstats.com API
Access comprehensive soccer statistics including live league tables, match details, team performance metrics, and form rankings across multiple football leagues. Search for specific teams and analyze their season statistics, head-to-head records, and competitive standings to stay informed on the latest soccer data.
footystats.org API
Get live football scores, team performance metrics, league standings, and head-to-head match statistics all in one place. Search teams and leagues to access detailed player stats, comprehensive analytics, and in-depth performance data across football competitions worldwide.
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.
transfermarkt.com.br API
Access comprehensive football data including club squads, player profiles, statistics, and agency information to research teams, analyze player performance, and find representation details. Get detailed club information, player page data, and search for agencies all in one place.
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.
teamrankings.com API
Access data from teamrankings.com.