Sleeper
App · Sports · 10 actions
Read your Sleeper fantasy football leagues. Post the week's scoreboard with every score and every starter, put up the standings, announce trades and waiver claims as they happen, check a lineup for injuries or an empty slot before kickoff, follow the playoff bracket to the final, look back over the draft, and watch the players the whole of Sleeper is picking up. Sleeper answers in IDs and codes; everything here comes back with people, teams and players named. Connect it with your Sleeper username and your leagues fill in the dropdowns. No account to create, no API key, and nothing that can change your league - it reads only.
Actions
| Action | What it does |
|---|---|
| Get a league's draft | A league's most recent draft and every pick in it: the round and pick number, the player taken, the team that took them, and what was paid in an auction. |
| Get a league's settings | Read how a league is set up: what it is called, how many teams, what a catch is worth, exactly which slots a lineup starts and how deep the bench goes, when the playoffs start and how many teams make them, the trade deadline, whether waivers run on a budget and how big it is, and how many keepers are allowed. |
| Get a team's roster | One team's whole squad with every player named: the starting lineup slot by slot, the bench, anybody on injured reserve or the taxi squad, and a separate list of everyone carrying an injury. |
| Get a week's scores | The week's scoreboard: who played whom, what each side scored, who is ahead and by how much, and every starter with the points they put up. |
| Get the current NFL week | Find out which week of which NFL season it is right now, and whether the season is under way, in the playoffs or over. |
| Get the playoff bracket | The playoff bracket, round by round, with every team named and every result in. |
| List a manager's leagues | List every league a Sleeper manager plays in for one season, each with its name, how many teams are in it, how it scores, whether it is a redraft, keeper or dynasty league, and the ID the other actions here work from. |
| List teams and standings | The league table: every team in order, with its record, points for and against, how much of its waiver budget is left, and who runs it. |
| List trades and waiver moves | Every move made in a league in one week: trades, waiver claims, free agent pickups and commissioner moves, with the players and the teams named, what each claim was bid, and whether it went through or was beaten to it. |
| List trending players | The waiver wire across the whole of Sleeper: the players being picked up in the most leagues right now, or the ones being dropped, each with how many leagues moved them. |
Get a league's draft
A league's most recent draft and every pick in it: the round and pick number, the player taken, the team that took them, and what was paid in an auction. The draft order comes back alongside, as does every pick that has been traded for this season. Ask for a single round to post a first-round recap rather than two hundred picks.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
- Round
draft_roundnumber - One round of the draft. Leave empty for every pick in the whole draft.From 1 to 30.
Outputs
countnumber- How many picks came back
draft_idtext- Sleeper's ID for the draft
draft_orderlist- Who picks where in round one
last_pick_attext- When the most recent pick was made, ISO 8601 in UTC
leaguetext- What it is called
league_idtext- The league read
pickslistround_shownnumber- The round asked for, or empty when every round came back
roundsnumber- How many rounds it runs
seasontext- Which season
seconds_per_picknumber- How long each manager has on the clock
started_attext- When the draft began, ISO 8601 in UTC
statustext- 'Not started', 'In progress', 'Paused' or 'Finished'
teamsnumber- How many teams pick
traded_pickslist- Picks that changed hands before this draft
typetext- 'Snake', 'Linear' or 'Auction'
Example output
{
"count": 1,
"draft_id": "289646328508579840",
"draft_order": [
{
"manager": "canzhi",
"pick": 1,
"team": "canzhi"
}
],
"last_pick_at": "2026-08-20T03:10:55Z",
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"picks": [
{
"auction_price": null,
"draft_position": 1,
"is_keeper": false,
"manager": "progamer",
"overall_pick": 1,
"pick_in_round": 1,
"player": {
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
},
"roster_id": 1,
"round": 1,
"team": "Kamara is the new DJ"
}
],
"round_shown": 1,
"rounds": 15,
"season": "2026",
"seconds_per_pick": 120,
"started_at": "2026-08-20T01:05:00Z",
"status": "Finished",
"teams": 12,
"traded_picks": [],
"type": "Snake"
}Get a league's settings
Read how a league is set up: what it is called, how many teams, what a catch is worth, exactly which slots a lineup starts and how deep the bench goes, when the playoffs start and how many teams make them, the trade deadline, whether waivers run on a budget and how big it is, and how many keepers are allowed. Sleeper stores most of this as numbers and codes; all of it comes back in words.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
Outputs
avatarobject- The league's picture, full size and thumbnail
bench_slotsnumber- How many bench places
continues_from_league_idtext- The same league last season, for a league that carries on
draft_idtext- Sleeper's ID for the draft
formattext- 'Redraft', 'Keeper' or 'Dynasty'
injured_reserve_slotsnumber- Injured reserve places
is_best_balltrue/false- True when lineups are set automatically each week
is_superflextrue/false- True when the lineup has a superflex slot, so a second quarterback can start
keepers_allowednumber- How many players can be kept year to year
league_idtext- The league's ID
linktext- The league on sleeper.com
nametext- What the league is called
playoffsobject- When the playoffs start and how many teams make them
roster_sizenumber- Total squad size
roster_slotslist- How many of each slot a roster carries
scoringtext- 'PPR (a point per catch)', 'Half PPR ...' or 'Standard ...'
scoring_detailobject- The scoring settings people actually argue about
seasontext- Which season, e.g. '2026'
sporttext- Always 'nfl' here
starters_per_teamnumber- How many players each team starts
starting_lineuplist- Every slot a lineup starts, in order, named
statustext- 'Waiting to draft', 'Drafting now', 'In season' or 'Season finished'
taxi_squad_slotsnumber- Taxi squad places
teamsnumber- How many teams are in it
trade_deadline_weeknumber- The last week trades can be made
trades_reviewed_for_daysnumber- How long a trade sits before it goes through
waiversobject- How players are claimed off the waiver wire
Example output
{
"avatar": {
"full": "https://sleepercdn.com/avatars/efaefa889ae24046a53265a3c71b8b64",
"thumbnail": "https://sleepercdn.com/avatars/thumbs/efaefa889ae24046a53265a3c71b8b64"
},
"bench_slots": 6,
"continues_from_league_id": null,
"draft_id": "289646328508579840",
"format": "Redraft",
"injured_reserve_slots": 1,
"is_best_ball": false,
"is_superflex": false,
"keepers_allowed": null,
"league_id": "289646328504385536",
"link": "https://sleeper.com/leagues/289646328504385536",
"name": "Sleeper Friends League",
"playoffs": {
"starts_in_week": 15,
"teams_that_qualify": 6
},
"roster_size": 15,
"roster_slots": [
{
"count": 1,
"slot": "QB",
"slot_name": "Quarterback"
},
{
"count": 6,
"slot": "BN",
"slot_name": "Bench"
}
],
"scoring": "PPR (a point per catch)",
"scoring_detail": {
"points_per_catch": 1.0,
"points_per_first_down": null,
"points_per_passing_touchdown": 6.0,
"tight_end_catch_bonus": null
},
"season": "2026",
"sport": "nfl",
"starters_per_team": 9,
"starting_lineup": [
{
"slot": "QB",
"slot_name": "Quarterback"
},
{
"slot": "RB",
"slot_name": "Running back"
},
{
"slot": "FLEX",
"slot_name": "Flex (RB, WR or TE)"
}
],
"status": "In season",
"taxi_squad_slots": null,
"teams": 12,
"trade_deadline_week": 12,
"trades_reviewed_for_days": 2,
"waivers": {
"budget": 100,
"claims_clear_after_days": 2,
"style": "Free agent bidding (FAAB)"
}
}Get a team's roster
One team's whole squad with every player named: the starting lineup slot by slot, the bench, anybody on injured reserve or the taxi squad, and a separate list of everyone carrying an injury. Sleeper stores a roster as a list of player IDs and nothing else, so this is where a workflow that wants to nudge a manager about a questionable running back, or catch an empty starting slot before kickoff, gets what it needs.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
- Team
teamtextRequired - Which team in that league. The list holds every team in the chosen league. A team name, a manager's username or the team's number all work if one is coming from an earlier step instead.
Outputs
benchlistcountsobject- How many are in each list above
empty_starting_slotslist- Slots with nobody in them, which score zero
injured_reservelistinjury_concernslist- Everyone on the squad carrying a game-day designation
leaguetext- What it is called
league_idtext- The league read
managertext- Who runs it
points_fornumber- Points scored this season
recordtext- e.g. '7-6'
roster_idnumber- The team's number
seasontext- Which season
starterslist- The starting lineup, slot by slot, in Sleeper's own order
taxi_squadlistteamtext- The team's name
Example output
{
"bench": [
{
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
}
],
"counts": {
"bench": 6,
"empty_starting_slots": 0,
"injured_reserve": 0,
"injury_concerns": 0,
"starters": 9,
"taxi_squad": 0
},
"empty_starting_slots": [],
"injured_reserve": [],
"injury_concerns": [],
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"manager": "progamer",
"points_for": 271.42,
"record": "2-0",
"roster_id": 1,
"season": "2026",
"starters": [
{
"player": {
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
},
"slot": "RB",
"slot_name": "Running back"
}
],
"taxi_squad": [],
"team": "Kamara is the new DJ"
}Get a week's scores
The week's scoreboard: who played whom, what each side scored, who is ahead and by how much, and every starter with the points they put up. Sleeper returns one unpaired row per team with nothing but IDs on it, so the pairing, the team names and the player names all happen here. Each side also carries its top scorer, which is the line a weekly recap wants. During games the scores are live.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
- Week
weektext - Which week of the NFL season. Leave it on 'This week' and every run reads the week the NFL is actually in, so a weekly workflow never needs editing.One of:
current(This week),1(Week 1),2(Week 2),3(Week 3),4(Week 4),5(Week 5),6(Week 6),7(Week 7),8(Week 8),9(Week 9), and 9 more. Default:current.
Outputs
countnumber- How many fixtures
highest_scoring_teamobject- The best score in the league this week
leaguetext- What it is called
league_idtext- The league read
matchupslistmessagetext- Present only when Sleeper has no scores for that week yet, saying so in a sentence
teams_without_an_opponentlist- Teams Sleeper scheduled nothing for this week
weeknumber- The week read
Example output
{
"count": 1,
"highest_scoring_team": {
"manager": "progamer",
"points": 131.34,
"roster_id": 1,
"team": "Kamara is the new DJ"
},
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"matchups": [
{
"combined_points": 251.18,
"is_tied": false,
"leader": {
"manager": "progamer",
"roster_id": 1,
"team": "Kamara is the new DJ"
},
"margin": 11.5,
"matchup": 1,
"teams": [
{
"manager": "progamer",
"points": 131.34,
"roster_id": 1,
"starters": [
{
"player": {
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
},
"points": 29.2,
"slot": "RB",
"slot_name": "Running back"
}
],
"team": "Kamara is the new DJ",
"top_scorer": {
"name": "Alvin Kamara",
"nfl_team": "NO",
"points": 29.2,
"position": "RB"
}
},
{
"manager": "canzhi",
"points": 119.84,
"roster_id": 10,
"starters": [],
"team": "canzhi",
"top_scorer": null
}
]
}
],
"teams_without_an_opponent": [],
"week": 2
}Get the current NFL week
Find out which week of which NFL season it is right now, and whether the season is under way, in the playoffs or over. Every action here that takes a week already defaults to this one, so reach for it when a workflow needs to say the week out loud, or to decide whether to run at all in the offseason.
Inputs
None.
Outputs
display_weeknumber- The week Sleeper's own app is showing
is_offseasontrue/false- True when there is no football being played
league_seasontext- The season fantasy leagues are filed under, which differs from the NFL season in the spring
part_of_seasontext- 'Preseason', 'Regular season', 'Playoffs' or 'Offseason'
part_of_season_codetext- Sleeper's own code for the same thing
previous_seasontext- Last season
scores_have_startedtrue/false- True once games have been scored this season
seasontext- The NFL season, e.g. '2026'
season_started_ontext- The date the season kicked off, e.g. '2026-09-09'
weeknumber- The week now being played
Example output
{
"display_week": 2,
"is_offseason": false,
"league_season": "2026",
"part_of_season": "Regular season",
"part_of_season_code": "regular",
"previous_season": "2025",
"scores_have_started": true,
"season": "2026",
"season_started_on": "2026-09-09",
"week": 2
}Get the playoff bracket
The playoff bracket, round by round, with every team named and every result in. Sleeper sends this as the rawest thing in its API - single letters pointing at roster numbers - so this is where it becomes readable: which week each round is played, what each game decides, who won, and for a game not played yet, which earlier game the teams are still waiting on. The champion comes back on its own field once the final has been played.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
- Which bracket
brackettext - The championship bracket is the teams that made the playoffs. The consolation bracket is everybody else, playing for placings.One of:
championship(Championship bracket),consolation(Consolation bracket). Default:championship.
Outputs
brackettext- 'Championship bracket' or 'Consolation bracket'
bracket_codetext- The value that was chosen
gamesnumber- How many games in the bracket
is_finishedtrue/false- True once the final has been played
leaguetext- What it is called
league_idtext- The league read
playoffs_start_in_weeknumber- The NFL week round one is played in
roundslistseasontext- Which season
who_is_in_ittext- Which teams this bracket holds, in words
winnerobject- Who won the bracket, once the final has been played
Example output
{
"bracket": "Championship bracket",
"bracket_code": "championship",
"games": 1,
"is_finished": false,
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"playoffs_start_in_week": 15,
"rounds": [
{
"games": [
{
"game": 1,
"has_been_played": true,
"loser": {
"manager": "tobrepeels",
"roster_id": 5,
"team": "tobrepeels"
},
"playing_for": null,
"teams": [
{
"manager": "progamer",
"roster_id": 1,
"side": 1,
"team": "Kamara is the new DJ",
"waiting_on": null
},
{
"manager": "tobrepeels",
"roster_id": 5,
"side": 2,
"team": "tobrepeels",
"waiting_on": null
}
],
"week": 15,
"winner": {
"manager": "progamer",
"roster_id": 1,
"team": "Kamara is the new DJ"
}
}
],
"round": 1,
"week": 15
}
],
"season": "2026",
"who_is_in_it": "the teams that made the playoffs",
"winner": null
}List a manager's leagues
List every league a Sleeper manager plays in for one season, each with its name, how many teams are in it, how it scores, whether it is a redraft, keeper or dynasty league, and the ID the other actions here work from. Leave the manager empty for the account this workspace connected with. The manager's own profile comes back alongside, so this also answers 'does this username exist' for somebody joining a league.
Inputs
- Manager
managertext - Whose leagues to list, as a Sleeper username. Leave empty for the account this workspace connected with. A Sleeper user ID works here too, so a manager found by an earlier step can be passed straight in.
- Season
seasontext - Which season's leagues to list. Leave it on 'This season' and every run reads the season Sleeper is currently running.One of:
current(This season),2027,2026,2025,2024,2023,2022,2021,2020,2019,2018,2017. Default:current.
Outputs
countnumber- How many leagues came back
leagueslistmanagerobject- The Sleeper account whose leagues these are
seasontext- The season read
Example output
{
"count": 1,
"leagues": [
{
"avatar": {
"full": "https://sleepercdn.com/avatars/efaefa889ae24046a53265a3c71b8b64",
"thumbnail": "https://sleepercdn.com/avatars/thumbs/efaefa889ae24046a53265a3c71b8b64"
},
"format": "Redraft",
"is_best_ball": false,
"is_superflex": false,
"league_id": "289646328504385536",
"link": "https://sleeper.com/leagues/289646328504385536",
"name": "Sleeper Friends League",
"scoring": "PPR (a point per catch)",
"season": "2026",
"status": "In season",
"teams": 12
}
],
"manager": {
"avatar": {
"full": "https://sleepercdn.com/avatars/c99311341d58b4c50d6e0a6a6a0dfebf",
"thumbnail": "https://sleepercdn.com/avatars/thumbs/c99311341d58b4c50d6e0a6a6a0dfebf"
},
"display_name": "progamer",
"is_bot": false,
"user_id": "189140835533586432",
"username": "progamer"
},
"season": "2026"
}List teams and standings
The league table: every team in order, with its record, points for and against, how much of its waiver budget is left, and who runs it. Sleeper keeps a team's name with its manager and its record with its roster and never joins the two; this does, so each row is a whole team. It also works out how many points each manager left on their bench, which is the number a league chat is actually interested in.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
Outputs
countnumber- How many teams
leaguetext- What it is called
league_idtext- The league read
seasontext- Which season
teamslist
Example output
{
"count": 1,
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"season": "2026",
"teams": [
{
"is_commissioner": false,
"losses": 0,
"manager": "progamer",
"manager_avatar": null,
"moves_made": 3,
"players_rostered": 15,
"points_against": 219.6,
"points_for": 271.42,
"points_left_on_the_bench": 29.76,
"points_possible": 301.18,
"rank": 1,
"record": "2-0",
"roster_id": 1,
"team": "Kamara is the new DJ",
"ties": 0,
"waiver_budget_left": 87,
"waiver_priority": 4,
"wins": 2
}
]
}List trades and waiver moves
Every move made in a league in one week: trades, waiver claims, free agent pickups and commissioner moves, with the players and the teams named, what each claim was bid, and whether it went through or was beaten to it. Each move is also grouped by team, so a trade reads as what each side got and gave up rather than as two lists of IDs, which is the shape an announcement needs. Narrow to one kind of move to post only the trades.
Inputs
- League
league_idtextRequired - Which league. The list holds the leagues your connected Sleeper account plays in this season and last. For any other league - an older season, or one you are not in - paste its ID, the long number in the league's web address.
- Week
weektext - Which week of the NFL season. Leave it on 'This week' and every run reads the week the NFL is actually in, so a weekly workflow never needs editing.One of:
current(This week),1(Week 1),2(Week 2),3(Week 3),4(Week 4),5(Week 5),6(Week 6),7(Week 7),8(Week 8),9(Week 9), and 9 more. Default:current. - Kinds of move
kindslist - Which kinds of move to include. Leave empty for all of them.One or more of:
trade,waiver(Waiver claim),free_agent(Free agent pickup),commissioner(Commissioner move).
Outputs
countnumber- How many moves came back
counts_by_kindobject- How many of each kind, e.g. {'Trade': 1, 'Waiver claim': 12}
leaguetext- What it is called
league_idtext- The league read
transactionslistweeknumber- The week read
Example output
{
"count": 1,
"counts_by_kind": {
"Waiver claim": 1
},
"league": "Sleeper Friends League",
"league_id": "289646328504385536",
"transactions": [
{
"added": [
{
"manager": "progamer",
"player": {
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
},
"roster_id": 1,
"team": "Kamara is the new DJ"
}
],
"budget_moved": [],
"created_at": "2026-09-16T06:57:40Z",
"draft_picks_traded": [],
"dropped": [],
"kind": "Waiver claim",
"kind_code": "waiver",
"note": "Your waiver claim was processed successfully!",
"settled_at": "2026-09-16T07:04:02Z",
"sides": [
{
"budget_received": null,
"gave_up": [],
"manager": "progamer",
"picks_received": [],
"received": [
{
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
}
],
"roster_id": 1,
"team": "Kamara is the new DJ"
}
],
"status": "Went through",
"teams_involved": [
{
"manager": "progamer",
"roster_id": 1,
"team": "Kamara is the new DJ"
}
],
"transaction_id": "365392984159719424",
"waiver_bid": 13
}
],
"week": 2
}List trending players
The waiver wire across the whole of Sleeper: the players being picked up in the most leagues right now, or the ones being dropped, each with how many leagues moved them. This is the fastest read there is on who broke out on Sunday and who just lost their job, and it needs no league at all - it is every Sleeper league added together.
Inputs
- Which way
directiontext - Players being picked up are the waiver wire targets. Players being dropped are the ones managers have given up on.One of:
add(Being picked up),drop(Being dropped). Default:add. - Over the last
windowtext - How far back to count. A short window catches a breakout the morning after; a week smooths it out.One of:
6(Last 6 hours),24(Last 24 hours),72(Last 3 days),168(Last week). Default:24. - How many players
limitnumber - How many players to return. Sleeper serves at most 100.From 1 to 100. Default:
25.
Outputs
countnumber- How many players came back
directiontext- 'Being picked up' or 'Being dropped'
direction_codetext- The value chosen
playerslistsummarytext- One line saying what this is
windowtext- The period counted, in words
window_hoursnumber- The same period in hours
Example output
{
"count": 1,
"direction": "Being picked up",
"direction_code": "add",
"players": [
{
"leagues": 411138,
"player": {
"age": 31,
"injury": null,
"injury_detail": null,
"is_available": true,
"jersey_number": 41,
"name": "Alvin Kamara",
"nfl_team": "NO",
"nfl_team_name": "New Orleans Saints",
"player_id": "4035",
"position": "RB",
"position_name": "Running back",
"status": "Active",
"years_experience": 9
},
"rank": 1
}
],
"summary": "1 players most added across Sleeper in the last 24 hours.",
"window": "Last 24 hours",
"window_hours": 24
}