FixturesEndpoint 8 of 116
Events
GET
https://api.datasportsapi.com/
- Plan
- All plans
- Auth
Bearer dsa_live_…- Parameters
- 1 required · 0 optional
- Returns
Incident[]
The match’s incidents in chronological order, oldest first: goals, cards, substitutions, period markers and added-time announcements.
Worth knowing
- Returns an empty array if the fixture has no events (yet).
- For an injuryTime incident, addedMinute holds the number of added minutes announced.
- minute is null whenever the clock is not running — before kick-off, at half-time, for bench events and during a shoot-out.
- Shoot-out kicks are listed last, in the order taken: shootoutSequence numbers them 1…N across both sides, and shootoutRound gives the kick’s position (1st, 2nd, …) within the taker’s side.
- A period row marks the end of a period: its period is the one just completed, so the period currently in progress has no row; in set sports its homeScore / awayScore are the sets won up to that point.
- period is filled on every incident.
- All fields appear on every incident, set to null where irrelevant to the type, and type and detail are closed enums.
- Football goals carry buildUp, the chain of actions that led to the goal — shots (saved, missed, off the woodwork, penalties saved or missed), passes, crosses, free kicks, tackles, interceptions and clearances — each step with its side, player and minute, start and end pitch positions, assist, body part and expected goals, and the goal itself as the last step; buildUp is [] on all other incidents and when the source provides none.
- Cricket ball-by-ball and the point-level rows of set sports are not part of this list.
- Refreshed about every 30 seconds during a live match.
01Parameters
idpathRequiredfixture id issued by DataSportsAPI, a positive integer
02Request
The same call from the command line and each SDK. The SDK lines assume a client created with your key; left out, it is read from DATASPORTSAPI_API_KEY. Installing a client: SDKs & CLI.
curl -H "Authorization: Bearer dsa_live_…" \
"https://api.datasportsapi.com/v2/fixtures/{id}/events"03Response
The top-level keys of the JSON body. Each object links to its full shape in the data reference.
dataIncident[]meta- count
ObjectsIncident
Example response
15 lines
{ "data": [ …,
{ "type": "card", "detail": "secondYellow", "side": "home", "minute": 77, "period": "period2", "reason": "Foul", "rescinded": false, … },
{ "type": "goal", "detail": "regular", "side": "away", "minute": 80, "addedMinute": null, "second": null,
"period": "period2", "player": { "id": 3759, "name": "Bukayo Saka", … }, "playerName": "Bukayo Saka",
"assists": [ { "id": 3762, "name": "Declan Rice", … } ], "homeScore": 0, "awayScore": 1,
"buildUp": [ { "action": "pass", "side": "away", "player": { "id": 3762, "name": "Declan Rice", … }, "minute": 80,
"position": { "x": 52.1, "y": 38.4 }, "endPosition": { "x": 84.6, "y": 30.2 }, "assist": true, "bodyPart": null,
"expectedGoals": null, "expectedGoalsOnTarget": null, "goalMouthLocation": null },
{ "action": "goal", "side": "away", "player": { "id": 3759, "name": "Bukayo Saka", … }, "minute": 80,
"position": { "x": 86.6, "y": 27.5 }, "endPosition": null, "assist": false, "bodyPart": "rightFoot",
"expectedGoals": 0.028, "expectedGoalsOnTarget": 0.165, "goalMouthLocation": "highCentre" } ], … },
{ "type": "substitution", "detail": "injury", "side": "home", "minute": 85, "period": "period2",
"playerIn": { "id": 281171, "name": "Chris Wood", … }, "playerOut": { … }, … },
{ "type": "injuryTime", "detail": null, "side": null, "minute": 90, "addedMinute": 4, "period": "period2", … } ],
"meta": { "count": 24 } }04Errors
Nothing specific to this endpoint: only the account-wide errors below apply.
Any key can also meet401
unauthorized429rate_limited429quota_exceeded500internal_errorEvery error code