R/mlb_stat_groups.R

Defines functions mlb_stat_groups

Documented in mlb_stat_groups

#' @title **MLB Stat Groups** 
#' @return Returns a tibble with the following columns
#'
#'  |col_name               |types     |description                              |
#'  |:----------------------|:---------|:----------------------------------------|
#'  |stat_group_name        |character |Stat group display name (e.g., hitting). |
#'
#' @export
#' @examples \donttest{
#'   try(mlb_stat_groups())
#' }
mlb_stat_groups <- function(){
  
  mlb_endpoint <- mlb_stats_endpoint("v1/statGroups")
  query_params <- list()
  
  mlb_endpoint <- httr2::url_modify_query(mlb_endpoint, !!!query_params)
  
  stat_groups <- NULL
  tryCatch(
    expr = {
      resp <- mlb_endpoint |> 
        mlb_api_call()
      stat_groups <- jsonlite::fromJSON(jsonlite::toJSON(resp), flatten = TRUE)  |> 
        janitor::clean_names() |> 
        as.data.frame() |> 
        dplyr::rename(
          "stat_group_name" = "display_name") |>
        make_baseballr_data("MLB Stat Groups data from MLB.com",Sys.time())
      
    },
    error = function(e) {
      cli::cli_alert_danger("{Sys.time()}: Invalid arguments provided")
    },
    finally = {
    }
  )
  return(stat_groups)
}

Try the baseballr package in your browser

Any scripts or data that you put into this service are public.

baseballr documentation built on Aug. 27, 2026, 1:07 a.m.