Skip to main content

Base URL

Finding Player IDs: Use /api/search?q=haaland to find player IDs, or extract them from match lineups (/api/match/{id}/lineups) or team squads (/api/teams/{id}/players).

Player Profile

Player Details

Returns player profile: name, nationality, age, height, weight, position, current team, shirt number, preferred foot, and market value.
number
required
Numeric player ID (e.g., 934235 for Haaland). Discover via search, lineups, or squads.
Recorded 24 September 2026 from GET /v2/football/players/1048651 (lists trimmed to 2 items).

Player Image

Returns the player’s profile photo URL.
Recorded 24 September 2026 from GET /v2/football/players/1048651/image (lists trimmed to 2 items).

Characteristics

Returns the player’s standout attributes ranked against all other players, plus the position codes they’ve been classified as. Response shape:
Fields:
  • positive / negative — arrays of standout attributes (strengths and weaknesses).
  • type (number) — numeric attribute ID from the underlying data model. Stable across requests; treat as an opaque grouping key.
  • rank (number) — the player’s global rank among all players for that attribute. Lower number = stronger for positive, weaker for negative.
  • positions — position codes the player has been classified as (e.g. ST, RW, CM, GK).
Human-readable trait labels (e.g. “Strong in the air”) are not part of this payload. The endpoint returns numeric attribute IDs only — map them to labels on the client if you need display strings.
Recorded 24 September 2026 from GET /v2/football/players/1048651/characteristics (lists trimmed to 2 items).

Attribute Overviews

Returns radar chart data with two parallel series: the player’s scores and the peer-group average for the same position. Five axes (0–100): attacking, technical, tactical, defending, creativity. Response shape:
Fields:
  • playerAttributeOverviews — the player’s own scores. One entry per season, identified by yearShift.
  • averageAttributeOverviews — peer-group benchmark: the average across all players in the same position bucket for the same yearShift. Use as the comparison ring on a radar chart.
  • attacking, technical, tactical, defending, creativity — the five radar axes, scored 0–100. (There are no physical or mental axes.)
  • position — broad position bucket the averages are computed against: F (forward), M (midfielder), D (defender), G (goalkeeper).
  • yearShift — offset from the current season: 0 = current, 1 = one season ago, 2 = two seasons ago, and so on. Use for year-over-year trend charts.
  • id — internal record id; safe to ignore when charting.
For the classic player-vs-position radar, overlay playerAttributeOverviews where yearShift === 0 on top of averageAttributeOverviews where yearShift === 0.
Recorded 24 September 2026 from GET /v2/football/players/1048651/attribute-overviews (lists trimmed to 2 items).

Last Year Summary

Returns a summary of the player’s performance over the last calendar year: goals, assists, appearances, and ratings.
Recorded 24 September 2026 from GET /v2/football/players/1048651/last-year-summary (lists trimmed to 2 items).

Statistics

Overall Statistics

Returns career statistics across all competitions: goals, assists, appearances, minutes, cards, and ratings.
Recorded 24 September 2026 from GET /v2/football/players/1048651/statistics (lists trimmed to 2 items).

Statistics Seasons

Returns all seasons with available statistics. Use this to discover valid season IDs for season-specific endpoints.
Recorded 24 September 2026 from GET /v2/football/players/1048651/statistics/seasons (lists trimmed to 2 items).

Career Stats by Match Type

Returns career statistics filtered by match type.
string
Match type filter (e.g., domestic league, cup, international).
Recorded 24 September 2026 from GET /v2/football/players/1048651/statistics/match-type?type=overall (lists trimmed to 2 items).

Tournament Season Statistics (aggregated per player)

The canonical route for aggregated season statistics for one player. Returns data.statistics plus the player’s team for that season. Around 60 fields on a tier 1-3 season — verified 4 Sep 2026 for Joey Veerman (850816), Eredivisie 25/26 (tournament 37, season 77012):
Per-game figures are not returned: divide a total by appearances (from top-players) or by countRating.
string
default:"overall"
Only overall is currently served; home and away are advertised by player-statistics/types but return 404/503.
Depth follows competition tier. Regionalliga and below return only goals, penaltyGoals and ownGoals (verified for Regionalliga North 25/26, season 77796). See Coverage.
Discovering valid season IDs: use /api/players/{playerId}/statistics/seasons for one player, or /api/teams/{teamId}/player-statistics/seasons for a whole squad — both return data.uniqueTournamentSeasons. Competition leaders live on /api/tournament/{id}/season/{seasonId}/top-players, which returns 30-32 categories x top 50 in a single request.
Recorded 24 September 2026 from GET /v2/football/players/1048651/tournament/35/season/97464/statistics?type=overall (lists trimmed to 2 items).

National Team Statistics

