transfermarkt.de APItransfermarkt.de ↗
Access Transfermarkt data via API: player profiles, market values, transfer histories, club squads, and competition penalty stats across 6 endpoints.
curl -X GET 'https://api.parse.bot/scraper/f9c987bb-681c-471d-a7f7-342ac6c0016b/search?query=Bayern' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for players and clubs by name on Transfermarkt. Returns matching players and clubs with their IDs.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword (player name or club name) |
{
"type": "object",
"fields": {
"clubs": "array of objects with name and id",
"players": "array of objects with name and id"
},
"sample": {
"data": {
"clubs": [
{
"id": "27",
"name": "FC Bayern München"
}
],
"players": [
{
"id": "28003",
"name": "Lionel Messi"
}
]
},
"status": "success"
}
}About the transfermarkt.de API
The Transfermarkt API covers 6 endpoints for retrieving football player profiles, club squads, transfer histories, and competition statistics from transfermarkt.de. The get_player_profile endpoint returns structured data including market value, physical attributes, contract details, and club assignments for any player by ID. The search endpoint resolves player and club names to their Transfermarkt IDs, which are required inputs across other endpoints.
Player Data
The get_player_profile endpoint accepts a player_id string (e.g. '28003' for Messi) and returns a single-element data array containing id, name, lifeDates, attributes, marketValueDetails, and clubAssignments. The get_player_transfers endpoint uses the same player_id parameter and returns a history object split into terminated and pending arrays, along with clubIds, and mostRecentTransfer — covering the full career transfer timeline including fees and dates. The get_most_viewed_players endpoint requires no inputs and returns the top 10 currently trending players with the same profile shape.
Club and Squad Data
The get_club_squad endpoint takes a required club_id and an optional season year (e.g. '2024' for the 2024/25 season). It returns a players array where each object includes id, name, number, position, age, nationality, and market_value. Omitting the season parameter returns the current active squad. Club IDs can be resolved using the search endpoint by querying the club name.
Competition Statistics
The get_competition_penalty_takers endpoint accepts a competition_id string — for example 'GB1' for the Premier League, 'L1' for the Bundesliga, or 'IT1' for Serie A — and returns a penalty_takers array. Each entry includes player_name, player_id, position, club_name, penalties, scored, missed, and success_rate, grouped by club.
Finding IDs
Most endpoints require a Transfermarkt player_id or club_id. Use the search endpoint with a query string to get matching players and clubs arrays, each containing name and id fields. These IDs map directly to the parameters accepted by profile, squad, and transfer endpoints.
- Build a player market value tracker using
get_player_profileandmarketValueDetailsover time - Generate transfer history timelines for players using the
historyobject fromget_player_transfers - Populate a squad viewer for any club and season using
get_club_squadwithclub_idandseason - Rank players by penalty conversion rate across a league using
get_competition_penalty_takers - Resolve player or club names to Transfermarkt IDs programmatically via the
searchendpoint - Track trending players in the football community using
get_most_viewed_playerswith no required inputs - Compare squad nationalities and positions across seasons using
nationalityandpositionfields in squad data
| 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 `get_player_transfers` return, and does it include loan moves?+
history object with terminated and pending arrays, each transfer including season, date, source club, destination club, and fee. The response also surfaces mostRecentTransfer and a clubIds list. Loan moves that appear on Transfermarkt are included within the same history arrays — they are not separated into a distinct category in the current response shape.Does the API cover player statistics like goals, assists, or appearances?+
Which competitions are supported by `get_competition_penalty_takers`?+
competition_id string. Documented examples include 'GB1' for the Premier League, 'L1' for the Bundesliga, and 'IT1' for Serie A. Other leagues available on Transfermarkt should work with their corresponding IDs, but coverage depends on whether Transfermarkt tracks penalty data for that competition.Can I retrieve historical squad data for past seasons?+
get_club_squad endpoint accepts an optional season parameter as a start year string (e.g. '2020' for the 2020/21 season). Omitting it returns the current season's squad. Coverage depends on how far back Transfermarkt maintains squad records for a given club.