Transfermarkt player performance

GET https://api.api.sh/transfermarkt/v1/player-performance
1 credit / call sports try it in the playground →

A player's game-by-game record summed per season and competition: squad calls, appearances, starts, minutes, goals, assists, own goals, penalty goals, yellow and red cards. With games=true every game too (date, competition, matchday, opponent, venue, result, participation, minutes, goals, assists and the full statistics block).

Every response includes credits_used: the credits this call cost.

Parameters

nametypedescription
player_idrequired integer Transfermarkt player id (from /transfermarkt/v1/search or a profile URL; 433177 = Bukayo Saka). Example: 433177
season integer Season start year (2023 = 23/24). Example: 2023
competition_id string Only this competition (GB1 Premier League, ES1 LaLiga, CL Champions League ...). Example: GB1
games false | true true adds the game-by-game list. Default: false

Every endpoint also takes fresh, raw, fields (see lean responses and caching).

Example

curl "https://api.api.sh/transfermarkt/v1/player-performance?player_id=433177" \
  -H "x-api-key: $APISH_KEY"

Response

A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).

The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.