ExPlain.Tiers (ExPlain v0.3.0)

Copy Markdown View Source

Operations for managing tiers in Plain.

Summary

Functions

Adds members (tenants or companies) to a tier.

Fetches a tier by its Plain ID. Returns {:ok, nil} if not found.

Returns a paginated list of tiers.

Removes members from a tier.

Functions

add_members(client, input)

@spec add_members(ExPlain.Client.t(), map()) ::
  {:ok, list()} | {:error, ExPlain.Error.t()}

Adds members (tenants or companies) to a tier.

The input map must include :tier_identifier and :member_identifiers.

get_by_id(client, tier_id)

@spec get_by_id(ExPlain.Client.t(), String.t()) ::
  {:ok, ExPlain.Tiers.Tier.t() | nil} | {:error, ExPlain.Error.t()}

Fetches a tier by its Plain ID. Returns {:ok, nil} if not found.

list(client, opts \\ [])

@spec list(
  ExPlain.Client.t(),
  keyword()
) ::
  {:ok, %{nodes: [ExPlain.Tiers.Tier.t()], page_info: ExPlain.PageInfo.t()}}
  | {:error, ExPlain.Error.t()}

Returns a paginated list of tiers.

remove_members(client, input)

@spec remove_members(ExPlain.Client.t(), map()) ::
  {:ok, :removed} | {:error, ExPlain.Error.t()}

Removes members from a tier.

The input map must include :tier_identifier and :member_identifiers.