WorkOS.OrganizationMembershipService (WorkOS SDK for Elixir v3.0.1)

Copy Markdown View Source

Operations for the OrganizationMembership API.

Summary

Functions

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

@spec create_organization_membership(WorkOS.Client.t(), map(), keyword()) ::
  {:ok, WorkOS.OrganizationMembership.t()} | {:error, WorkOS.Error.error()}

Create an organization membership

Creates a new active organization membership for the given organization and user.

Calling this API with an organization and user that match an inactive organization membership will activate the membership with the specified role(s).

Parameters

deactivate_organization_membership(client, id, opts \\ [])

@spec deactivate_organization_membership(WorkOS.Client.t(), String.t(), keyword()) ::
  {:ok, WorkOS.OrganizationMembership.t()} | {:error, WorkOS.Error.error()}

Deactivate an organization membership

Deactivates an active organization membership. Emits an organization_membership.updated event upon successful deactivation.

  • Deactivating an inactive membership is a no-op and does not emit an event.
  • Deactivating a pending membership returns an error. This membership should be deleted instead.

See the membership management documentation for additional details.

Parameters

delete_organization_membership(client, id, opts \\ [])

@spec delete_organization_membership(WorkOS.Client.t(), String.t(), keyword()) ::
  {:ok, term()} | {:error, WorkOS.Error.error()}

Delete an organization membership

Permanently deletes an existing organization membership. It cannot be undone.

Parameters

get_organization_membership(client, id, opts \\ [])

@spec get_organization_membership(WorkOS.Client.t(), String.t(), keyword()) ::
  {:ok, WorkOS.UserOrganizationMembership.t()} | {:error, WorkOS.Error.error()}

Get an organization membership

Get the details of an existing organization membership.

Parameters

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

@spec list_organization_membership_groups(
  WorkOS.Client.t(),
  String.t(),
  map(),
  keyword()
) ::
  {:ok, WorkOS.Page.t(WorkOS.Group.t())} | {:error, WorkOS.Error.error()}

List groups

Get a list of groups that an organization membership belongs to.

Parameters

  • om_id — Unique identifier of the Organization Membership.
  • params — query parameters: :before, :after_, :limit, :order
  • opts — per-request options (see WorkOS.Client.request/5)

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

@spec list_organization_memberships(WorkOS.Client.t(), map(), keyword()) ::
  {:ok, WorkOS.Page.t(WorkOS.UserOrganizationMembership.t())}
  | {:error, WorkOS.Error.error()}

List organization memberships

Get a list of all organization memberships matching the criteria specified. At least one of user_id or organization_id must be provided. By default only active memberships are returned. Use the statuses parameter to filter by other statuses.

Parameters

  • params — query parameters: :before, :after_, :limit, :order, :organization_id, :statuses, :user_id
  • opts — per-request options (see WorkOS.Client.request/5)

reactivate_organization_membership(client, id, opts \\ [])

@spec reactivate_organization_membership(WorkOS.Client.t(), String.t(), keyword()) ::
  {:ok, WorkOS.UserOrganizationMembership.t()} | {:error, WorkOS.Error.error()}

Reactivate an organization membership

Reactivates an inactive organization membership, retaining the pre-existing role(s). Emits an organization_membership.updated event upon successful reactivation.

  • Reactivating an active membership is a no-op and does not emit an event.
  • Reactivating a pending membership returns an error. The user needs to accept the invitation instead.

See the membership management documentation for additional details.

Parameters

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

@spec update_organization_membership(WorkOS.Client.t(), String.t(), map(), keyword()) ::
  {:ok, WorkOS.UserOrganizationMembership.t()} | {:error, WorkOS.Error.error()}

Update an organization membership

Update the details of an existing organization membership.

Parameters

  • id — The unique ID of the organization membership.
  • params — request body map
  • opts — per-request options (see WorkOS.Client.request/5)