Skip to content

R API Client for Fantasy Football League Platforms

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

TheMathNinja/ffscrapr

 
 

Repository files navigation

ffscrapr

An R Client for Fantasy Football League APIs

CRAN status Dev status Lifecycle: stable Codecov test coverage R build status API status nflverse discord

Helps access various Fantasy Football APIs (currently MFL, Sleeper, Fleaflicker, and ESPN - eventually Yahoo, potentially others) by handling authentication/rate-limiting/caching, forming appropriate calls, and returning tidy dataframes which can be easily connected to other data sources.

Installation

Install the stable version of this package from CRAN or the ffverse r-universe repository:

install.packages("ffscrapr") # CRAN
install.packages("ffscrapr", repos = "https://ffverse.r-universe.dev")

Install the development version from GitHub with:

remotes::install_github("ffverse/ffscrapr", ref = "dev")

The dev version has a separate documentation site here.

Usage

All ffscrapr functions start with a connection object created by ff_connect(), which stores connection, authentication, and other user-defined parameters. This object is used by all other functions to help return the correct data.

library(ffscrapr)
ssb <- ff_connect(platform = "mfl", league_id = "54040", season = 2020)

# Get a summary of league settings
ff_league(ssb) %>% str()
#> tibble [1 x 17] (S3: tbl_df/tbl/data.frame)
#>  $ league_id        : chr "54040"
#>  $ league_name      : chr "The Super Smash Bros Dynasty League"
#>  $ season           : int 2020
#>  $ league_type      : chr NA
#>  $ franchise_count  : num 14
#>  $ qb_type          : chr "1QB"
#>  $ idp              : logi FALSE
#>  $ scoring_flags    : chr "0.5_ppr, TEPrem, PP1D"
#>  $ best_ball        : logi FALSE
#>  $ salary_cap       : logi FALSE
#>  $ player_copies    : num 1
#>  $ years_active     : chr "2018-2021"
#>  $ qb_count         : chr "1"
#>  $ roster_size      : num 33
#>  $ league_depth     : num 462
#>  $ draft_type       : chr "email draft"
#>  $ draft_player_pool: chr "Both"

# Get rosters
ff_rosters(ssb)
#> # A tibble: 442 x 11
#>   franchise_id franchise_name player_id player_name     pos   team    age
#>   <chr>        <chr>          <chr>     <chr>           <chr> <chr> <dbl>
#> 1 0001         Team Pikachu   13189     Engram, Evan    TE    NYG    27  
#> 2 0001         Team Pikachu   11680     Landry, Jarvis  WR    CLE    28.8
#> 3 0001         Team Pikachu   13645     Smith, Tre'Quan WR    NOS    25.7
#> 4 0001         Team Pikachu   12110     Brate, Cameron  TE    TBB    30.2
#> 5 0001         Team Pikachu   13168     Reynolds, Josh  WR    LAR    26.5
#> # ... with 437 more rows, and 4 more variables: roster_status <chr>,
#> #   drafted <chr>, draft_year <chr>, draft_round <chr>

# Get transactions
ff_transactions(ssb)
#> # A tibble: 1,145 x 12
#>   timestamp           type  type_desc   franchise_id franchise_name
#>   <dttm>              <chr> <chr>       <chr>        <chr>         
#> 1 2021-02-12 14:32:39 TRADE traded_away 0008         Team Bowser   
#> 2 2021-02-12 14:32:39 TRADE traded_for  0008         Team Bowser   
#> 3 2021-02-12 14:32:39 TRADE traded_for  0008         Team Bowser   
#> 4 2021-02-12 14:32:39 TRADE traded_for  0008         Team Bowser   
#> 5 2021-02-12 14:32:39 TRADE traded_for  0008         Team Bowser   
#> # ... with 1,140 more rows, and 7 more variables: player_id <chr>,
#> #   player_name <chr>, pos <chr>, team <chr>, bbid_spent <dbl>,
#> #   trade_partner <chr>, comments <chr>

Platform-specific guides on getting started with ffscrapr are here:

There are also some more advanced guides for custom API calls in the Articles section, as well as some guides on optimizing ffscrapr’s performance.

Support

The best places to get help on this package are:

Contributing

Many hands make light work! Here are some ways you can contribute to this project:

Terms of Use

The R code for this package is released as open source under the MIT license.

The APIs and data accessed by this package belong to their respective owners, and are governed by their terms of use.

About

R API Client for Fantasy Football League Platforms

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 69.0%
  • C++ 26.2%
  • R 3.5%
  • CSS 0.9%
  • C 0.3%
  • TeX 0.1%