Last chance! 50% off unlimited learning
Sale ends in
These functions give more control over and visibility into the auth
configuration than drive_auth()
does. drive_auth_configure()
lets the user specify their own:
OAuth app, which is used when obtaining a user token.
API key. If googledrive is de-authorized via drive_deauth()
, all
requests are sent with an API key in lieu of a token.
See the vignette
How to get your own API credentials
for more.
If the user does not configure these settings, internal defaults
are used.
drive_oauth_app()
and drive_api_key()
retrieve the
currently configured OAuth app and API key, respectively.
drive_auth_configure(app, path, api_key)drive_api_key()
drive_oauth_app()
OAuth app, in the sense of httr::oauth_app()
.
JSON downloaded from Google Cloud Platform Console, containing a
client id (aka key) and secret, in one of the forms supported for the txt
argument of jsonlite::fromJSON()
(typically, a file path or JSON string).
API key.
drive_auth_configure()
: An object of R6 class
gargle::AuthState, invisibly.
drive_oauth_app()
: the current user-configured
httr::oauth_app()
.
drive_api_key()
: the current user-configured API key.
Other auth functions:
drive_auth()
,
drive_deauth()
# NOT RUN {
# see and store the current user-configured OAuth app (probaby `NULL`)
(original_app <- drive_oauth_app())
# see and store the current user-configured API key (probaby `NULL`)
(original_api_key <- drive_api_key())
if (require(httr)) {
# bring your own app via client id (aka key) and secret
google_app <- httr::oauth_app(
"my-awesome-google-api-wrapping-package",
key = "123456789.apps.googleusercontent.com",
secret = "abcdefghijklmnopqrstuvwxyz"
)
google_key <- "the-key-I-got-for-a-google-API"
drive_auth_configure(app = google_app, api_key = google_key)
# confirm the changes
drive_oauth_app()
drive_api_key()
}
# }
# NOT RUN {
## bring your own app via JSON downloaded from Google Developers Console
drive_auth_configure(
path = "/path/to/the/JSON/you/downloaded/from/google/dev/console.json"
)
# }
# NOT RUN {
# restore original auth config
drive_auth_configure(app = original_app, api_key = original_api_key)
# }
Run the code above in your browser using DataLab