library(fflr)
packageVersion("fflr")
#> [1] '2.3.1'
ffl_id(leagueId = "42654852")
#> Temporarily set `fflr.leagueId` option to 42654852
#> [1] "42654852"
This vignette will demonstrate the fflr functions used to reach equivalency with the ESPN fantasy football website. The website has eight section headers with various subsections:
The My Team page presents an overview of, well, your fantasy team. From this page, a team manager can set their lineup and see statistics and news on the players on their roster.
There are six subsections on the My Team page.
The team_roster()
function returns all rosters
in a league. The output of this function is organized to replicate the
layout of the table found on the website. Players are listed in order of
their “slot” with name and team information followed by projected and
actual scores and ownership statistics.
my_team <- team_roster(scoringPeriodId = 1, leagueHistory = TRUE)[[1]] # select first roster
my_team[[1]][, -(1:3)]
#> # A tibble: 16 × 13
#> abbrev lineupSlot playerId firstName lastName proTeam position injuryStatus
#> <fct> <fct> <int> <chr> <chr> <fct> <fct> <chr>
#> 1 AUS RB 4242335 Jonathan Taylor Ind RB A
#> 2 AUS RB 4259545 D'Andre Swift Det RB A
#> 3 AUS WR 16800 Davante Adams GB WR A
#> 4 AUS WR 16460 Adam Thielen Min WR Q
#> 5 AUS TE 3116365 Mark Andrews Bal TE A
#> 6 AUS FLEX 3932905 Diontae Johnson Pit WR A
#> 7 AUS D/ST -16027 Buccaneers D/ST TB D/ST A
#> 8 AUS K 2473037 Jason Myers Sea K A
#> 9 AUS BE 3117251 Christian McCaffrey Car RB Q
#> 10 AUS BE 4360294 Antonio Gibson Wsh RB A
#> 11 AUS BE 3925357 Calvin Ridley Atl WR O
#> 12 AUS BE 4045163 Miles Sanders Phi RB A
#> 13 AUS BE 3919596 Chris Carson Sea RB Q
#> 14 AUS BE 3128429 Courtland Sutton Den WR A
#> 15 AUS BE 2577417 Dak Prescott Dal QB A
#> 16 AUS BE 3128720 Nick Chubb Cle RB A
#> # ℹ 5 more variables: projectedScore <dbl>, actualScore <dbl>, percentStarted <dbl>,
#> # percentOwned <dbl>, percentChange <dbl>
The player_outlook()
and player_news()
functions return news on your roster. The first returns all
outlooks by player and week and cannot be refined beyond setting a
limit
of players to return (in order of rank).
player_outlook(limit = 1)
#> # A tibble: 1 × 5
#> seasonId id firstName lastName outlook
#> <int> <int> <chr> <chr> <chr>
#> 1 2024 3116406 Tyreek Hill NA
The second fiction takes a single playerId
value and
returns all the recent news on that player, including premium stories in
HTML format.
player_news(playerId = "3139477", parseHTML = FALSE)
#> # A tibble: 7 × 6
#> id published type premium headline body
#> <int> <dttm> <chr> <lgl> <chr> <chr>
#> 1 3139477 2024-08-19 16:57:49 Rotowire FALSE Coach Andy Reid said Monday that Mah… "Mah…
#> 2 3139477 2024-08-17 20:51:43 Rotowire FALSE Mahomes completed eight of 14 passes… "Mah…
#> 3 3139477 2024-08-16 20:50:11 Story TRUE Fantasy football rankings: Eric Mood… "<p>…
#> 4 3139477 2024-08-15 18:56:04 Story TRUE The 2024 Fantasy Football Do Not Dra… "<p>…
#> 5 3139477 2024-08-15 15:35:09 Rotowire FALSE Mahomes and other starters are sched… "Per…
#> 6 3139477 2024-08-11 02:17:32 Rotowire FALSE Mahomes completed three of four pass… "Mah…
#> 7 3139477 2024-08-07 16:38:40 Rotowire FALSE Head coach Andy Reid said Mahomes an… "Rei…
ESPN fantasy leagues have their own unique settings and structure. This package has been tested for a very narrow subset of those possible settings.
league_info(leagueId = "42654852")
#> # A tibble: 1 × 6
#> id seasonId name isPublic size finalScoringPeriod
#> <int> <int> <chr> <lgl> <int> <int>
#> 1 42654852 2024 FFLR Test League TRUE 4 17
league_name()
#> [1] "FFLR Test League"
league_size()
#> # A tibble: 1 × 2
#> seasonId size
#> <int> <int>
#> 1 2024 4
str(league_status())
#> tibble [1 × 12] (S3: tbl_df/tbl/data.frame)
#> $ year : int 2024
#> $ isActive : logi TRUE
#> $ activatedDate : POSIXct[1:1], format: "2024-05-03 00:28:18"
#> $ scoringPeriodId : int 1
#> $ firstScoringPeriod : int 1
#> $ finalScoringPeriod : int 17
#> $ previousSeasons :List of 1
#> ..$ : int [1:3] 2021 2022 2023
#> $ standingsUpdateDate : POSIXct[1:1], format: "2024-08-21 15:33:02"
#> $ teamsJoined : int 4
#> $ waiverLastExecutionDate: POSIXct[1:1], format: "2024-08-25 07:07:20"
#> $ waiverNextExecutionDate: POSIXct[1:1], format: NA
#> $ waiverProcessStatus :List of 1
#> ..$ :'data.frame': 0 obs. of 1 variable:
#> .. ..$ date: 'POSIXct' num(0)
#> - attr(*, "tzone")= chr ""
draft_settings()
#> # A tibble: 1 × 13
#> seasonId auctionBudget availableDate date isTradingEnabled
#> <int> <chr> <dttm> <dttm> <lgl>
#> 1 2024 NA 2024-08-21 14:30:00 2024-08-21 15:30:00 FALSE
#> # ℹ 8 more variables: keeperCount <int>, keeperCountFuture <int>, keeperOrderType <chr>,
#> # leagueSubType <chr>, orderType <chr>, pickOrder <list>, timePerSelection <int>,
#> # type <chr>
roster_settings()
#> # A tibble: 1 × 8
#> seasonId isBenchUnlimited isUsingUndroppableList lineupLocktimeType lineupSlotCounts
#> <int> <lgl> <lgl> <chr> <list>
#> 1 2024 TRUE TRUE INDIVIDUAL_GAME <df [25 × 2]>
#> # ℹ 3 more variables: moveLimit <int>, positionLimits <list>, rosterLocktimeType <chr>
scoring_settings()
#> # A tibble: 1 × 7
#> seasonId scoringType playerRankType homeTeamBonus playoffHomeTeamBonus
#> <int> <chr> <chr> <int> <int>
#> 1 2024 H2H_POINTS PPR 1 0
#> # ℹ 2 more variables: playoffMatchupTieRule <chr>, scoringItems <list>
acquisition_settings()
#> # A tibble: 1 × 12
#> year acquisitionBudget acquisitionLimit acquisitionType finalPlaceTransactionElig…¹
#> <int> <int> <int> <chr> <int>
#> 1 2024 100 -1 WAIVERS_TRADITIONAL 0
#> # ℹ abbreviated name: ¹finalPlaceTransactionEligible
#> # ℹ 7 more variables: matchupLimitPerScoringPeriod <lgl>, minimumBid <int>,
#> # transactionLockingEnabled <lgl>, waiverHours <int>, waiverOrderReset <lgl>,
#> # waiverProcessDays <list>, waiverProcessHour <int>
schedule_settings()
#> # A tibble: 0 × 13
#> # ℹ 13 variables: seasonId <int>, divisions <list>, matchupPeriodCount <int>,
#> # matchupPeriodLength <int>, matchupPeriods <list>, periodTypeId <int>,
#> # playoffMatchupPeriodLength <int>, playoffMatchupPeriodLengthByRound <named list>,
#> # playoffReseed <lgl>, playoffSeedingRule <chr>, playoffSeedingRuleBy <int>,
#> # playoffTeamCount <int>, variablePlayoffMatchupPeriodLength <lgl>
league_members()
#> # A tibble: 1 × 6
#> memberId displayName firstName lastName isLeagueCreator isLeagueManager
#> <chr> <chr> <chr> <chr> <lgl> <lgl>
#> 1 {22DFE7FF-9DF2-4F3B-9FE7… K5cents Kiernan Nicholls TRUE FALSE
team_roster(scoringPeriodId = 1)
#> $AUS
#> # A tibble: 16 × 16
#> seasonId scoringPeriodId teamId abbrev lineupSlot playerId firstName lastName proTeam
#> <int> <int> <int> <fct> <fct> <int> <chr> <chr> <fct>
#> 1 2024 1 1 AUS QB 3139477 Patrick Mahomes KC
#> 2 2024 1 1 AUS RB 3117251 Christian McCaffrey SF
#> 3 2024 1 1 AUS RB 4242335 Jonathan Taylor Ind
#> 4 2024 1 1 AUS WR 3116406 Tyreek Hill Mia
#> 5 2024 1 1 AUS WR 4361370 Chris Olave NO
#> 6 2024 1 1 AUS TE 15847 Travis Kelce KC
#> 7 2024 1 1 AUS FLEX 4361529 Isiah Pacheco KC
#> 8 2024 1 1 AUS D/ST -16005 Browns D/ST Cle
#> 9 2024 1 1 AUS K 2971573 Ka'imi Fairbairn Hou
#> 10 2024 1 1 AUS BE 3116385 Joe Mixon Hou
#> 11 2024 1 1 AUS BE 4047650 DK Metcalf Sea
#> 12 2024 1 1 AUS BE 3054850 Alvin Kamara NO
#> 13 2024 1 1 AUS BE 4241478 DeVonta Smith Phi
#> 14 2024 1 1 AUS BE 4595348 Malik Nabers NYG
#> 15 2024 1 1 AUS BE 4569173 Rhamondre Stevenson NE
#> 16 2024 1 1 AUS BE 4239993 Tee Higgins Cin
#> # ℹ 7 more variables: position <fct>, injuryStatus <chr>, projectedScore <dbl>,
#> # actualScore <dbl>, percentStarted <dbl>, percentOwned <dbl>, percentChange <dbl>
#>
#> $BOS
#> # A tibble: 16 × 16
#> seasonId scoringPeriodId teamId abbrev lineupSlot playerId firstName lastName proTeam
#> <int> <int> <int> <fct> <fct> <int> <chr> <chr> <fct>
#> 1 2024 1 2 BOS QB 4429084 Anthony Richardson Ind
#> 2 2024 1 2 BOS RB 4430737 Kyren Williams LAR
#> 3 2024 1 2 BOS RB 3043078 Derrick Henry Bal
#> 4 2024 1 2 BOS WR 4241389 CeeDee Lamb Dal
#> 5 2024 1 2 BOS WR 4362628 Ja'Marr Chase Cin
#> 6 2024 1 2 BOS TE 4430027 Sam LaPorta Det
#> 7 2024 1 2 BOS FLEX 4047646 A.J. Brown Phi
#> 8 2024 1 2 BOS D/ST -16006 Cowboys D/ST Dal
#> 9 2024 1 2 BOS K 3953687 Brandon Aubrey Dal
#> 10 2024 1 2 BOS BE 4426502 Drake London Atl
#> 11 2024 1 2 BOS BE 4697815 Rachaad White TB
#> 12 2024 1 2 BOS BE 2976212 Stefon Diggs Hou
#> 13 2024 1 2 BOS BE 3915416 DJ Moore Chi
#> 14 2024 1 2 BOS BE 3126486 Deebo Samuel Sr. SF
#> 15 2024 1 2 BOS BE 3916387 Lamar Jackson Bal
#> 16 2024 1 2 BOS BE 4366031 Tank Dell Hou
#> # ℹ 7 more variables: position <fct>, injuryStatus <chr>, projectedScore <dbl>,
#> # actualScore <dbl>, percentStarted <dbl>, percentOwned <dbl>, percentChange <dbl>
#>
#> $CHI
#> # A tibble: 16 × 16
#> seasonId scoringPeriodId teamId abbrev lineupSlot playerId firstName lastName proTeam
#> <int> <int> <int> <fct> <fct> <int> <chr> <chr> <fct>
#> 1 2024 1 3 CHI QB 3918298 Josh Allen Buf
#> 2 2024 1 3 CHI RB 4430807 Bijan Robinson Atl
#> 3 2024 1 3 CHI RB 4239996 Travis Etienne J… Jax
#> 4 2024 1 3 CHI WR 4262921 Justin Jefferson Min
#> 5 2024 1 3 CHI WR 4569618 Garrett Wilson NYJ
#> 6 2024 1 3 CHI TE 3116365 Mark Andrews Bal
#> 7 2024 1 3 CHI FLEX 4426515 Puka Nacua LAR
#> 8 2024 1 3 CHI D/ST -16033 Ravens D/ST Bal
#> 9 2024 1 3 CHI K 15683 Justin Tucker Bal
#> 10 2024 1 3 CHI BE 4432708 Marvin Harrison … Ari
#> 11 2024 1 3 CHI BE 4429160 De'Von Achane Mia
#> 12 2024 1 3 CHI BE 4258173 Nico Collins Hou
#> 13 2024 1 3 CHI BE 4360438 Brandon Aiyuk SF
#> 14 2024 1 3 CHI BE 4567048 Kenneth Walker III Sea
#> 15 2024 1 3 CHI BE 3042519 Aaron Jones Min
#> 16 2024 1 3 CHI BE 4429615 Zay Flowers Bal
#> # ℹ 7 more variables: position <fct>, injuryStatus <chr>, projectedScore <dbl>,
#> # actualScore <dbl>, percentStarted <dbl>, percentOwned <dbl>, percentChange <dbl>
#>
#> $DEN
#> # A tibble: 16 × 16
#> seasonId scoringPeriodId teamId abbrev lineupSlot playerId firstName lastName proTeam
#> <int> <int> <int> <fct> <fct> <int> <chr> <chr> <fct>
#> 1 2024 1 4 DEN QB 4040715 Jalen Hurts Phi
#> 2 2024 1 4 DEN RB 4427366 Breece Hall NYJ
#> 3 2024 1 4 DEN RB 3929630 Saquon Barkley Phi
#> 4 2024 1 4 DEN WR 4374302 Amon-Ra St. Brown Det
#> 5 2024 1 4 DEN WR 4035687 Michael Pittman J… Ind
#> 6 2024 1 4 DEN TE 4361307 Trey McBride Ari
#> 7 2024 1 4 DEN FLEX 4429795 Jahmyr Gibbs Det
#> 8 2024 1 4 DEN D/ST -16025 49ers D/ST SF
#> 9 2024 1 4 DEN K 3050478 Jake Elliott Phi
#> 10 2024 1 4 DEN BE 16800 Davante Adams LV
#> 11 2024 1 4 DEN BE 4379399 James Cook Buf
#> 12 2024 1 4 DEN BE 16737 Mike Evans TB
#> 13 2024 1 4 DEN BE 4047365 Josh Jacobs GB
#> 14 2024 1 4 DEN BE 4372016 Jaylen Waddle Mia
#> 15 2024 1 4 DEN BE 2977187 Cooper Kupp LAR
#> 16 2024 1 4 DEN BE 3925357 Calvin Ridley Ten
#> # ℹ 7 more variables: position <fct>, injuryStatus <chr>, projectedScore <dbl>,
#> # actualScore <dbl>, percentStarted <dbl>, percentOwned <dbl>, percentChange <dbl>
tidy_schedule(scoringPeriodId = 1)
#> # A tibble: 68 × 7
#> seasonId matchupPeriodId matchupId teamId abbrev opponent isHome
#> <int> <int> <int> <int> <fct> <fct> <lgl>
#> 1 2024 1 1 1 AUS CHI TRUE
#> 2 2024 1 1 3 CHI AUS FALSE
#> 3 2024 1 2 2 BOS DEN TRUE
#> 4 2024 1 2 4 DEN BOS FALSE
#> 5 2024 2 3 3 CHI DEN TRUE
#> 6 2024 2 3 4 DEN CHI FALSE
#> 7 2024 2 4 1 AUS BOS TRUE
#> 8 2024 2 4 2 BOS AUS FALSE
#> 9 2024 3 5 4 DEN AUS TRUE
#> 10 2024 3 5 1 AUS DEN FALSE
#> # ℹ 58 more rows
league_messages(scoringPeriodId = 1)
#> # A tibble: 3 × 7
#> id type author date content messages viewableBy
#> <chr> <chr> <chr> <dttm> <chr> <list> <list>
#> 1 47a940be CHAT_ALL_MEMBERS {22DFE7FF-9DF… 2024-08-26 01:04:14 Ready … <NULL> <NULL>
#> 2 65c56889 CHAT_ALL_MEMBERS LM 2024-08-21 15:25:45 NA <NULL> <NULL>
#> 3 5af42ec9 NOTE {22DFE7FF-9DF… 2021-09-13 23:46:07 This [… <NULL> <NULL>
transaction_counter()
#> # A tibble: 4 × 14
#> seasonId scoringPeriodId teamId abbrev waiverRank acquisitionBudgetSpent acquisitions
#> <int> <int> <int> <fct> <int> <int> <int>
#> 1 2024 1 1 AUS 4 0 0
#> 2 2024 1 2 BOS 3 0 0
#> 3 2024 1 3 CHI 1 0 0
#> 4 2024 1 4 DEN 2 0 0
#> # ℹ 7 more variables: drops <int>, misc <int>, moveToActive <int>, moveToIR <int>,
#> # paid <dbl>, teamCharges <dbl>, trades <int>
draft_recap()
#> # A tibble: 64 × 15
#> seasonId autoDraftTypeId bidAmount pickId keeper lineupSlot nominatingTeamId
#> <int> <int> <int> <int> <lgl> <fct> <fct>
#> 1 2024 1 NA 1 FALSE RB NA
#> 2 2024 3 NA 2 FALSE WR NA
#> 3 2024 3 NA 3 FALSE RB NA
#> 4 2024 3 NA 4 FALSE RB NA
#> 5 2024 1 NA 5 FALSE WR NA
#> 6 2024 3 NA 6 FALSE WR NA
#> 7 2024 3 NA 7 FALSE WR NA
#> 8 2024 3 NA 8 FALSE WR NA
#> 9 2024 1 NA 9 FALSE RB NA
#> 10 2024 3 NA 10 FALSE FLEX NA
#> # ℹ 54 more rows
#> # ℹ 8 more variables: overallPickNumber <int>, playerId <int>, reservedForKeeper <lgl>,
#> # roundId <int>, roundPickNumber <int>, teamId <int>, abbrev <fct>, tradeLocked <lgl>
recent_activity(scoringPeriodId = 1)
#> # A tibble: 64 × 14
#> bidAmount executionType id isActingAsTeamOwner isLeagueManager isPending items
#> <int> <chr> <chr> <lgl> <lgl> <lgl> <lis>
#> 1 0 EXECUTE 905f81fd-d… FALSE FALSE FALSE <df>
#> 2 0 EXECUTE f007e4aa-9… FALSE FALSE FALSE <df>
#> 3 0 EXECUTE 926243a4-c… FALSE FALSE FALSE <df>
#> 4 0 EXECUTE 2e2236c1-a… FALSE FALSE FALSE <df>
#> 5 0 EXECUTE 8f7f2583-6… FALSE FALSE FALSE <df>
#> 6 0 EXECUTE 6a934b5a-4… FALSE FALSE FALSE <df>
#> 7 0 EXECUTE 1e7ea99a-e… FALSE FALSE FALSE <df>
#> 8 0 EXECUTE 3b3d98bd-5… FALSE FALSE FALSE <df>
#> 9 0 EXECUTE f7b5d86a-3… FALSE FALSE FALSE <df>
#> 10 0 EXECUTE 6956e466-f… FALSE FALSE FALSE <df>
#> # ℹ 54 more rows
#> # ℹ 7 more variables: proposedDate <dttm>, scoringPeriodId <int>,
#> # skipTransactionCounters <lgl>, status <chr>, teamId <int>, type <chr>,
#> # processDate <dttm>
list_players(limit = 10, proTeam = "Mia", status = "ALL")
#> # A tibble: 10 × 19
#> seasonId scoringPeriodId id firstName lastName proTeam defaultPosition
#> <int> <dbl> <int> <chr> <chr> <fct> <fct>
#> 1 2024 1 3116406 Tyreek Hill Mia WR
#> 2 2024 1 4429160 De'Von Achane Mia RB
#> 3 2024 1 4372016 Jaylen Waddle Mia WR
#> 4 2024 1 2576414 Raheem Mostert Mia RB
#> 5 2024 1 -16015 Dolphins D/ST Mia D/ST
#> 6 2024 1 4241479 Tua Tagovailoa Mia QB
#> 7 2024 1 4682745 Jaylen Wright Mia RB
#> 8 2024 1 3124679 Jason Sanders Mia K
#> 9 2024 1 16733 Odell Beckham Jr. Mia WR
#> 10 2024 1 3054212 Jonnu Smith Mia TE
#> # ℹ 12 more variables: injuryStatus <chr>, percentStarted <dbl>, percentOwned <dbl>,
#> # percentChange <dbl>, positionalRanking <int>, totalRating <dbl>,
#> # auctionValueAverage <dbl>, averageDraftPosition <dbl>, projectedScore <dbl>,
#> # lastScore <dbl>, lastSeason <dbl>, currentSeason <dbl>
live_scoring()
#> # A tibble: 4 × 6
#> currentMatchupPeriod matchupId teamId abbrev totalPointsLive totalProjectedPointsLive
#> <int> <int> <int> <fct> <dbl> <dbl>
#> 1 1 1 1 AUS 1 140.
#> 2 1 1 3 CHI 0 133.
#> 3 1 2 2 BOS 1 117.
#> 4 1 2 4 DEN 0 134.
league_standings()
#> # A tibble: 4 × 17
#> seasonId scoringPeriodId teamId abbrev draftDayProjectedRank currentProjectedRank
#> <int> <int> <int> <fct> <int> <int>
#> 1 2024 1 1 AUS 1 1
#> 2 2024 1 2 BOS 2 2
#> 3 2024 1 3 CHI 3 3
#> 4 2024 1 4 DEN 4 4
#> # ℹ 11 more variables: playoffSeed <int>, rankCalculatedFinal <int>, gamesBack <dbl>,
#> # losses <int>, percentage <dbl>, pointsAgainst <dbl>, pointsFor <dbl>,
#> # streakLength <int>, streakType <chr>, ties <int>, wins <int>