zen_ex v0.7.0 ZenEx.Model.UserIdentity

Provides functions to operate Zendesk User Identities.

Link to this section Summary

Functions

Create user's identity.

Delete user's identity specified by id.

List user's identities.

Make primary user's identity specified by id.

Request user verification for user's identity specified by id.

Show user's identity specified by id.

Update user's identity specified by id.

Verify user's identity specified by id.

Link to this section Functions

Link to this function

create(user, identity)

Specs

create(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  %ZenEx.Entity.UserIdentity{
    created_at: term(),
    deliverable_state: term(),
    id: term(),
    primary: term(),
    type: term(),
    undeliverable_count: term(),
    updated_at: term(),
    url: term(),
    user_id: term(),
    value: term(),
    verified: term()
  }
) ::
  %ZenEx.Entity.UserIdentity{
    created_at: term(),
    deliverable_state: term(),
    id: term(),
    primary: term(),
    type: term(),
    undeliverable_count: term(),
    updated_at: term(),
    url: term(),
    user_id: term(),
    value: term(),
    verified: term()
  }
  | {:error, String.t()}
  | nil

Create user's identity.

Examples

iex> ZenEx.Model.UserIdentity.create(%ZenEx.Entity.User{id: xxx}, %ZenEx.Entity.UserIdentity{type: "xxx", value: "xxx"})
%ZenEx.Entity.UserIdentity{id: xxx, value: "xxx", ...}
Link to this function

destroy(user, id)

Specs

destroy(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  integer()
) :: :ok | :error

Delete user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.destroy(%ZenEx.Entity.User{id: 1}, 1)
:ok
Link to this function

list(user, opts \\ [])

List user's identities.

Examples

iex> ZenEx.Model.UserIdentity.list(%ZenEx.Entity.User{id: xxx})
%ZenEx.Collection{}
Link to this function

make_primary(user, id)

Specs

make_primary(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  integer()
) ::
  %ZenEx.Collection{
    count: term(),
    decode_as: term(),
    entities: term(),
    next_page: term(),
    previous_page: term()
  }
  | {:error, String.t()}

Make primary user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.make_primary(%ZenEx.Entity.User{id: 1}, 1)
%ZenEx.Collection{}
Link to this function

request_user_verification(user, id)

Specs

request_user_verification(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  integer()
) :: :ok | :error

Request user verification for user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.request_user_verification(%ZenEx.Entity.User{id: 1}, 1)
%ZenEx.Collection{}

Specs

show(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  integer()
) ::
  %ZenEx.Entity.UserIdentity{
    created_at: term(),
    deliverable_state: term(),
    id: term(),
    primary: term(),
    type: term(),
    undeliverable_count: term(),
    updated_at: term(),
    url: term(),
    user_id: term(),
    value: term(),
    verified: term()
  }
  | {:error, String.t()}

Show user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.show(%ZenEx.Entity.User{id: xxx}, 1)
%ZenEx.Entity.UserIdentity{id: 1, type: "xxx", ...}
Link to this function

update(user, identity)

Specs

update(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  %ZenEx.Entity.UserIdentity{
    created_at: term(),
    deliverable_state: term(),
    id: term(),
    primary: term(),
    type: term(),
    undeliverable_count: term(),
    updated_at: term(),
    url: term(),
    user_id: term(),
    value: term(),
    verified: term()
  }
) ::
  %ZenEx.Entity.UserIdentity{
    created_at: term(),
    deliverable_state: term(),
    id: term(),
    primary: term(),
    type: term(),
    undeliverable_count: term(),
    updated_at: term(),
    url: term(),
    user_id: term(),
    value: term(),
    verified: term()
  }
  | {:error, String.t()}

Update user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.update(%ZenEx.Entity.User{id: 1}, %ZenEx.Entity.UserIdentity{id: xxx, type: "xxx"})
%ZenEx.Entity.UserIdentity{id: 1, type: "xxx", ...}
Link to this function

verify(user, id)

Specs

verify(
  %ZenEx.Entity.User{
    active: term(),
    alias: term(),
    created_at: term(),
    custom_role_id: term(),
    details: term(),
    email: term(),
    external_id: term(),
    id: term(),
    last_login_at: term(),
    locale: term(),
    locale_id: term(),
    moderator: term(),
    name: term(),
    notes: term(),
    only_private_comments: term(),
    organization_id: term(),
    phone: term(),
    restricted_agent: term(),
    role: term(),
    shared: term(),
    shared_agent: term(),
    signature: term(),
    suspended: term(),
    tags: term(),
    ticket_restriction: term(),
    time_zone: term(),
    updated_at: term(),
    url: term(),
    user_fields: term(),
    verified: term()
  },
  integer()
) :: :ok | :error

Verify user's identity specified by id.

Examples

iex> ZenEx.Model.UserIdentity.verify(%ZenEx.Entity.User{id: 1}, 1)
:ok