-
Notifications
You must be signed in to change notification settings - Fork 53
/
Copy pathgs4_auth_configure.Rd
87 lines (75 loc) · 3.02 KB
/
gs4_auth_configure.Rd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/gs4_auth.R
\name{gs4_auth_configure}
\alias{gs4_auth_configure}
\alias{gs4_api_key}
\alias{gs4_oauth_client}
\title{Edit and view auth configuration}
\usage{
gs4_auth_configure(client, path, api_key, app = deprecated())
gs4_api_key()
gs4_oauth_client()
}
\arguments{
\item{client}{A Google OAuth client, presumably constructed via
\code{\link[gargle:gargle_oauth_client_from_json]{gargle::gargle_oauth_client_from_json()}}. Note, however, that it is
preferred to specify the client with JSON, using the \code{path} argument.}
\item{path}{JSON downloaded from \href{https://console.cloud.google.com}{Google Cloud Console}, containing a client id and
secret, in one of the forms supported for the \code{txt} argument of
\code{\link[jsonlite:fromJSON]{jsonlite::fromJSON()}} (typically, a file path or JSON string).}
\item{api_key}{API key.}
\item{app}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#deprecated}{\figure{lifecycle-deprecated.svg}{options: alt='[Deprecated]'}}}{\strong{[Deprecated]}} Replaced by the \code{client}
argument.}
}
\value{
\itemize{
\item \code{gs4_auth_configure()}: An object of R6 class
\link[gargle:AuthState-class]{gargle::AuthState}, invisibly.
\item \code{gs4_oauth_client()}: the current user-configured OAuth client.
\item \code{gs4_api_key()}: the current user-configured API key.
}
}
\description{
These functions give more control over and visibility into the auth
configuration than \code{\link[=gs4_auth]{gs4_auth()}} does. \code{gs4_auth_configure()}
lets the user specify their own:
\itemize{
\item OAuth client, which is used when obtaining a user token.
\item API key. If googlesheets4 is de-authorized via \code{\link[=gs4_deauth]{gs4_deauth()}}, all
requests are sent with an API key in lieu of a token.
}
See the \code{vignette("get-api-credentials", package = "gargle")}
for more.
If the user does not configure these settings, internal defaults
are used.
\code{gs4_oauth_client()} and \code{gs4_api_key()} retrieve the
currently configured OAuth client and API key, respectively.
}
\examples{
# see and store the current user-configured OAuth client (probably `NULL`)
(original_client <- gs4_oauth_client())
# see and store the current user-configured API key (probably `NULL`)
(original_api_key <- gs4_api_key())
# the preferred way to configure your own client is via a JSON file
# downloaded from Google Developers Console
# this example JSON is indicative, but fake
path_to_json <- system.file(
"extdata", "client_secret_installed.googleusercontent.com.json",
package = "gargle"
)
gs4_auth_configure(path = path_to_json)
# this is also obviously a fake API key
gs4_auth_configure(api_key = "the_key_I_got_for_a_google_API")
# confirm the changes
gs4_oauth_client()
gs4_api_key()
# restore original auth config
gs4_auth_configure(client = original_client, api_key = original_api_key)
}
\seealso{
Other auth functions:
\code{\link{gs4_auth}()},
\code{\link{gs4_deauth}()},
\code{\link{gs4_scopes}()}
}
\concept{auth functions}