MoneyHub.ScimUsers (MoneyHub v1.0.0)

Copy Markdown View Source

SCIM users: a SCIM-style user identity resource that can hold personally identifiable information (name, email, etc), as distinct from MoneyHub.Users (the lightweight data-only user record sub claims point at).

Used primarily for embedded-component (widget) tenant user provisioning - see Creating Users and Token Generation.

Summary

Functions

Creates a SCIM user. attrs follows the SCIM user schema (e.g. "userName", "name", "emails").

Fetches a single SCIM user by id.

Lists SCIM users for this API client/tenant.

Updates a SCIM user's attributes.

Types

scim_user()

@type scim_user() :: map()

Functions

create(config, token, attrs)

@spec create(MoneyHub.Config.t(), String.t(), map()) ::
  {:ok, scim_user()} | {:error, MoneyHub.Error.t()}

Creates a SCIM user. attrs follows the SCIM user schema (e.g. "userName", "name", "emails").

delete(config, token, scim_user_id)

@spec delete(MoneyHub.Config.t(), String.t(), String.t()) ::
  :ok | {:error, MoneyHub.Error.t()}

Deletes a SCIM user.

get(config, token, scim_user_id)

@spec get(MoneyHub.Config.t(), String.t(), String.t()) ::
  {:ok, scim_user()} | {:error, MoneyHub.Error.t()}

Fetches a single SCIM user by id.

list(config, token)

@spec list(MoneyHub.Config.t(), String.t()) ::
  {:ok, [scim_user()]} | {:error, MoneyHub.Error.t()}

Lists SCIM users for this API client/tenant.

update(config, token, scim_user_id, attrs)

@spec update(MoneyHub.Config.t(), String.t(), String.t(), map()) ::
  {:ok, scim_user()} | {:error, MoneyHub.Error.t()}

Updates a SCIM user's attributes.