Returns international career statistics: caps, goals, and assists for the national team.
Recorded 24 September 2026 from GET /v2/football/players/1048651/national-team-statistics (lists trimmed to 2 items).

Visual Data

Match Heatmap

Returns heatmap data showing the player’s movement and positioning during a specific match.
Recorded 24 September 2026 from GET /v2/football/players/1048651/match/16434052/heatmap (lists trimmed to 2 items).

Season Heatmap

Returns an aggregated heatmap across all matches in a tournament season.
string
default:"overall"
Filter: overall, home, or away.
Recorded 24 September 2026 from GET /v2/football/players/1048651/tournament/35/season/97464/heatmap?type=overall (lists trimmed to 2 items).

Season Ratings

Returns match-by-match player ratings throughout the season — useful for performance trend charts.
string
default:"overall"
Filter: overall, home, or away.
Recorded 24 September 2026 from GET /v2/football/players/1048651/tournament/35/season/97464/ratings?type=overall (lists trimmed to 2 items).

Near Events

Near Events

Returns the player’s previous and next match with player ratings. Useful for quick context on recent and upcoming fixtures.
Recorded 24 September 2026 from GET /v2/football/players/1048651/near-events (lists trimmed to 2 items).

Events

Last Events (Paginated)

Returns the player’s most recent matches with stats and ratings, paginated.
number
required
Page number (0-indexed). Start with 0 for the most recent.
Recorded 24 September 2026 from GET /v2/football/players/1048651/events/last/0 (lists trimmed to 2 items).

Season Summary

Tournament Season Summary

Returns a summary of the player’s performance in a specific tournament season: appearances, goals, assists, ratings, and key stats.
Recorded 24 September 2026 from GET /v2/football/players/1048651/tournament/35/season/97464/summary (lists trimmed to 2 items).

Transfer & Career

Transfer History

Returns complete transfer history: clubs, dates, fees, and transfer types (permanent, loan, free).
Recorded 24 September 2026 from GET /v2/football/players/1048651/transfer-history (lists trimmed to 2 items).

Unique Tournaments

Returns all competitions the player has participated in throughout their career.
Recorded 24 September 2026 from GET /v2/football/players/1048651/unique-tournaments (lists trimmed to 2 items).

Penalty History

Returns the player’s career penalty record: taken, scored, missed, and saved.
No example: this endpoint returned HTTP 404 for our Bundesliga sample on 24 September 2026. It only returns data when the entity has it (for example knockout draws, penalties or media), so handle an empty or 404 response.

Tournament Penalty History

Returns penalty record for a specific tournament season.
No example: this endpoint returned HTTP 404 for our Bundesliga sample on 24 September 2026. It only returns data when the entity has it (for example knockout draws, penalties or media), so handle an empty or 404 response.

Media

Media

Returns media content associated with the player (photos).
No example: this endpoint returned HTTP 404 for our Bundesliga sample on 24 September 2026. It only returns data when the entity has it (for example knockout draws, penalties or media), so handle an empty or 404 response.

Media Videos

Returns video highlights and clips featuring the player.
No example: this endpoint returned HTTP 404 for our Bundesliga sample on 24 September 2026. It only returns data when the entity has it (for example knockout draws, penalties or media), so handle an empty or 404 response.

Media Summary

Returns a media summary for the player (highlights, YouTube videos) localized by country.
string
default:"GB"
Country code for localized content (e.g., GB, US, DE).
No example: this endpoint returned HTTP 404 for our Bundesliga sample on 24 September 2026. It only returns data when the entity has it (for example knockout draws, penalties or media), so handle an empty or 404 response.

Fantasy

Fantasy Competitions

Returns fantasy competitions the player is registered in, along with the player’s fantasy ID.
Important: Fantasy IDs are NOT the same as player IDs. Use this endpoint to discover the fantasyId, then pass it to /api/fantasy/player/{fantasyId} endpoints. See Fantasy Endpoints.
Recorded 24 September 2026 from GET /v2/football/players/1048651/fantasy/competitions (lists trimmed to 2 items).

Example Requests


Historical Depth of Player Statistics

Player-level detail is not uniform across all seasons. Verified against the Premier League (uniqueTournament 17, 35 seasons available from 1992/93 onwards):
Preseason and exhibition fixtures are best-effort. Club Friendly Games and Community Shield matches involving top-tier clubs typically return full lineups with detailed player statistics, but xG is not populated for those matches and lower-profile exhibition fixtures may return no player statistics at all.

Example responses

Real responses recorded on 24 September 2026 from the Bundesliga (tournament 35, season 97464), match SC Paderborn 07 3-1 TSG Hoffenheim (16434052). Long lists are shortened to the first items; field names and structure are unchanged.
Last modified on September 24, 2026