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
// Teams

Team absences

Returns a team's injured and suspended players, split into two lists. Use it before a match to see who is unavailable, or with current=false to look back at past absences.

GET https://api.soccer-data.co/v1/teams/{team_id}/injuries-suspensions
  • By default a suspension only shows up where it applies: a club sees bans from club competitions, a national team sees bans from international ones. Bans whose competition is unknown always show up.
  • A suspension with reason national_team means the player is away on international duty, not banned. Clubs see these; national teams don't.
  • If the same ban is reported twice, it is listed once.
  • expected_return is an estimate. Injuries have no fixed end date.
  • To check a single player, use /players/{player_id}/injuries-suspensions.
Path parameters
team_idstringrequired

The team's id, like team_…. Find one with the ID guide.

Query parameters
current boolean default true

true lists only players who are out right now. false lists every record, past ones included.

truefalse
Response fields
data.injuriesarray

Injury records. Always present, possibly empty.

data.injuries[].player_idstring

The injured player's id.

data.injuries[].statusstring

How serious it is, for example out or day_to_day. Can be null.

data.injuries[].reasonstring

A code for the injury, such as leg_injury. Can be null.

data.injuries[].start_datestring

When the injury began, as an ISO 8601 date-time. Can be null.

data.injuries[].expected_returnstring

When the player is expected back, as an ISO 8601 date-time. An estimate; null when open-ended or unknown.

data.injuries[].activeboolean

True while the injury is still keeping the player out. Past injuries (with current=false) are false.

data.suspensionsarray

Suspension records. Always present, possibly empty.

data.suspensions[].player_idstring

The suspended player's id.

data.suspensions[].reasonstring

A code for the suspension, such as red_card_suspension. national_team means international duty, not a ban. Can be null.

data.suspensions[].matchesinteger

How many matches the ban lasts. Can be null.

data.suspensions[].competitionobject

The competition the ban applies to. The player can still play in other competitions. Can be null.

data.suspensions[].competition.idstring

That competition's id.

data.suspensions[].competition.namestring

That competition's name.

data.suspensions[].start_datestring

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

data.suspensions[].end_datestring

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

data.suspensions[].activeboolean

True while the suspension is in force. Past suspensions (with current=false) are false.

curl "https://api.soccer-data.co/v1/teams/team_6y79oahh4we9/injuries-suspensions" \
  -H "X-Api-Key: $SOCCER_DATA_KEY"
200 · Example response
{
    "data": {
        "injuries": [
            {
                "player_id": "player_2ag0m6l1sq3z",
                "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