Trait oauth2::TokenResponse[][src]

pub trait TokenResponse<TT>: Debug + DeserializeOwned + Serialize where
    TT: TokenType
{ fn access_token(&self) -> &AccessToken;
fn token_type(&self) -> &TT;
fn expires_in(&self) -> Option<Duration>;
fn refresh_token(&self) -> Option<&RefreshToken>;
fn scopes(&self) -> Option<&Vec<Scope>>; }
Expand description

Common methods shared by all OAuth2 token implementations.

The methods in this trait are defined in Section 5.1 of RFC 6749. This trait exists separately from the StandardTokenResponse struct to support customization by clients, such as supporting interoperability with non-standards-complaint OAuth2 providers.

Required methods

REQUIRED. The access token issued by the authorization server.

REQUIRED. The type of the token issued as described in Section 7.1. Value is case insensitive and deserialized to the generic TokenType parameter.

RECOMMENDED. The lifetime in seconds of the access token. For example, the value 3600 denotes that the access token will expire in one hour from the time the response was generated. If omitted, the authorization server SHOULD provide the expiration time via other means or document the default value.

OPTIONAL. The refresh token, which can be used to obtain new access tokens using the same authorization grant as described in Section 6.

OPTIONAL, if identical to the scope requested by the client; otherwise, REQUIRED. The scope of the access token as described by Section 3.3. If included in the response, this space-delimited field is parsed into a Vec of individual scopes. If omitted from the response, this field is None.