View Source ExPipedrive.PermissionSets (ex_pipedrive v0.2.0)

API v1 client for Pipedrive permission sets.

Read-only surface against /api/v1/permissionSets (admin OAuth scope). There is no /api/v2 equivalent.

Summary

Functions

Fetches a permission set via GET /api/v1/permissionSets/:id.

Lists permission sets via GET /api/v1/permissionSets.

Lists users assigned to a permission set via GET /api/v1/permissionSets/:id/assignments.

Functions

Link to this function

get(client, permission_set_id)

View Source
@spec get(Tesla.Client.t(), String.t()) ::
  {:ok, ExPipedrive.PermissionSet.t()} | {:error, ExPipedrive.Error.t()}

Fetches a permission set via GET /api/v1/permissionSets/:id.

Pipedrive may return data as a single object or a one-element list; both are accepted. Returns {:ok, %PermissionSet{}}.

Link to this function

list(client, opts \\ [])

View Source
@spec list(
  Tesla.Client.t(),
  keyword()
) :: {:ok, [ExPipedrive.PermissionSet.t()]} | {:error, ExPipedrive.Error.t()}

Lists permission sets via GET /api/v1/permissionSets.

Options: :app — filter by app ("sales", "projects", "campaigns", "global", "account_settings").

Returns {:ok, [%PermissionSet{}]}.

Link to this function

list_assignments(client, permission_set_id, opts \\ [])

View Source
@spec list_assignments(Tesla.Client.t(), String.t(), keyword()) ::
  {:ok, ExPipedrive.PagedResult.t()} | {:error, ExPipedrive.Error.t()}

Lists users assigned to a permission set via GET /api/v1/permissionSets/:id/assignments.

Options: :start, :limit. Returns {:ok, %PagedResult{}} whose :data is a list of assignment maps ("user_id", …) as returned by Pipedrive.