Sleeper Fantasy Sports Scraper avatar

Sleeper Fantasy Sports Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Sleeper Fantasy Sports Scraper

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

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

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:

  • playerplayerId, 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
  • trendingPlayerplayerId, sport, trendType, count, fullName, position, team, status, headshotUrl, playerUrl
  • playerOwnershipplayerId, sport, season, seasonType, week, percentOwned, percentStarted, fullName, position, team, headshotUrl, playerUrl
  • leagueleagueId, name, sport, season, seasonType, status, totalRosters, numTeams, playoffTeams, playoffWeekStart, tradeDeadline, waiverBudget, pointsPerReception, rosterPositions[], draftId, previousLeagueId, avatarUrl, leagueUrl
  • rosterleagueId, rosterId, ownerId, ownerDisplayName, wins, losses, ties, pointsFor, pointsAgainst, waiverBudgetUsed, totalMoves, playersCount, players[], starters[], leagueUrl
  • leagueUserleagueId, userId, displayName, teamName, isOwner, avatarUrl, leagueUrl
  • matchupleagueId, week, matchupId, rosterId, ownerDisplayName, points, customPoints, starters[], startersPoints[], playersCount, players[], leagueUrl
  • transactionleagueId, week, transactionId, type, status, createdAt, addedPlayerIds[], droppedPlayerIds[], rosterIds[], waiverBid, notes, draftPicksTradedCount, leagueUrl
  • tradedPickleagueId, round, season, originalRosterId, currentOwnerRosterId, previousOwnerRosterId, leagueUrl
  • bracketMatchleagueId, bracketType, matchId, round, team1RosterId, team2RosterId, winnerRosterId, loserRosterId, placementForPosition, leagueUrl
  • useruserId, username, displayName, isBot, avatarUrl
  • draftdraftId, leagueId, sport, season, seasonType, status, type, teams, rounds, startTime, scoringType, draftUrl
  • draftPickdraftId, round, pickNo, draftSlot, rosterId, pickedByUserId, isKeeper, playerId, playerName, position, team, headshotUrl, draftUrl

Every record also carries recordType and scrapedAt.

Input

FieldTypeDefaultDescription
modestringplayersOne of the 16 modes above
sportstringnflnfl or nba
nameSearchstringPlayer name substring (mode=players)
positionstringPosition filter (mode=players)
teamstringTeam abbreviation filter (mode=players)
statusstringRoster status filter (mode=players)
activeOnlyboolfalseOnly active players (mode=players)
playerIdsarraySleeper player IDs (mode=playersByIds); duplicates are deduped
trendTypestringaddadd or drop (mode=trendingPlayers)
lookbackHoursint24Trending window (mode=trendingPlayers)
seasonTypestringregularregular or post (mode=playerOwnership)
leagueIdstringLeague ID (mode=league/leagueRosters/leagueUsers/leagueMatchups/leagueTransactions/leagueTradedPicks/leagueDrafts/playoffBracket)
weekint1Fantasy week / waiver round, 1-18 (mode=leagueMatchups/leagueTransactions/playerOwnership)
bracketTypestringwinnerswinners or losers (mode=playoffBracket)
draftIdstringDraft ID (mode=draft/draftPicks)
usernamestringSleeper username (mode=user/userLeagues/userDrafts)
seasonstring4-digit season; auto-resolved if omitted (mode=userLeagues/userDrafts/playerOwnership)
maxItemsint25Hard cap on emitted records
proxyConfigurationobjectAUTOOptional; 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.