Module: Slack::Web::Api::Endpoints::Groups

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

Instance Method Summary collapse

Instance Method Details

#groups_archive(options = {}) ⇒ Object

Archives a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to archive.

See Also:



15
16
17
18
19
# File 'lib/slack/web/api/endpoints/groups.rb', line 15

def groups_archive(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.archive', options)
end

#groups_create(options = {}) ⇒ Object

Creates a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :name (Object)

    Name of private channel to create.

  • :validate (Object)

    Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.

See Also:



30
31
32
33
# File 'lib/slack/web/api/endpoints/groups.rb', line 30

def groups_create(options = {})
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
  post('groups.create', options)
end

#groups_createChild(options = {}) ⇒ Object

Clones and archives a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to clone and archive.

See Also:



42
43
44
45
46
# File 'lib/slack/web/api/endpoints/groups.rb', line 42

def groups_createChild(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.createChild', options)
end

#groups_history(options = {}) ⇒ Object

Fetches history of messages and events from a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to fetch history for.

  • :inclusive (Object)

    Include messages with latest or oldest timestamp in results.

  • :latest (timestamp)

    End of time range of messages to include in results.

  • :oldest (timestamp)

    Start of time range of messages to include in results.

  • :unreads (Object)

    Include unread_count_display in the output?.

See Also:



63
64
65
66
67
# File 'lib/slack/web/api/endpoints/groups.rb', line 63

def groups_history(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.history', options)
end

#groups_info(options = {}) ⇒ Object

Gets information about a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to get info on.

  • :include_locale (Object)

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

See Also:



78
79
80
81
82
# File 'lib/slack/web/api/endpoints/groups.rb', line 78

def groups_info(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.info', options)
end

#groups_invite(options = {}) ⇒ Object

Invites a user to a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to invite user to.

  • :user (user)

    User to invite.

See Also:



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

def groups_invite(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('groups.invite', options)
end

#groups_kick(options = {}) ⇒ Object

Removes a user from a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to remove user from.

  • :user (user)

    User to remove from private channel.

See Also:



110
111
112
113
114
115
116
# File 'lib/slack/web/api/endpoints/groups.rb', line 110

def groups_kick(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('groups.kick', options)
end

#groups_leave(options = {}) ⇒ Object

Leaves a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to leave.

See Also:



125
126
127
128
129
# File 'lib/slack/web/api/endpoints/groups.rb', line 125

def groups_leave(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.leave', options)
end

#groups_list(options = {}) ⇒ Object

Lists private channels that the calling user has access to.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :exclude_archived (Object)

    Don’t return archived private channels.

  • :exclude_members (Object)

    Exclude the members from each group.

See Also:



140
141
142
# File 'lib/slack/web/api/endpoints/groups.rb', line 140

def groups_list(options = {})
  post('groups.list', options)
end

#groups_mark(options = {}) ⇒ Object

Sets the read cursor in a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to set reading cursor in.

  • :ts (timestamp)

    Timestamp of the most recently seen message.

See Also:



153
154
155
156
157
158
# File 'lib/slack/web/api/endpoints/groups.rb', line 153

def groups_mark(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.mark', options)
end

#groups_open(options = {}) ⇒ Object

Opens a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to open.

See Also:



167
168
169
170
171
# File 'lib/slack/web/api/endpoints/groups.rb', line 167

def groups_open(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.open', options)
end

#groups_rename(options = {}) ⇒ Object

Renames a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to rename.

  • :name (Object)

    New name for private channel.

  • :validate (Object)

    Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.

See Also:



184
185
186
187
188
189
# File 'lib/slack/web/api/endpoints/groups.rb', line 184

def groups_rename(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.rename', options)
end

#groups_replies(options = {}) ⇒ Object

Retrieve a thread of messages posted to a private channel

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to fetch thread from.

  • :thread_ts (Object)

    Unique identifier of a thread’s parent message.

See Also:



200
201
202
203
204
205
# File 'lib/slack/web/api/endpoints/groups.rb', line 200

def groups_replies(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.replies', options)
end

#groups_setPurpose(options = {}) ⇒ Object

Sets the purpose for a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to set the purpose of.

  • :purpose (Object)

    The new purpose.

See Also:



216
217
218
219
220
221
# File 'lib/slack/web/api/endpoints/groups.rb', line 216

def groups_setPurpose(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :purpose missing') if options[:purpose].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.setPurpose', options)
end

#groups_setTopic(options = {}) ⇒ Object

Sets the topic for a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to set the topic of.

  • :topic (Object)

    The new topic.

See Also:



232
233
234
235
236
237
# File 'lib/slack/web/api/endpoints/groups.rb', line 232

def groups_setTopic(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :topic missing') if options[:topic].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.setTopic', options)
end

#groups_unarchive(options = {}) ⇒ Object

Unarchives a private channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (group)

    Private channel to unarchive.

See Also:



246
247
248
249
250
# File 'lib/slack/web/api/endpoints/groups.rb', line 246

def groups_unarchive(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
  post('groups.unarchive', options)
end