Sleeper Fantasy Sports Scraper
Pricing
from $3.00 / 1,000 results
Sleeper Fantasy Sports Scraper
Scrape Sleeper (sleeper.app) fantasy football & basketball data - NFL/NBA players, league info, rosters, members, drafts, draft picks, user profiles, and trending waiver-wire adds/drops. Public JSON API, no login required.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape Sleeper fantasy football & basketball data — NFL/NBA players, league info, rosters, league members, drafts, draft picks, user profiles, and trending waiver-wire adds/drops. HTTP-only via the public api.sleeper.app JSON API. No login, no API key, no cookies.
What this actor does
- 17 modes:
players,playersByIds,trendingPlayers,playerOwnership,league,leagueRosters,leagueUsers,leagueMatchups,leagueTransactions,leagueTradedPicks,leagueDrafts,playoffBracket,user,userLeagues,draft,draftPicks,userDrafts - Two sports: NFL and NBA
- Player search: by name, position, team, roster status, active-only
- Trending waiver wire: most-added / most-dropped players over a configurable lookback window
- Ownership / start rates: percent-owned and percent-started for any sport/season/week, regular season or playoffs
- League intelligence: settings, roster counts, scoring type, roster/team records with win-loss and points
- Weekly matchups: per-roster points, starters, and starter-by-starter scoring for any week
- Transaction log: waiver claims and trades per week, with added/dropped players and waiver bid
- Traded draft picks: every future pick that has changed hands, by round and season
- League drafts: every draft (past or in-progress) a league has ever run
- Playoff bracket: winners (championship) or losers (consolation) bracket, round by round
- Draft history: full draft settings plus every pick with the drafted player attached
- Empty fields are omitted
Output per record
Fields vary by recordType:
- player —
playerId,sport,fullName,firstName,lastName,position,positions[],team,status,active,age,birthDate,height,weightLbs,college,yearsExp,jerseyNumber,depthChartPosition,depthChartOrder,injuryStatus,injuryBodyPart,injuryNotes,searchRank,espnId,yahooId,headshotUrl,playerUrl - trendingPlayer —
playerId,sport,trendType,count,fullName,position,team,status,headshotUrl,playerUrl - playerOwnership —
playerId,sport,season,seasonType,week,percentOwned,percentStarted,fullName,position,team,headshotUrl,playerUrl - league —
leagueId,name,sport,season,seasonType,status,totalRosters,numTeams,playoffTeams,playoffWeekStart,tradeDeadline,waiverBudget,pointsPerReception,rosterPositions[],draftId,previousLeagueId,avatarUrl,leagueUrl - roster —
leagueId,rosterId,ownerId,ownerDisplayName,wins,losses,ties,pointsFor,pointsAgainst,waiverBudgetUsed,totalMoves,playersCount,players[],starters[],leagueUrl - leagueUser —
leagueId,userId,displayName,teamName,isOwner,avatarUrl,leagueUrl - matchup —
leagueId,week,matchupId,rosterId,ownerDisplayName,points,customPoints,starters[],startersPoints[],playersCount,players[],leagueUrl - transaction —
leagueId,week,transactionId,type,status,createdAt,addedPlayerIds[],droppedPlayerIds[],rosterIds[],waiverBid,notes,draftPicksTradedCount,leagueUrl - tradedPick —
leagueId,round,season,originalRosterId,currentOwnerRosterId,previousOwnerRosterId,leagueUrl - bracketMatch —
leagueId,bracketType,matchId,round,team1RosterId,team2RosterId,winnerRosterId,loserRosterId,placementForPosition,leagueUrl - user —
userId,username,displayName,isBot,avatarUrl - draft —
draftId,leagueId,sport,season,seasonType,status,type,teams,rounds,startTime,scoringType,draftUrl - draftPick —
draftId,round,pickNo,draftSlot,rosterId,pickedByUserId,isKeeper,playerId,playerName,position,team,headshotUrl,draftUrl
Every record also carries recordType and scrapedAt.
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | players | One of the 16 modes above |
sport | string | nfl | nfl or nba |
nameSearch | string | – | Player name substring (mode=players) |
position | string | – | Position filter (mode=players) |
team | string | – | Team abbreviation filter (mode=players) |
status | string | – | Roster status filter (mode=players) |
activeOnly | bool | false | Only active players (mode=players) |
playerIds | array | – | Sleeper player IDs (mode=playersByIds); duplicates are deduped |
trendType | string | add | add or drop (mode=trendingPlayers) |
lookbackHours | int | 24 | Trending window (mode=trendingPlayers) |
seasonType | string | regular | regular or post (mode=playerOwnership) |
leagueId | string | – | League ID (mode=league/leagueRosters/leagueUsers/leagueMatchups/leagueTransactions/leagueTradedPicks/leagueDrafts/playoffBracket) |
week | int | 1 | Fantasy week / waiver round, 1-18 (mode=leagueMatchups/leagueTransactions/playerOwnership) |
bracketType | string | winners | winners or losers (mode=playoffBracket) |
draftId | string | – | Draft ID (mode=draft/draftPicks) |
username | string | – | Sleeper username (mode=user/userLeagues/userDrafts) |
season | string | – | 4-digit season; auto-resolved if omitted (mode=userLeagues/userDrafts/playerOwnership) |
maxItems | int | 25 | Hard cap on emitted records |
proxyConfiguration | object | AUTO | Optional; only used as an automatic fallback on 403/429 |
Example: browse NFL quarterbacks
{ "mode": "players", "sport": "nfl", "position": "QB", "activeOnly": true, "maxItems": 20 }
Example: most-added NFL players this week
{ "mode": "trendingPlayers", "sport": "nfl", "trendType": "add", "lookbackHours": 48, "maxItems": 25 }
Example: waiver-wire ownership / start rates
{ "mode": "playerOwnership", "sport": "nfl", "season": "2025", "week": 1, "seasonType": "regular", "maxItems": 50 }
Example: league rosters
{ "mode": "leagueRosters", "leagueId": "289646328504385536" }
Example: draft picks
{ "mode": "draftPicks", "draftId": "289646328508579840", "maxItems": 100 }
Example: week 1 matchups (scores)
{ "mode": "leagueMatchups", "leagueId": "289646328504385536", "week": 1 }
Example: week 1 waiver/trade transactions
{ "mode": "leagueTransactions", "leagueId": "289646328504385536", "week": 1 }
Example: playoff bracket
{ "mode": "playoffBracket", "leagueId": "289646328504385536", "bracketType": "winners" }
Example: all drafts a league has run
{ "mode": "leagueDrafts", "leagueId": "289646328504385536" }
Use cases
- Fantasy tools — build waiver-wire trackers, trade analyzers, or start/sit apps on top of live Sleeper data
- League dashboards — pull standings, rosters, and points-for/against for a custom league site
- Draft recaps — generate shareable draft-grade reports pick-by-pick
- Player research — cross-reference injury status, depth chart, and search-rank popularity
- Content/media — power trending-player newsletters or social posts
FAQ
Do I need a Sleeper account? No. Every endpoint used here is Sleeper's public, unauthenticated REST API.
Where do I find a league ID / draft ID? They appear in the URL when you open a league or draft on sleeper.com (e.g. sleeper.com/leagues/<leagueId>), or via mode=userLeagues / mode=userDrafts with a username.
Why is season optional? If omitted, the actor calls Sleeper's /state/<sport> endpoint and uses the current season (or the most recently completed one during the off-season) automatically.
What are positions[] vs position? Some players are fantasy-eligible at multiple positions (e.g. a flex-eligible RB/WR). position is the primary (first-listed) eligibility; positions[] lists all of them.
Why do some players have no headshotUrl? Team-defense entries (DEF) use the team abbreviation instead of a numeric player ID, so no individual headshot exists.
How fresh is the data? Sleeper updates player status/injury data multiple times daily during the season; trending data is near-real-time.