Building with AI? Give your coding tool the whole reference in one file: https://soccer-data.co/llms.txt
SOCCER DATA Docs
Sign in Get API key
// Players

Player absences

A player's injuries and suspensions. By default you get only what keeps them out right now; pass current=false to see their history too. Use it to flag unavailable players before a match or on a profile page.

GET https://api.soccer-data.co/v1/players/{player_id}/injuries-suspensions
  • With current=false, past records come back as well. Check active on each record to tell them apart.
  • A suspension only counts in its own competition. A player banned in the league can still be free to play in a cup.
  • A ban reported twice appears only once.
  • International call-ups listed under an international competition are left out.
  • expected_return is a best guess, not a fixed date.
  • To check a whole squad in one request, use the team absences endpoint instead.
Path parameters
player_idstringrequired

The player's id, like player_…. Find one with the ID guide.

Query parameters
current boolean default true

true returns only injuries and suspensions in effect now. false returns every record, past ones included.

Response fields
data.injuries[]array

The player's injuries.

data.injuries[].player_idstring

The injured player.

data.injuries[].statusstring|null

How serious it is, for example out or day_to_day.

data.injuries[].reasonstring|null

The kind of injury, as a code such as leg_injury.

data.injuries[].start_datestring|null

When the injury started, as an ISO 8601 date-time.

data.injuries[].expected_returnstring|null

Estimated return date, as an ISO 8601 date-time. Null when there's no estimate or the absence is open-ended.

data.injuries[].activeboolean

True while the injury still keeps the player out. False for past injuries.

data.suspensions[]array

The player's suspensions.

data.suspensions[].player_idstring

The suspended player.

data.suspensions[].reasonstring|null

Why the player is out, as a code such as red_card_suspension. national_team means the player is away with their country and misses club games; it isn't a ban.

data.suspensions[].matchesinteger|null

How many matches the ban lasts.

data.suspensions[].competitionobject|null

The competition the ban applies to.

data.suspensions[].competition.idstring

The competition's id.

data.suspensions[].competition.namestring

The competition's name.

data.suspensions[].start_datestring|null

When the suspension starts, as an ISO 8601 date-time.

data.suspensions[].end_datestring|null

When the suspension ends, as an ISO 8601 date-time.

data.suspensions[].activeboolean

True while the suspension is in force. False for past suspensions.

curl "https://api.soccer-data.co/v1/players/player_rzw8un0kyit8/injuries-suspensions" \
  -H "X-Api-Key: $SOCCER_DATA_KEY"
200 · Example response
{
    "data": {
        "injuries": [
            {
                "player_id": "player_rzw8un0kyit8",
                "status": "out",
                "reason": "leg_injury",
                "start_date": "2026-09-29T00:00:00.000Z",
                "expected_return": "2027-01-10T00:00:00.000Z",
                "active": true
            }
        ],
        "suspensions": [
            {
                "player_id": "player_rzw8un0kyit8",
                "reason": "red_card_suspension",
                "matches": 1,
                "competition": {
                    "id": "competition_ozwhqjc3z9ic",
                    "name": "LaLiga"
                },
                "start_date": "2026-09-20T17:30:17.000Z",
                "end_date": "2026-10-10T22:00:00.000Z",
                "active": true
            }
        ]
    }
}
Get a free key to try it