// Players
Player details
Fetch one player's profile: name, position, date of birth, age, nationality, height, and the club they play for now with their shirt number. Use it to fill a player card or profile page.
GET
https://api.soccer-data.co/v1/players/{player_id}
- This is profile data only. For goals, assists, minutes and other numbers, use the player season stats endpoint.
- An unknown player id returns 404 NOT_FOUND.
Path parameters
player_idstringrequired
The player's id, like player_…. Find one with the ID guide.
Response fields
data.idstring
The player's id.
data.namestring
The name the player is usually shown under.
data.first_namestring
First name.
data.last_namestring
Last name.
data.positionstring
G, D, M or F. An empty string when the position isn't known.
data.date_of_birthstring|null
Date of birth as YYYY-MM-DD. Null when unknown.
data.ageinteger|null
Age in years. Null when the date of birth is unknown.
data.nationalitystring
Country the player represents, by name.
data.height_cminteger|null
Height in centimetres. Null when unknown.
data.current_teamobject
The club the player is at now.
data.current_team.idstring
The club's team id.
data.current_team.namestring
The club's name.
data.current_team.jersey_numberinteger|null
Shirt number at that club. Null when unknown.
curl "https://api.soccer-data.co/v1/players/player_ul3vc6om97u5" \ -H "X-Api-Key: $SOCCER_DATA_KEY"
const res = await fetch("https://api.soccer-data.co/v1/players/player_ul3vc6om97u5", {
headers: { "X-Api-Key": process.env.SOCCER_DATA_KEY },
});
const { data } = await res.json();
import os, requests
res = requests.get(
"https://api.soccer-data.co/v1/players/player_ul3vc6om97u5",
headers={"X-Api-Key": os.environ["SOCCER_DATA_KEY"]},
)
data = res.json()["data"]
$data = Http::withHeaders(['X-Api-Key' => env('SOCCER_DATA_KEY')])
->get('https://api.soccer-data.co/v1/players/player_ul3vc6om97u5')
->json('data');
200 · Example response
{
"data": {
"id": "player_ul3vc6om97u5",
"name": "Bukayo Saka",
"first_name": "Bukayo",
"last_name": "Saka",
"position": "F",
"date_of_birth": "2001-09-05",
"age": 25,
"nationality": "England",
"height_cm": 178,
"current_team": {
"id": "team_f0ibhxdw7hs5",
"name": "Arsenal",
"jersey_number": 7
}
}
}
### GET /players/{player_id}
Player details
Fetch one player's profile: name, position, date of birth, age, nationality, height, and the club they play for now with their shirt number. Use it to fill a player card or profile page.
- This is profile data only. For goals, assists, minutes and other numbers, use the player season stats endpoint.
- An unknown player id returns 404 NOT_FOUND.
Response fields:
- `data.id` (string): The player's id.
- `data.name` (string): The name the player is usually shown under.
- `data.first_name` (string): First name.
- `data.last_name` (string): Last name.
- `data.position` (string): G, D, M or F. An empty string when the position isn't known.
- `data.date_of_birth` (string|null): Date of birth as YYYY-MM-DD. Null when unknown.
- `data.age` (integer|null): Age in years. Null when the date of birth is unknown.
- `data.nationality` (string): Country the player represents, by name.
- `data.height_cm` (integer|null): Height in centimetres. Null when unknown.
- `data.current_team` (object): The club the player is at now.
- `data.current_team.id` (string): The club's team id.
- `data.current_team.name` (string): The club's name.
- `data.current_team.jersey_number` (integer|null): Shirt number at that club. Null when unknown.
Example: curl "https://api.soccer-data.co/v1/players/player_ul3vc6om97u5" -H "X-Api-Key: $SOCCER_DATA_KEY"