Endpoint Playground
Returns an event's play-by-play feed. The `feed` object keeps the provider's sport-specific structure (drives and plays for football). `available` is false until play-by-play exists for the event.
25 Oct 2026: Single record response; 4 fields had a value in every checked item.
Sample value profiles: status: “scheduled”; current: false; available: false.
curl 'https://api.crawlora.net/api/v1/fanduel/sportsbook/event/play-by-play?event_id=35605985' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| event_id | integer | Yes | 35605985 | Event id from any Sportsbook events listing |
| current | boolean | No | Return only the play in progress (a much smaller payload for polling a live game); default false |
{
"code": 200,
"data": {
"event_id": 36194357,
"status": "inprogress",
"available": true,
"feed": {
"drives": [
{
"inProgress": true,
"key": "3-4",
"plays": [
{
"clock": "1st - 04:25",
"description": "S.Crossan punts 44 yards to KENN 36, Center-LIB. B.Munroe returned punt from the KENN 36. Tackled by LIB at KENN 40.",
"endSituation": {
"isRedZone": false,
"location": "1st & 10 | KENN 40",
"possession": "home"
},
"isRedZone": false,
"key": "4",
"location": "4th & 14 | LIB 20",
"period": 1,
"players": [
{
"id": "team",
"stats": [
"tackles",
"defTackles"
]
}
],
"team": "away",
"yards": 4
}
],
"score": {
"away": 7,
"home": 0
},
"subTitle": "4 plays, -4 yards",
"team": "away",
"yards": -4
}
],
"score": {
"away": 7,
"break": {
"text": "TV Timeout",
"type": "timeout"
},
"clock": "1st - 04:16",
"home": 0,
"isRedZone": false,
"location": "1st & 10 | KENN 40",
"possession": "home",
"scorePerPeriod": {
"Q1": {
"away": 7,
"home": 0
}
},
"timeoutsRemaining": {
"away": 3,
"home": 3
},
"timeoutsTotal": 3
}
},
"fetched_at": "2026-10-22T23:53:07Z"
},
"msg": "OK"
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.