FUSSBALL.DE API endpoint
Returns a registered player's matches for one season and team: date, teams, result and per match the goals, the minute they were substituted in or out, and minutes played. Also lists the player's teams and competitions for the season so another team can be selected with `team_id`. Basic profiles without registration have no match data.
/fussballde/player-matchesplayer_id (string, required): Player id of a full profile, see fussballde-player.season (string, optional): Four-digit season code, default current season.team_id (string, optional): Team id from the teams list of a previous response; default the player's main team.Standard envelope; data holds the result described above. Dates are ISO YYYY-MM-DD. minutes, subbed_in_minute and subbed_out_minute are omitted when the site shows a dash. teams and competitions list the options for the selected season. Errors: 400 invalid parameter, 404 unknown id, 503 upstream failure.
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| player_id | string | Yes | Player id of a full profile, see fussballde-player | 01MH0AKR7C000007VV0AG13EVSFDFGE6 | |
| season | string | No | Four-digit season code, default current season | 2627 | |
| team_id | string | No | Team id from the teams list of a previous response; default the player's main team | 030POM2JO0000000VS5489BSVSO3A7B3 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/fussballde/player-matches?player_id=01MH0AKR7C000007VV0AG13EVSFDFGE6" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"appearances": [
{
"match": {
"away": {
"club_id": "00ES8GN8I400001CVV0AG08LVUPGND5I",
"logo_url": "https://www.fussball.de/export.media/-/action/getLogo/format/0/id/00ES8GN8I400001CVV0AG08LVUPGND5I/verband/0123456789ABCDEF0123456700004010",
"name": "SV Werder Bremen",
"team_id": "011MIC0IEC000000VTVG0001VTR8C1K7",
"url": "https://www.fussball.de/mannschaft/sv-werder-bremen-werder-bremen-bremen/-/saison/2627/team-id/011MIC0IEC000000VTVG0001VTR8C1K7"
},
"away_score": 1,
"date": "2026-08-30",
"home": {
"club_id": "00ES8GN9DO00000TVV0AG08LVUPGND5I",
"logo_url": "https://www.fussball.de/export.media/-/action/getLogo/format/0/id/00ES8GN9DO00000TVV0AG08LVUPGND5I/verband/0123456789ABCDEF0123456700004010",
"name": "Sport-Club Freiburg",
"team_id": "011MIC0ICG000000VTVG0001VTR8C1K7",
"url": "https://www.fussball.de/mannschaft/sport-club-freiburg-sc-freiburg-suedbaden/-/saison/2627/team-id/011MIC0ICG000000VTVG0001VTR8C1K7"
},
"home_score": 4,
"id": "031BFTHBG4000000VS5489BUVUR5FS5A",
"status": "finished",
"url": "https://www.fussball.de/spiel/sport-club-freiburg-sv-werder-bremen/-/spiel/031BFTHBG4000000VS5489BUVUR5FS5A"
},
"minutes": 61,
"subbed_out_minute": 61
},
{
"goals": 1,
"match": {
"away": {
"club_id": "012GQ6KPT8000000VV0AG811VSSOGHMU",
"logo_url": "https://www.fussball.de/export.media/-/action/getLogo/format/0/id/012GQ6KPT8000000VV0AG811VSSOGHMU/verband/0123456789ABCDEF0123456700004010",
"name": "RB Leipzig",
"team_id": "012Q6F4P9K000000VV0AG811VVN6GICI",
"url": "https://www.fussball.de/mannschaft/rb-leipzig-rasenballsport-leipzig-sachsen/-/saison/2627/team-id/012Q6F4P9K000000VV0AG811VVN6GICI"
},
"away_score": 1,
"date": "2026-09-05",
"home": {
"club_id": "00ES8GN8I400001CVV0AG08LVUPGND5I",
"logo_url": "https://www.fussball.de/export.media/-/action/getLogo/format/0/id/00ES8GN8I400001CVV0AG08LVUPGND5I/verband/0123456789ABCDEF0123456700004010",
"name": "SV Werder Bremen",
"team_id": "011MIC0IEC000000VTVG0001VTR8C1K7",
"url": "https://www.fussball.de/mannschaft/sv-werder-bremen-werder-bremen-bremen/-/saison/2627/team-id/011MIC0IEC000000VTVG0001VTR8C1K7"
},
"home_score": 3,
"id": "031BFTHC58000000VS5489BUVUR5FS5A",
"status": "finished",
"url": "https://www.fussball.de/spiel/sv-werder-bremen-rb-leipzig/-/spiel/031BFTHC58000000VS5489BUVUR5FS5A"
},
"minutes": 74,
"subbed_out_minute": 74
}
],
"competition": "SV Werder Bremen (Herren), Bundesliga",
"competitions": [
{
"id": "031BFREJC800001BVS5489BUVUR5FS5A-G",
"name": "Bundesliga"
}
],
"count": 3,
"player_id": "01MH0AKR7C000007VV0AG13EVSFDFGE6",
"season": "2627",
"team_id": "030POLP1B8000000VS5489BSVSO3A7B3",
"teams": [
{
"id": "030POLP1B8000000VS5489BSVSO3A7B3",
"name": "SV Werder Bremen (Herren)"
},
{
"id": "030POM2JO0000000VS5489BSVSO3A7B3",
"name": "SV Werder Bremen II (Herren)"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/fussballde.playerMatchesResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | fussballde.PlayerMatchesResponse | No | ||||
| data.appearances | array | No | ||||
| data.appearances[].goals | integer | No | ||||
| data.appearances[].match | fussballde.MatchRow | No | MatchRow record, 24 fields: away, away_score, competition, date, home, home_score, id, league, match_number, note, status, team_type and 2 more. Described under FUSSBALL.DE Matchday API. | |||
| data.appearances[].minutes | integer | No | ||||
| data.appearances[].subbed_in_minute | integer | No | ||||
| data.appearances[].subbed_out_minute | integer | No | ||||
| data.competition | string | No | SV Werder Bremen (Herren), Bundesliga | |||
| data.competitions | array | No | ||||
| data.competitions[].id | string | No | 2627 | |||
| data.competitions[].name | string | No | 26/27 | |||
| data.count | integer | No | ||||
| data.player_id | string | No | ||||
| data.season | string | No | ||||
| data.team_id | string | No | ||||
| data.teams | array | No | ||||
| data.teams[].id | string | No | 2627 | |||
| data.teams[].name | string | No | 26/27 | |||
| msg | string | No | OK |
| 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/fussballde/player-matches?player_id=01MH0AKR7C000007VV0AG13EVSFDFGE6" \
-H "x-api-key: $CRAWLORA_API_KEY"