credentials_byo_oauth2: Load a user-provided token

Description Usage Arguments Value See Also Examples

View source: R/credentials_byo_oauth2.R

Description

This function does very little when called directly with a token:

There is no point providing scopes. They are ignored because the scopes associated with the token have already been baked in to the token itself and gargle does not support incremental authorization. The main point of credentials_byo_oauth2() is to allow token_fetch() (and packages that wrap it) to accomodate a "bring your own token" workflow.

This also makes it possible to obtain a token with one package and then register it for use with another package. For example, the default scope requested by googledrive is also sufficient for operations available in googlesheets4. You could use a shared token like so:

1
2
3
4
5
library(googledrive)
library(googlesheets4)
drive_auth(email = "[email protected]")
sheets_auth(token = drive_token())
# work with both packages freely now

Usage

1
credentials_byo_oauth2(scopes = NULL, token, ...)

Arguments

scopes

A character vector of scopes to request. Pick from those listed at https://developers.google.com/identity/protocols/googlescopes.

For certain token flows, the "https://www.googleapis.com/auth/userinfo.email" 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.

token

A token with class Token2.0 or an object of httr's class request, i.e. a token that has been prepared with httr::config() and has a Token2.0 in the auth_token component.

...

Additional arguments passed to all credential functions.

Value

An Token2.0.

See Also

Other credential functions: credentials_app_default, credentials_gce, credentials_service_account, credentials_user_oauth2, token_fetch

Examples

1
2
3
4
5
6
## Not run: 
# assume `my_token` is a Token2.0 object returned by a function such as
# httr::oauth2.0_token() or gargle::gargle2.0_token()
credentials_byo_oauth2(token = my_token)

## End(Not run)

r-pkgs/gargle documentation built on Aug. 20, 2019, 8:42 a.m.