FanDuel API endpoint
Returns a page of a player's news (title, summary, author, time, link). Without `cursor` it is the player page's own first 15 articles; while `has_more` is true, pass `next_cursor` as `cursor` to continue, 1 to 50 articles at a time (default 25). Available for NFL and NBA players; a player with no coverage returns an empty list.
/fanduel/sportsbook/player/newsleague (required): nfl, nba. Any other value returns 400; only these two leagues have player pages.player (required): player slug ending in its id, such as josh-allen-53775, from the players route (players[].slug) or team/roster (players[].slug). A malformed slug returns 400; an id the Sportsbook does not know returns 404.cursor (optional): the previous response's next_cursor. An invalid or foreign cursor returns 400.limit (optional): articles per page after the first, 1 to 50; default 25. Sending limit without cursor returns 400, because the first page always carries the page's own articles.has_more and next_cursor describe the page after this one; next_cursor is omitted on the last page.articles list rather than an error.player_updates is filled on the first page only.Data is read from the Sportsbook's own team pages and services and is shown as published at the time of the request; it is not a betting recommendation. 503 on upstream failure, including when the Sportsbook serves a bot-check page instead of the requested page.
| Field | Filled in, of 15 checked | Values in the sample |
|---|---|---|
| id | 15 | |
| title | 15 | median 59 characters |
| summary | 15 | median 84 characters |
| author | 15 | |
| published_at | 15 | 2026-09-29 to 2026-10-20 |
| source | 15 | research in all 15 |
| url | 15 | fanduel.com |
| thumbnail_url | 15 | cdn.sanity.io |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| league | string | Yes | League: `nfl`, `nba` Allowed values: nfl, nba. | nfl | |
| player | string | Yes | Player slug ending in its id, such as `josh-allen-53775`; take it from the `players` route (`players[].slug`) or `team/roster` (`players[].slug`) | josh-allen-53775 | |
| cursor | string | No | Continue from the previous response's `next_cursor`; omit for the first page | ||
| limit | integer | No | Articles per page after the first, 1 to 50; default 25. Only valid together with `cursor` Minimum: 1. Maximum: 50. | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/fanduel/sportsbook/player/news?league=nfl&player=josh-allen-53775&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"league": "nfl",
"player": "josh-allen-53775",
"name": "Josh Allen",
"articles": [
{
"id": "8462e09c-c08d-4538-8237-35b70073b5b7-d",
"title": "NFL MVP Odds Update: Josh Allen, Brock Purdy in Their Own Tier",
"summary": "NFL MVP odds after Week 6. What does the market look like?",
"author": "Austan Kas",
"published_at": "2026-10-20T14:26:52Z",
"source": "research",
"url": "https://www.fanduel.com/research/nfl-mvp-odds-update-josh-allen-brock-purdy-patrick-mahomes",
"thumbnail_url": "https://cdn.sanity.io/images/pbwem9y5/ch_production/2846405b4b03ca0af1d0feba64e3355b9b075e9e-5024x3349.jpg?rect=762,0,3982,2159&w=332&h=180"
}
],
"player_updates": [],
"has_more": true,
"next_cursor": "46d817a2-f91a-4b14-974a-daed0bb58c2d-d",
"fetched_at": "2026-10-23T14:57:52Z"
},
"msg": "OK"
}Request schema
No body schema
Response schema
#/definitions/fanduel.sportsbookPlayerNewsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | fanduel.SportsbookPlayerNewsResponse | No | ||||
| data.articles | array | No | SportsbookTeamArticle record, 8 fields: author, id, published_at, source, summary, thumbnail_url, title, url. Described under FanDuel Sportsbook player overview API. | |||
| data.fetched_at | string | No | ||||
| data.has_more | boolean | No | ||||
| data.league | string | No | ||||
| data.name | string | No | ||||
| data.next_cursor | string | No | ||||
| data.player | string | No | ||||
| data.player_updates | array | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/fanduel/sportsbook/player/news?league=nfl&player=josh-allen-53775&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"