transfermarkt.it APItransfermarkt.it ↗
Access Transfermarkt team market values, squad rosters, and detailed player career statistics by season and competition via a clean JSON API.
curl -X GET 'https://api.parse.bot/scraper/a2a79966-9580-40ab-9d74-b3a9c82996ee/get_team_market_values?end_year=2024&start_year=2024' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve market values for all teams in a specified league across a range of seasons. Returns team names, IDs, and market values as formatted on Transfermarkt (e.g., '741,85 mln €'). Iterates through each season year in the provided range.
| Param | Type | Description |
|---|---|---|
| end_year | integer | Ending season year (e.g., 2025 for 2025/26) |
| start_year | integer | Starting season year (e.g., 1994 for 1994/95) |
{
"type": "object",
"fields": {
"data": "array of objects containing season, team_id, team_name, and market_value for each team in each season"
},
"sample": {
"data": [
{
"season": "2024/2025",
"team_id": "46",
"team_name": "Inter",
"market_value": "741,85 mln €"
},
{
"season": "2024/2025",
"team_id": "506",
"team_name": "Juventus FC",
"market_value": "628,73 mln €"
}
],
"status": "success"
}
}About the transfermarkt.it API
This API exposes 3 endpoints covering Transfermarkt data: historical team market valuations across multiple league seasons, full squad rosters with player IDs and slugs, and per-season career statistics for individual players. Use get_team_market_values to pull formatted valuations like '741,85 mln €' for every club in a league across a configurable year range, or get_player_career_stats to retrieve goals, assists, cards, and minutes broken down by season and competition.
Team Market Values
The get_team_market_values endpoint accepts a start_year and end_year (e.g., 1994 to 2025) and returns an array of objects, each containing season, team_id, team_name, and market_value. Market values are returned in Transfermarkt's formatted string notation (e.g., '741,85 mln €'). This makes it straightforward to build time-series data on how squad valuations have shifted across decades within a specific league.
Squad Rosters and Player Discovery
The get_serie_a_players endpoint iterates through team pages for a given season and returns every player found, with fields including player_id, player_slug, name, profile_url, and team_url. The max_teams parameter lets you cap how many teams are processed, which is useful for testing or partial data pulls. This endpoint is the primary way to discover the player_id and player_slug values needed by the career stats endpoint.
Player Career Statistics
The get_player_career_stats endpoint takes a required player_id (a numeric string) and an optional player_slug for URL construction. It returns a career_stats array where each entry aggregates performance data by season, competition, and club — covering matches played, goals, assists, yellow cards, red cards, and minutes played. This granularity lets you compare a player's output across different competitions or clubs within the same season.
- Track how a Serie A club's squad market value has changed from season to season over a decade
- Build a transfer valuation model by correlating team market values with league finishing positions
- Enumerate all player IDs in a league for a given season using get_serie_a_players before bulk-fetching stats
- Pull a player's goals and assists across every competition and club in their career via get_player_career_stats
- Compare minutes played across seasons to analyze injury impact or squad rotation for a specific player
- Identify players who accumulated significant card tallies across multiple competitions in a single season
- Seed a database with Transfermarkt player slugs and IDs for ongoing stat monitoring
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Transfermarkt have an official developer API?+
What does the get_player_career_stats endpoint actually return per entry?+
career_stats array represents one season/competition/club combination and includes matches played, goals, assists, yellow cards, red cards, and minutes played. If a player appeared for two clubs in the same competition in one season, those appear as separate entries.Is the get_serie_a_players endpoint limited to Serie A?+
season parameter and iterates team rosters, so coverage depends on which league's teams are configured. For large leagues the processing can be slow; use max_teams to limit scope during development.Does this API cover player market values for individual players, not just team totals?+
get_team_market_values and career performance stats via get_player_career_stats, but individual player valuation histories are not returned. You can fork this API on Parse and revise it to add an endpoint that targets Transfermarkt's individual player market value pages.Are leagues other than Serie A supported for team market values?+
get_team_market_values endpoint accepts a league parameter implicitly through its configuration, but the current spec targets one league at a time. Coverage of other leagues (Bundesliga, Premier League, La Liga) is not explicitly confirmed in the endpoint inputs. You can fork this API on Parse and revise it to parameterize league selection across multiple competitions.