ExPlain.Labels (ExPlain v0.3.0)

Copy Markdown View Source

Operations for managing label types in Plain.

Summary

Functions

Archives a label type.

Creates a new label type.

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

Returns a paginated list of label types.

Functions

archive(client, label_type_id)

@spec archive(ExPlain.Client.t(), String.t()) ::
  {:ok, ExPlain.Labels.LabelType.t()} | {:error, ExPlain.Error.t()}

Archives a label type.

create(client, input)

@spec create(ExPlain.Client.t(), map()) ::
  {:ok, ExPlain.Labels.LabelType.t()} | {:error, ExPlain.Error.t()}

Creates a new label type.

The input map must include :name. Optional: :icon, :external_id.

get_by_id(client, label_type_id)

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

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

list(client, opts \\ [])

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

Returns a paginated list of label types.

Options

Pagination: first:, after:, last:, before:. Filtering: filters: (passed as a LabelTypeFilter input map).