This is a rather magical function that calls a series of concrete credential-fetching functions, each wrapped in a tryCatch(). token_fetch() keeps trying until it succeeds or there are no more functions to try. Use cred_funs_list() to see the current registry, in order. See the vignette How gargle gets tokens for a full description of token_fetch().

token_fetch(scopes = NULL, ...)



A character vector of scopes to request. Pick from those listed at

For certain token flows, the "" scope is unconditionally included. This grants permission to retrieve the email address associated with a token; gargle uses this to index cached OAuth tokens. This grants no permission to view or send email. It is considered a low value scope and does not appear on the consent screen.


Additional arguments passed to all credential functions.


An httr::Token or NULL.

See also


if (FALSE) { token_fetch(scopes = "") }