SofaScore API endpoint
Returns one SofaScore player by numeric `id`: name, short name, position, jersey number, date of birth, height, preferred foot, country, market value and currency, and the current team. `deceased` is `true` for historical players. An unknown or malformed id returns an upstream error.
/sofascore/playerQuery parameters:
id: required. Numeric SofaScore player id.Notable response behavior:
deceased is true for historical players SofaScore tracks after death.| Field | In the sample | Value in the sample |
|---|---|---|
| player.id | Has a value | |
| player.name | Has a value | “Ferran Torres” |
| player.short_name | Has a value | “F. Torres” |
| player.slug | Has a value | |
| player.position | Has a value | “F” |
| player.jersey_number | Has a value | 9 |
| player.date_of_birth | Has a value | 2000-02-29 |
| player.height | Has a value | |
| player.country | Has a value | “Spain” |
| player.preferred_foot | Has a value | “Right” |
| player.market_value | Has a value | 59,000,000 |
| player.market_value_currency | Has a value | “EUR” |
| player.team | Has a value |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | string | Yes | Numeric SofaScore player id | 855833 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/sofascore/player?id=855833" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"source_url": "https://api.sofascore.com/api/v1/player/855833",
"fetched_at": "2026-07-08T16:45:00Z",
"player": {
"id": 855833,
"name": "Ferran Torres",
"short_name": "F. Torres",
"slug": "ferran-torres",
"position": "F",
"jersey_number": "7",
"date_of_birth": "2000-02-29T00:00:00+00:00",
"height": 183,
"country": "Spain",
"preferred_foot": "Right",
"market_value": 54000000,
"market_value_currency": "EUR",
"team": {
"id": 2817,
"name": "FC Barcelona",
"short_name": "Barcelona",
"slug": "barcelona",
"country": "Spain"
}
}
}
}Request schema
No body schema
Response schema
#/definitions/sofascore.playerResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | sofascore.PlayerResponse | No | ||||
| data.fetched_at | string | No | Time the data was fetched, in UTC (RFC 3339). | |||
| data.player | object | No | The player's profile. | |||
| data.player.country | string | No | Player's country. | |||
| data.player.date_of_birth | string | No | Date of birth (RFC 3339). | |||
| data.player.deceased | boolean | No | True when the player has died. | |||
| data.player.height | integer | No | Height in centimetres. | |||
| data.player.id | integer | No | SofaScore player id. Use it with the player endpoints. | |||
| data.player.jersey_number | string | No | Shirt number. | |||
| data.player.market_value | integer | No | SofaScore's estimated market value, in units of `market_value_currency`. Omitted when unavailable. | |||
| data.player.market_value_currency | string | No | Currency of `market_value`, for example EUR. | |||
| data.player.name | string | No | Player's full name. | |||
| data.player.position | string | No | Position code, for example G, D, M or F. | |||
| data.player.preferred_foot | string | No | Preferred foot, for example "Right". | |||
| data.player.short_name | string | No | Shortened name, for example "E. Haaland". | |||
| data.player.slug | string | No | URL slug of the player on SofaScore. | |||
| data.player.team | object | No | The player's current team. | |||
| data.player.team.country | string | No | Spain | Country the team belongs to. | ||
| data.player.team.id | integer | No | 2817 | SofaScore team id. Use it with the team endpoints. | ||
| data.player.team.name | string | No | FC Barcelona | Full team name. | ||
| data.player.team.national | boolean | No | True for a national team. | |||
| data.player.team.short_name | string | No | Barcelona | Shortened team name. | ||
| data.player.team.slug | string | No | barcelona | URL slug of the team on SofaScore. | ||
| data.source_url | string | No | SofaScore URL the data was read from. | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/sofascore/player?id=855833" \
-H "x-api-key: $CRAWLORA_API_KEY"