Flashscore API endpoint
Returns a team-sport player's club history, newest first, with date, type such as Loan or Free agent, fee text and the clubs on each side. A player with no recorded transfers returns an empty list. Players of individual sports have no transfers page and return not found.
/flashscore/player-transfersQuery parameters:
id (required): eight-character Flashscore player id, the last path segment of a player URL (/player/<slug>/<id>/). Find ids with /api/v1/flashscore/search or the player_id fields of /api/v1/flashscore/team-squad. A team id returns not found.slug (optional): the player slug from the URL. It is not needed to find the page; when supplied it must match the id or the request is rejected.Notable response behavior: returns the club history listed on the player's transfers page, newest first: date (YYYY-MM-DD), the provider's type label (for example Transfer, Loan, Return from loan, Free agent, or empty), fee text when shown (for example €60.0m), and the from and to clubs with team ids and paths (null when a side shows no club). A player with no recorded transfers returns transfer_count 0 and an empty list, identified by the site's explicit empty-state notice. Players of individual sports have no transfers page and return not found. For one team's whole transfer window use /api/v1/flashscore/team-transfers.
| Field | Filled in, of 4 checked | Values in the sample |
|---|---|---|
| date | 4 | 2017-02-01 to 2022-07-01 |
| type | 4 | Transfer in all 4 |
| fee | 4 | “€60.0m” and 3 other values |
| from | 4 | |
| to | 4 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | string | Yes | Eight-character Flashscore player id | UmV9iQmE | |
| slug | string | No | Optional player slug; must match the id when supplied | haaland-erling | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/flashscore/player-transfers?id=UmV9iQmE" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"source_url": "https://global.flashscore.ninja/2/x/feed/pl_1_UmV9iQmE_0",
"page_url": "https://www.flashscore.com/player/haaland-erling/UmV9iQmE/transfers/",
"player": {
"id": "UmV9iQmE",
"name": "Haaland E.",
"slug": "haaland-erling"
},
"transfer_count": 4,
"transfers": [
{
"date": "2022-07-01",
"type": "Transfer",
"fee": "€60.0m",
"from": {
"id": "nP1i5US1",
"name": "Dortmund",
"slug": "dortmund",
"path": "/team/dortmund/nP1i5US1/"
},
"to": {
"id": "Wtn9Stg0",
"name": "Manchester City",
"slug": "manchester-city",
"path": "/team/manchester-city/Wtn9Stg0/"
}
}
]
}
}Request schema
No body schema
Response schema
Inline response schema
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | flashscore.PlayerTransfersResponse | No | ||||
| data.page_url | string | No | ||||
| data.player | flashscore.PlayerProfile | No | PlayerProfile record, 19 fields: birth_date, country, country_id, full_name, id, name, path, photo_url, ranking, slug, sport, sport_id and 2 more. Described under Flashscore player profile API. | |||
| data.source_url | string | No | ||||
| data.transfer_count | integer | No | ||||
| data.transfers | array | No | ||||
| data.transfers[].date | string | No | ||||
| data.transfers[].fee | string | No | ||||
| data.transfers[].from | object | No | From and To are null when the page shows no club on that side. | |||
| data.transfers[].from.id | string | No | ||||
| data.transfers[].from.logo_url | string | No | ||||
| data.transfers[].from.name | string | No | ||||
| data.transfers[].from.path | string | No | ||||
| data.transfers[].from.slug | string | No | ||||
| data.transfers[].to | flashscore.TransferTeam | No | TransferTeam record, 5 fields: id, logo_url, name, path, slug. Described under Flashscore team transfers API. | |||
| data.transfers[].type | string | No | ||||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/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/flashscore/player-transfers?id=UmV9iQmE" \
-H "x-api-key: $CRAWLORA_API_KEY"