Gargle2.0 is based on the Token2.0 class provided in httr. The preferred way to create a Gargle2.0 token is through the constructor function gargle2.0_token(). Key differences with Token2.0:

• The key for a cached Token2.0 comes from hashing the endpoint, app, and scopes. For the Gargle2.0 subclass, the identifier or key is expanded to include the email address associated with the token. This makes it easier to work with Google APIs with multiple identities.

• Gargle2.0 tokens are cached, by default, below "~/.R/gargle/gargle-oauth", i.e. at the user level. In contrast, the default location for Token2.0 is ./.httr-oauth, i.e. in current working directory. Gargle2.0 behaviour makes it easier to reuse tokens across projects and makes it less likely that tokens are accidentally synced to a remote location like GitHub or DropBox.

• Each Gargle2.0 token is cached in its own file. The token cache is a directory of such files. In contrast, Token2.0 tokens are cached as components of a list, which is typically serialized to ./.httr-oauth.

## Super classes

httr::Token -> httr::Token2.0 -> Gargle2.0

## Public fields

email

Email associated with the token.

package

Name of the package requesting a token. Used in messages.

## Methods

### Public methods

Inherited methods

### Method new()

Create a Gargle2.0 token

#### Arguments

...

Not used.

### Method hash()

Generate the email-augmented hash of a Gargle2.0 token

### Method load_from_cache()

(Attempt to) get a Gargle2.0 token from the cache

### Method init_credentials()

Initiate a new Gargle2.0 token

#### Arguments

deep

Whether to make a deep clone.