OAuth2 v2.0.0 OAuth2.AccessToken View Source

This module defines the OAuth2.AccessToken struct and provides functionality to make authorized requests to an OAuth2 provider using the AccessToken returned by the provider.

The OAuth2.AccessToken struct is created for you when you use the OAuth2.Client.get_token

Link to this section Summary

Functions

Determines if the access token has expired.

Determines if the access token will expire or not.

Returns a unix timestamp based on now + expires_at (in seconds).

Returns a new OAuth2.AccessToken struct given the access token string or a response map.

Link to this section Types

Link to this type

access_token() View Source
access_token() :: binary()

Link to this type

expires_at() View Source
expires_at() :: integer()

Link to this type

other_params() View Source
other_params() :: %{optional(binary()) => binary()}

Link to this type

refresh_token() View Source
refresh_token() :: binary() | nil

Link to this type

t() View Source
t() :: %OAuth2.AccessToken{
  access_token: access_token(),
  expires_at: expires_at(),
  other_params: other_params(),
  refresh_token: refresh_token(),
  token_type: token_type()
}

Link to this type

token_type() View Source
token_type() :: binary()

Link to this section Functions

Determines if the access token has expired.

Determines if the access token will expire or not.

Returns true unless expires_at is nil.

Returns a unix timestamp based on now + expires_at (in seconds).

Link to this function

new(token) View Source
new(binary()) :: t()
new(%{optional(binary()) => binary()}) :: t()

Returns a new OAuth2.AccessToken struct given the access token string or a response map.

Note if giving a map, please be sure to make the key a string no an atom.

This is used by OAuth2.Client.get_token/4 to create the OAuth2.AccessToken struct.

Example

iex> OAuth2.AccessToken.new("abc123")
%OAuth2.AccessToken{access_token: "abc123", expires_at: nil, other_params: %{}, refresh_token: nil, token_type: "Bearer"}

iex> OAuth2.AccessToken.new(%{"access_token" => "abc123"})
%OAuth2.AccessToken{access_token: "abc123", expires_at: nil, other_params: %{}, refresh_token: nil, token_type: "Bearer"}