Set up app and scope for the current session
rb_drive_auth.RdSet up app and scope for the current session
Usage
rb_drive_auth(
client = NULL,
scopes = "https://www.googleapis.com/auth/drive.file",
email = gargle::gargle_oauth_email(),
cache = gargle::gargle_oauth_cache(),
use_oob = gargle::gargle_oob_default(),
path = NULL,
token = NULL
)Arguments
- client
A Google client. See example, and dedicated gargle documentation.
- scopes
Defaults to `https://www.googleapis.com/auth/drive.file`. See Google api documentation for details
Optional. If specified,
emailcan take several different forms:"jane@gmail.com", i.e. an actual email address. This allows the user to target a specific Google identity. If specified, this is used for token lookup, i.e. to determine if a suitable token is already available in the cache. If no such token is found,emailis used to pre-select the targeted Google identity in the OAuth chooser. (Note, however, that the email associated with a token when it's cached is always determined from the token itself, never from this argument)."*@example.com", i.e. a domain-only glob pattern. This can be helpful if you need code that "just works" for bothalice@example.comandbob@example.com.TRUEmeans that you are approving email auto-discovery. If exactly one matching token is found in the cache, it will be used.FALSEorNAmean that you want to ignore the token cache and force a new OAuth dance in the browser.
Defaults to the option named
"gargle_oauth_email", retrieved bygargle_oauth_email()(unless a wrapper package implements different default behavior).- cache
Specifies the OAuth token cache. Defaults to the option named
"gargle_oauth_cache", retrieved viagargle_oauth_cache().- use_oob
Whether to use out-of-band authentication (or, perhaps, a variant implemented by gargle and known as "pseudo-OOB") when first acquiring the token. Defaults to the value returned by
gargle_oob_default(). Note that (pseudo-)OOB auth only affects the initial OAuth dance. If we retrieve (and possibly refresh) a cached token,use_oobhas no effect.If the OAuth client is provided implicitly by a wrapper package, its type probably defaults to the value returned by
gargle_oauth_client_type(). You can take control of the client type by settingoptions(gargle_oauth_client_type = "web")oroptions(gargle_oauth_client_type = "installed").- path
JSON identifying the service account, in one of the forms supported for the
txtargument ofjsonlite::fromJSON()(typically, a file path or JSON string).- token
A token with class Token2.0 or an object of httr's class
request, i.e. a token that has been prepared withhttr::config()and has a Token2.0 in theauth_tokencomponent.
Examples
if (interactive()) {
google_client <- httr::oauth_app(
"my-very-own-google-app",
key = "123456789.apps.googleusercontent.com",
secret = "abcdefghijklmnopqrstuvwxyz"
)
rb_drive_auth(google_client)
}