System Information

R Versions Available to RStudio Connect

This recipe compares your local R version against the R installations available on your RStudio Connect server. It uses the GET /server_settings/r endpoint to obtain the R installations available to RStudio Connect.

  1. Obtain the server URL and API Key from environment variables
  2. Obtain your local R version using R.version
  3. Call the "Get R Installation Info" endpoint. See the API Documentation for more information.
  4. Parse the response using httr::content.
  5. Check the response for the local R version. If it is not listed, the RStudio Connect server does not contain the local R version.
# set up environment
# Note that the connectServer string must have a trailing slash
connectServer <- Sys.getenv("CONNECT_SERVER")
apiKey <- Sys.getenv("CONNECT_API_KEY")

library(httr)
myRVersion <- paste(R.version$major, R.version$minor, sep = ".")
resp <- GET(
    paste0(connectServer, "__api__/v1/server_settings/r"),
    add_headers(Authorization = paste("Key", apiKey))
)
resp <- content(resp, as="parsed")
if (myRVersion %in% unlist(resp)) {
    print("The local R version was found on the RStudio Connect server")
} else {
    print(paste("Cannot find R version", myRVersion,"on the RStudio Connect server"))
}