ExStreamClient.Operations.Users (ExStreamClient v0.1.7)

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

Types

shared_opts()

@type shared_opts() :: [
  api_key: String.t(),
  api_key_secret: String.t(),
  client: module(),
  endpoint: String.t(),
  req_opts: keyword()
]

Functions

block_users(payload, opts \\ [])

Block users

Required Arguments:

Optional Arguments:

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

Deactivates user with possibility to activate it back

Sends events:

  • user.deactivated

Required Arguments:

Optional Arguments:

deactivate_users(payload, opts \\ [])

Deactivate users in batches

Sends events:

  • user.deactivated

Required Arguments:

Optional Arguments:

delete_users(payload, opts \\ [])

Deletes users and optionally all their belongings asynchronously.

Sends events:

  • channel.deleted
  • user.deleted

Required Arguments:

Optional Arguments:

export_user(user_id, opts \\ [])

@spec export_user(String.t(), shared_opts()) ::
  {:ok, ExStreamClient.Model.ExportUserResponse.t()} | {:error, any()}

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

Optional Arguments:

get_blocked_users(opts \\ [])

@spec get_blocked_users([{:user_id, String.t()} | shared_opts()]) ::
  {:ok, ExStreamClient.Model.GetBlockedUsersResponse.t()} | {:error, any()}

Get list of blocked Users

Optional Arguments:

query_users(opts \\ [])

@spec query_users([
  {:payload, ExStreamClient.Model.QueryUsersPayload.t()} | shared_opts()
]) ::
  {:ok, ExStreamClient.Model.QueryUsersResponse.t()} | {:error, any()}

Find and filter users

Optional Arguments:

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

Activates user who's been deactivated previously

Sends events:

  • user.reactivated

Required Arguments:

Optional Arguments:

reactivate_users(payload, opts \\ [])

Reactivate users in batches

Sends events:

  • user.reactivated
  • user.reactivated

Required Arguments:

Optional Arguments:

restore_users(payload, opts \\ [])

Restore soft deleted users

Required Arguments:

Optional Arguments:

unblock_users(payload, opts \\ [])

Unblock users

Required Arguments:

Optional Arguments:

update_users(payload, opts \\ [])

Update or create users in bulk

Sends events:

  • user.updated

Required Arguments:

Optional Arguments:

update_users_partial(payload, opts \\ [])

Updates certain fields of the user

Sends events:

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

Required Arguments:

Optional Arguments: