Medplum.OAuth (medplum_elixir v0.3.0)

Copy Markdown View Source

OAuth helpers for Medplum authorization-code and OpenID Connect flows.

Summary

Functions

Builds a Medplum OAuth authorize URL.

Exchanges an authorization code for a Medplum token response.

Fetches OpenID Connect userinfo from /oauth2/userinfo.

Functions

authorize_url(client_or_opts, params)

@spec authorize_url(Medplum.Client.t() | keyword() | map(), keyword() | map()) ::
  String.t()

Builds a Medplum OAuth authorize URL.

exchange_authorization_code(client_or_opts, code, opts \\ [])

@spec exchange_authorization_code(
  Medplum.Client.t() | keyword() | map(),
  String.t(),
  keyword() | map()
) ::
  {:ok, map()} | {:error, Medplum.Error.t()}

Exchanges an authorization code for a Medplum token response.

userinfo(client, opts \\ [])

@spec userinfo(
  Medplum.Client.t(),
  keyword()
) :: {:ok, map()} | {:error, Medplum.Error.t()}

Fetches OpenID Connect userinfo from /oauth2/userinfo.