These functions send the token
to Google endpoints that return info about a
token or a user.
Arguments
- 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_token
component.
Value
A list containing:
token_userinfo()
: user infotoken_email()
: user's email (obtained from a call totoken_userinfo()
)token_tokeninfo()
: token info
Details
It's hard to say exactly what info will be returned by the "userinfo"
endpoint targetted by token_userinfo()
. It depends on the token's scopes.
Where possible, OAuth2 tokens obtained via the gargle package include the
https://www.googleapis.com/auth/userinfo.email
scope, which guarantees we
can learn the email associated with the token. If the token has the
https://www.googleapis.com/auth/userinfo.profile
scope, there will be even
more information available. But for a token with unknown or arbitrary scopes,
we can't make any promises about what information will be returned.
Examples
if (FALSE) {
# with service account token
t <- token_fetch(
scopes = "https://www.googleapis.com/auth/drive",
path = "path/to/service/account/token/blah-blah-blah.json"
)
# or with an OAuth token
t <- token_fetch(
scopes = "https://www.googleapis.com/auth/drive",
email = "janedoe@example.com"
)
token_userinfo(t)
token_email(t)
tokens_tokeninfo(t)
}