Wrapper functions around options consulted by gargle, which provide:

  • A place to hang documentation.

  • The mechanism for setting a default.

If the built-in defaults don't suit you, set one or more of these options. Typically, this is done in the .Rprofile startup file, with code along these lines:

options(
  gargle_oauth_email = "jane@example.com",
  gargle_oauth_cache = "/path/to/folder/that/does/not/sync/to/cloud"
)
gargle_oauth_email()

gargle_oob_default()

gargle_oauth_cache()

gargle_verbosity()

local_gargle_verbosity(level, env = parent.frame())

with_gargle_verbosity(level, code)

Arguments

level

Verbosity level: "debug" > "info" > "silent"

env

The environment to use for scoping

code

Code to execute with specified verbosity level

gargle_oauth_email

gargle_oauth_email() returns the option named "gargle_oauth_email", which is undefined by default. If set, this option should be one of:

  • An actual email address corresponding to your preferred Google identity. Example:janedoe@gmail.com.

  • TRUE to allow email and OAuth token auto-discovery, if exactly one suitable token is found in the cache.

  • FALSE or NA to force the OAuth dance in the browser.

gargle_oob_default

gargle_oob_default() returns the option named "gargle_oob_default", falls back to the option named "httr_oob_default", and eventually defaults to FALSE. This controls whether to prefer "out of band" authentication. We also return FALSE unconditionally on RStudio Server or Cloud. This value is ultimately passed to httr::init_oauth2.0() as use_oob. If FALSE (and httpuv is installed), a local webserver is used for the OAuth dance. Otherwise, user gets a URL and prompt for a validation code.

Read more about "out of band" authentication in the vignette Auth when using R in the browser.

gargle_oauth_cache

gargle_oauth_cache() returns the option named "gargle_oauth_cache", defaulting to NA. If defined, the option must be set to a logical value or a string. TRUE means to cache using the default user-level cache file, ~/.R/gargle/gargle-oauth, FALSE means don't cache, and NA means to guess using some sensible heuristics.

gargle_verbosity

gargle_verbosity() returns the option named "gargle_verbosity", which determines gargle's verbosity. There are three possible values, inspired by the logging levels of log4j:

  • "debug": Fine-grained information helpful when debugging, e.g. figuring out how token_fetch() is working through the registry of credential functions. Previously, this was activated by setting an option named "gargle_quiet" to FALSE.

  • "info" (default): High-level information that a typical user needs to see. Since typical gargle usage is always indirect, i.e. gargle is called by another package, gargle itself is very quiet. There are very few messages emitted when gargle_verbosity = "info".

  • "silent": No messages at all. However, warnings or errors are still thrown normally.

Examples

gargle_oauth_email()
#> NULL
gargle_oob_default()
#> [1] FALSE
gargle_oauth_cache()
#> [1] NA
gargle_verbosity()
#> [1] "info"