Module: Slack::Web::Api::Endpoints::Users

Included in:
Slack::Web::Api::Endpoints
Defined in:
lib/slack/web/api/endpoints/users.rb

Instance Method Summary collapse

Instance Method Details

#users_conversations(options = {}) ⇒ Object

List conversations the calling user may access.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :cursor (Object)

    Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request’s response_metadata. Default value fetches the first “page” of the collection. See pagination for more detail.

  • :exclude_archived (Object)

    Set to true to exclude archived channels from the list.

  • :limit (Object)

    The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the list hasn’t been reached. Must be an integer no larger than 1000.

  • :types (Object)

    Mix and match channel types by providing a comma-separated list of any combination of public_channel, private_channel, mpim, im.

  • :user (user)

    Browse conversations by a specific user ID’s membership. Non-public channels are restricted to those where the calling user shares membership.

See Also:



24
25
26
27
28
29
30
31
32
33
# File 'lib/slack/web/api/endpoints/users.rb', line 24

def users_conversations(options = {})
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  if block_given?
    Pagination::Cursor.new(self, :users_conversations, options).each do |page|
      yield page
    end
  else
    post('users.conversations', options)
  end
end

#users_deletePhoto(options = {}) ⇒ Object

Delete the user profile photo



40
41
42
# File 'lib/slack/web/api/endpoints/users.rb', line 40

def users_deletePhoto(options = {})
  post('users.deletePhoto', options)
end

#users_getPresence(options = {}) ⇒ Object

Gets user presence information.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :user (user)

    User to get presence info on. Defaults to the authed user.

See Also:



51
52
53
54
55
# File 'lib/slack/web/api/endpoints/users.rb', line 51

def users_getPresence(options = {})
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('users.getPresence', options)
end

#users_identity(options = {}) ⇒ Object

Get a user’s identity.



62
63
64
# File 'lib/slack/web/api/endpoints/users.rb', line 62

def users_identity(options = {})
  post('users.identity', options)
end

#users_info(options = {}) ⇒ Object

Gets information about a user.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :user (user)

    User to get info on.

  • :include_locale (Object)

    Set this to true to receive the locale for this user. Defaults to false.

See Also:



75
76
77
78
79
# File 'lib/slack/web/api/endpoints/users.rb', line 75

def users_info(options = {})
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('users.info', options)
end

#users_list(options = {}) ⇒ Object

Lists all users in a Slack team.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :cursor (Object)

    Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request’s response_metadata. Default value fetches the first “page” of the collection. See pagination for more detail.

  • :include_locale (Object)

    Set this to true to receive the locale for users. Defaults to false.

  • :limit (Object)

    The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the users list hasn’t been reached.

See Also:



92
93
94
95
96
97
98
99
100
# File 'lib/slack/web/api/endpoints/users.rb', line 92

def users_list(options = {})
  if block_given?
    Pagination::Cursor.new(self, :users_list, options).each do |page|
      yield page
    end
  else
    post('users.list', options)
  end
end

#users_lookupByEmail(options = {}) ⇒ Object

Find a user with an email address.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :email (Object)

    An email address belonging to a user in the workspace.

See Also:



109
110
111
112
# File 'lib/slack/web/api/endpoints/users.rb', line 109

def users_lookupByEmail(options = {})
  throw ArgumentError.new('Required arguments :email missing') if options[:email].nil?
  post('users.lookupByEmail', options)
end

#users_setActive(options = {}) ⇒ Object

Marked a user as active. Deprecated and non-functional.



119
120
121
# File 'lib/slack/web/api/endpoints/users.rb', line 119

def users_setActive(options = {})
  post('users.setActive', options)
end

#users_setPhoto(options = {}) ⇒ Object

Set the user profile photo

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :image (Object)

    File contents via multipart/form-data.

  • :crop_w (Object)

    Width/height of crop box (always square).

  • :crop_x (Object)

    X coordinate of top-left corner of crop box.

  • :crop_y (Object)

    Y coordinate of top-left corner of crop box.

See Also:



136
137
138
139
# File 'lib/slack/web/api/endpoints/users.rb', line 136

def users_setPhoto(options = {})
  throw ArgumentError.new('Required arguments :image missing') if options[:image].nil?
  post('users.setPhoto', options)
end

#users_setPresence(options = {}) ⇒ Object

Manually sets user presence.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :presence (Object)

    Either auto or away.

See Also:



148
149
150
151
# File 'lib/slack/web/api/endpoints/users.rb', line 148

def users_setPresence(options = {})
  throw ArgumentError.new('Required arguments :presence missing') if options[:presence].nil?
  post('users.setPresence', options)
end