PolarExpress.Services.MembersService (polar_express v0.2.0)

Copy Markdown View Source

Members

Members API operations.

Summary

Functions

create_member(client, params \\ %{}, opts \\ [])

@spec create_member(PolarExpress.Client.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.Member.t()} | {:error, PolarExpress.Error.t()}

Create Member

Create a new member for a customer.

Only B2B customers with the member management feature enabled can add members. The authenticated user or organization must have access to the customer's organization.

Scopes: members:write

See PolarExpress.Params.MembersCreateMemberParams for parameter details.

delete_member(client, id, params \\ %{}, opts \\ [])

@spec delete_member(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Client.response_data()} | {:error, PolarExpress.Error.t()}

Delete Member

Delete a member.

The authenticated user or organization must have access to the member's organization.

Scopes: members:write

See PolarExpress.Params.MembersDeleteMemberParams for parameter details.

delete_member_by_external_id(client, external_id, params \\ %{}, opts \\ [])

@spec delete_member_by_external_id(
  PolarExpress.Client.t(),
  String.t(),
  map(),
  keyword()
) ::
  {:ok, PolarExpress.Client.response_data()} | {:error, PolarExpress.Error.t()}

Delete Member by External ID

Delete a member by external ID. One of customer_id or external_customer_id must be specified.

Scopes: members:write

See PolarExpress.Params.MembersDeleteMemberByExternalIdParams for parameter details.

get_member(client, id, params \\ %{}, opts \\ [])

@spec get_member(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.Member.t()} | {:error, PolarExpress.Error.t()}

Get Member

Get a member by ID.

The authenticated user or organization must have access to the member's organization.

Scopes: members:read members:write

See PolarExpress.Params.MembersGetMemberParams for parameter details.

get_member_by_external_id(client, external_id, params \\ %{}, opts \\ [])

@spec get_member_by_external_id(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.Member.t()} | {:error, PolarExpress.Error.t()}

Get Member by External ID

Get a member by external ID. One of customer_id or external_customer_id must be specified.

Scopes: members:read members:write

See PolarExpress.Params.MembersGetMemberByExternalIdParams for parameter details.

list_members(client, params \\ %{}, opts \\ [])

@spec list_members(PolarExpress.Client.t(), map(), keyword()) ::
  {:ok, PolarExpress.ListObject.t()} | {:error, PolarExpress.Error.t()}

List Members

List members with optional customer ID filter.

Scopes: members:read members:write

See PolarExpress.Params.MembersListMembersParams for parameter details.

update_member(client, id, params \\ %{}, opts \\ [])

@spec update_member(PolarExpress.Client.t(), String.t(), map(), keyword()) ::
  {:ok, PolarExpress.Schemas.Member.t()} | {:error, PolarExpress.Error.t()}

Update Member

Update a member.

Only name and role can be updated. The authenticated user or organization must have access to the member's organization.

Scopes: members:write

See PolarExpress.Params.MembersUpdateMemberParams for parameter details.

update_member_by_external_id(client, external_id, params \\ %{}, opts \\ [])

@spec update_member_by_external_id(
  PolarExpress.Client.t(),
  String.t(),
  map(),
  keyword()
) ::
  {:ok, PolarExpress.Schemas.Member.t()} | {:error, PolarExpress.Error.t()}

Update Member by External ID

Update a member by external ID. One of customer_id or external_customer_id must be specified.

Scopes: members:write

See PolarExpress.Params.MembersUpdateMemberByExternalIdParams for parameter details.