Spatio.Api.Contacts (spatio_sdk v0.0.2)

API calls for all endpoints tagged Contacts.

Summary

Functions

assign_contact_category(connection, id, assign_contact_category_request, opts \\ [])

@spec assign_contact_category(
  Tesla.Env.client(),
  String.t(),
  Spatio.Model.AssignContactCategoryRequest.t(),
  keyword()
) :: {:ok, nil} | {:ok, Spatio.Model.ApiError.t()} | {:error, Tesla.Env.t()}

Assign a category to a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • assign_contact_category_request (AssignContactCategoryRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

create_contact(connection, create_contact_request, opts \\ [])

@spec create_contact(
  Tesla.Env.client(),
  Spatio.Model.CreateContactRequest.t(),
  keyword()
) ::
  {:ok, Spatio.Model.Contact.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Create a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • create_contact_request (CreateContactRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.Contact.t} on success
  • {:error, Tesla.Env.t} on failure

create_contact_category(connection, create_contact_category_request, opts \\ [])

Create a contact category.

Parameters

  • connection (Spatio.Connection): Connection to server
  • create_contact_category_request (CreateContactCategoryRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ContactCategory.t} on success
  • {:error, Tesla.Env.t} on failure

delete_contact(connection, id, opts \\ [])

@spec delete_contact(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, Spatio.Model.ApiError.t()} | {:error, Tesla.Env.t()}

Delete a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

delete_contact_category(connection, id, opts \\ [])

@spec delete_contact_category(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, Spatio.Model.ApiError.t()} | {:error, Tesla.Env.t()}

Delete a category.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

get_contact(connection, id, opts \\ [])

@spec get_contact(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, Spatio.Model.Contact.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Fetch a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.Contact.t} on success
  • {:error, Tesla.Env.t} on failure

list_contact_categories(connection, organization_id, opts \\ [])

@spec list_contact_categories(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, Spatio.Model.ApiError.t()}
  | {:ok, Spatio.Model.ContactCategoryListResponse.t()}
  | {:error, Tesla.Env.t()}

List contact categories. Requires organization_id query param.

Parameters

  • connection (Spatio.Connection): Connection to server
  • organization_id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ContactCategoryListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

list_contact_providers(connection, opts \\ [])

@spec list_contact_providers(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ContactProviderListResponse.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

List supported contact providers (native + OAuth-connected).

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ContactProviderListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

list_contacts(connection, opts \\ [])

@spec list_contacts(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ContactListResponse.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

List the caller's contacts (across providers).

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :limit (integer()):
    • :provider (String.t):
    • :search (String.t):

Returns

  • {:ok, Spatio.Model.ContactListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

unassign_contact_category(connection, id, category_id, opts \\ [])

@spec unassign_contact_category(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, Spatio.Model.ApiError.t()} | {:error, Tesla.Env.t()}

Remove a category from a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • category_id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

update_contact(connection, id, update_contact_request, opts \\ [])

Update a contact.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • update_contact_request (UpdateContactRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.Contact.t} on success
  • {:error, Tesla.Env.t} on failure

update_contact_category(connection, id, update_contact_category_request, opts \\ [])

Update a category.

Parameters

  • connection (Spatio.Connection): Connection to server
  • id (String.t):
  • update_contact_category_request (UpdateContactCategoryRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ContactCategory.t} on success
  • {:error, Tesla.Env.t} on failure