Endpoint Playground
Returns the Sportsbook's Parlay Hub: popular parlays, same-game parlays (SGP) and SGP+ combinations, each with the number of tickets placed on it (`total_bets`), combined odds, the legs and an editor's narrative when there is one. `view` picks the list: `popular` (the homepage list), `all` (every card, filterable by `type`), `next-to-start` (grouped by the events starting soonest) or `event` (popular cards for one event). The Sportsbook returns at most 50 cards per request. `filters` lists the competition groups its own filter bar offers. A request returns at most 50 cards (`card_cap`); `truncated` is true when it filled that cap, and narrower `type`, sport, competition or decimal-odds filters reveal the cards beyond it.
25 Oct 2026: 50 parlays; 6 fields had a value in every checked item and 9 varied between items.
Sample value profiles: type: SGP (28), PARLAY (17), SGP_PLUS (5); total_bets: 5 to 14,596, median 613; narrative: “Tight End Zone: Kittle & Likely lead the NFL in TE TDs; Ges…” and 27 other values.
curl 'https://api.crawlora.net/api/v1/fanduel/sportsbook/parlays?view=popular&type=PARLAY&event_type_id=6423&state=ar' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| view | string | No | popular | Which list: `popular` (default), `all`, `next-to-start` or `event` |
| event_id | integer | No | Event id, required for `view=event` and rejected otherwise | |
| type | string | No | PARLAY | Card type filter for `view=all` (repeat or comma-separate): `PARLAY` (multi-event parlay), `SGP` (same-game parlay), `SGP_PLUS` (SGP combined across games) |
| event_type_id | string | No | 6423 | Sport filter for `view=all` and `view=next-to-start`: 6423 American Football; 1 Soccer; 7522 Basketball; 3 Golf; 7511 Baseball; 7524 Ice Hockey; 2 Tennis; 26420387 Mixed Martial Arts; 2593174 Table Tennis; 3503 Darts; 6 Boxing; 5 Rugby Union; 4 Cricket; 8 Motor Sport; 1477 Rugby League; 6422 Snooker; 468328 Handball; 28608997 Lacrosse; 998917 Volleyball, 4726642 Surfing, 10 Special Bets and 2378961 Politics; availability differs by market (Volleyball is also offered in NJ, PA, CO and AZ), and a sport a market does not offer returns 404 |
| competition_id | string | No | Competition filter for `view=all` and `view=next-to-start` (repeat or comma-separate, up to 20 ids); the groups in the response `filters` list valid ids | |
| min_odds | number | No | Minimum combined decimal odds (1.01 to 10000) for `view=all` and `view=next-to-start` | |
| max_odds | number | No | Maximum combined decimal odds (1.01 to 10000) for `view=all` and `view=next-to-start` | |
| state | string | No | ar | Market to query; default nj |
{
"code": 200,
"data": {
"state": "nj",
"view": "all",
"parlays": [
{
"id": "bo-6293a30-popular",
"type": "SGP",
"event_id": 36188999,
"event_name": "New York Giants @ Houston Texans",
"competition_id": 12282733,
"competition_name": "NFL",
"home_team": "Houston Texans",
"away_team": "New York Giants",
"total_bets": 70,
"american_odds": 2631,
"decimal_odds": 27.31,
"narrative": "Battle of the Wideouts: Collins & Nabers each haul in 100+ rec yards & find the end zone",
"is_editable": true,
"legs": [
{
"event_id": 36188999,
"event_name": "New York Giants @ Houston Texans",
"competition_id": 12282733,
"market_id": "734.193112655",
"selection_id": 40988199,
"selection": "N.Collins 100+ Yards",
"market": "Alt Receiving Yds",
"market_type": "PLAYER_X_ALT_RECEIVING_YARDS_HIGH"
},
{
"event_id": 36188999,
"event_name": "New York Giants @ Houston Texans",
"competition_id": 12282733,
"market_id": "734.193075091",
"selection_id": 26919599,
"selection": "N.Collins",
"market": "Any Time Touchdown Scorer",
"market_type": "ANY_TIME_TOUCHDOWN_SCORER"
}
]
}
],
"types": [
{
"type": "SGP",
"count": 50
}
],
"filters": [],
"card_cap": 50,
"truncated": true,
"fetched_at": "2026-10-23T03:52:08Z"
},
"msg": "OK"
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.