View Source ExPipedrive.Roles (ex_pipedrive v0.2.0)

API v1 client for Pipedrive roles (visibility groups).

Read-first surface against /api/v1/roles. Role create/update/delete and assignment writes are deferred; use ExPipedrive.Raw if needed.

Summary

Functions

Fetches a role via GET /api/v1/roles/:id.

Lists roles via GET /api/v1/roles.

Lists role assignments via GET /api/v1/roles/:id/assignments.

Lists pipeline visibility for a role via GET /api/v1/roles/:id/pipelines.

Lists role settings via GET /api/v1/roles/:id/settings.

Functions

@spec get(Tesla.Client.t(), pos_integer()) ::
  {:ok, ExPipedrive.Role.t()} | {:error, ExPipedrive.Error.t()}

Fetches a role via GET /api/v1/roles/:id.

Returns {:ok, %Role{}}.

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

Lists roles via GET /api/v1/roles.

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

Link to this function

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

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

Lists role assignments via GET /api/v1/roles/:id/assignments.

Options: :start, :limit. Returns {:ok, %PagedResult{}}.

Link to this function

list_pipelines(client, role_id)

View Source
@spec list_pipelines(Tesla.Client.t(), pos_integer()) ::
  {:ok, map() | list()} | {:error, ExPipedrive.Error.t()}

Lists pipeline visibility for a role via GET /api/v1/roles/:id/pipelines.

Returns {:ok, map()} — the Pipedrive data payload as decoded JSON.

Link to this function

list_settings(client, role_id)

View Source
@spec list_settings(Tesla.Client.t(), pos_integer()) ::
  {:ok, map()} | {:error, ExPipedrive.Error.t()}

Lists role settings via GET /api/v1/roles/:id/settings.

Returns {:ok, map()} — the Pipedrive data payload as decoded JSON.