View Source Boruta.Oauth.AccessTokens behaviour (Boruta core v2.3.4)

Access token context

Summary

Callbacks

Persists a token with the given params.

Returns a Boruta.Oauth.Token either by value or refresh_token.

Revokes the given Boruta.Oauth.Token.

Revokes only the given Boruta.Oauth.Token refresh token.

Callbacks

@callback create(
  params :: %{
    :client => Boruta.Oauth.Client.t(),
    :sub => String.t(),
    optional(:redirect_uri) => String.t(),
    :scope => String.t(),
    optional(:state) => String.t(),
    optional(:previous_token) => String.t(),
    optional(:resource_owner) => Boruta.Oauth.ResourceOwner.t()
  },
  options :: [{:refresh_token, boolean()}]
) :: token :: Boruta.Oauth.Token.t() | {:error, reason :: term()}

Persists a token with the given params.

@callback get_by([{:value, String.t()}] | [{:refresh_token, String.t()}]) ::
  token :: Boruta.Oauth.Token.t() | nil

Returns a Boruta.Oauth.Token either by value or refresh_token.

@callback revoke(token :: Boruta.Oauth.Token.t()) ::
  {:ok, Boruta.Oauth.Token.t()} | {:error, reason :: term()}

Revokes the given Boruta.Oauth.Token.

Link to this callback

revoke_refresh_token(token)

View Source
@callback revoke_refresh_token(token :: Boruta.Oauth.Token.t()) ::
  {:ok, Boruta.Oauth.Token.t()} | {:error, reason :: term()}

Revokes only the given Boruta.Oauth.Token refresh token.