ExStreamClient.Operations.Users (ExStreamClient v0.1.6)

View Source

Modules for interacting with the users group of Stream APIs

API Reference: https://getstream.github.io/protocol/?urls.primaryName=Chat%20v2

Shared options

All functions in this module accept the following optional parameters:

  • api_key - API key to use. If not provided, the default key from config will be used
  • api_key_secret - API key secret to use. If not provided, the default secret from config will be used
  • endpoint - endpoint to use. If not provided, the default endpoint from config will be used
  • client - HTTP client to use. Must implement ExStreamClient.Http.Behavior. Defaults to ExStreamClient.Http
  • req_opts - all of these options will be forwarded to req. See Req.new/1 for available options

Summary

Functions

Deactivates user with possibility to activate it back

Deactivate users in batches

Deletes users and optionally all their belongings asynchronously.

Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions

Get list of blocked Users

Find and filter users

Activates user who's been deactivated previously

Reactivate users in batches

Restore soft deleted users

Update or create users in bulk

Updates certain fields of the user

Functions

block_users(payload, opts \\ [])

Block users

Required Arguments:

All options from Shared Options are supported.

deactivate_user(user_id, payload, opts \\ [])

Deactivates user with possibility to activate it back

Sends events:

  • user.deactivated

Required Arguments:

All options from Shared Options are supported.

deactivate_users(payload, opts \\ [])

Deactivate users in batches

Sends events:

  • user.deactivated

Required Arguments:

All options from Shared Options are supported.

delete_users(payload, opts \\ [])

Deletes users and optionally all their belongings asynchronously.

Sends events:

  • channel.deleted
  • user.deleted

Required Arguments:

All options from Shared Options are supported.

export_user(user_id, opts \\ [])

Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions

Required Arguments:

  • user_id

All options from Shared Options are supported.

get_blocked_users(opts \\ [])

@spec get_blocked_users(
  req_opts: keyword(),
  client: module(),
  endpoint: String.t(),
  api_key: String.t(),
  api_key_secret: String.t(),
  user_id: String.t()
) :: {:ok, ExStreamClient.Model.GetBlockedUsersResponse.t()} | {:error, any()}

Get list of blocked Users

Optional Arguments:

  • user_id

All options from Shared Options are supported.

query_users(opts \\ [])

@spec query_users(
  req_opts: keyword(),
  client: module(),
  endpoint: String.t(),
  api_key: String.t(),
  api_key_secret: String.t(),
  payload: ExStreamClient.Model.QueryUsersPayload.t()
) :: {:ok, ExStreamClient.Model.QueryUsersResponse.t()} | {:error, any()}

Find and filter users

Optional Arguments:

All options from Shared Options are supported.

reactivate_user(user_id, payload, opts \\ [])

Activates user who's been deactivated previously

Sends events:

  • user.reactivated

Required Arguments:

All options from Shared Options are supported.

reactivate_users(payload, opts \\ [])

Reactivate users in batches

Sends events:

  • user.reactivated
  • user.reactivated

Required Arguments:

All options from Shared Options are supported.

restore_users(payload, opts \\ [])

Restore soft deleted users

Required Arguments:

All options from Shared Options are supported.

unblock_users(payload, opts \\ [])

Unblock users

Required Arguments:

All options from Shared Options are supported.

update_users(payload, opts \\ [])

Update or create users in bulk

Sends events:

  • user.updated

Required Arguments:

All options from Shared Options are supported.

update_users_partial(payload, opts \\ [])

Updates certain fields of the user

Sends events:

  • user.presence.changed
  • user.updated
  • user.presence.changed

Required Arguments:

All options from Shared Options are supported.