module Slack::Web::Api::Endpoints::Groups

Public Instance Methods

groups_archive(options = {}) click to toggle source

Archives a private channel.

@option options [group] :channel

Private channel to archive.

@see api.slack.com/methods/groups.archive @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.archive.json

# 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 = {}) click to toggle source

Creates a private channel.

@option options [Object] :name

Name of private channel to create.

@option options [Object] :validate

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

@see api.slack.com/methods/groups.create @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.create.json

# 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 = {}) click to toggle source

Clones and archives a private channel.

@option options [group] :channel

Private channel to clone and archive.

@see api.slack.com/methods/groups.createChild @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.createChild.json

# 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 = {}) click to toggle source

Fetches history of messages and events from a private channel.

@option options [group] :channel

Private channel to fetch history for.

@option options [Object] :inclusive

Include messages with latest or oldest timestamp in results.

@option options [timestamp] :latest

End of time range of messages to include in results.

@option options [timestamp] :oldest

Start of time range of messages to include in results.

@option options [Object] :unreads

Include unread_count_display in the output?.

@see api.slack.com/methods/groups.history @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.history.json

# 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 = {}) click to toggle source

Gets information about a private channel.

@option options [group] :channel

Private channel to get info on.

@option options [Object] :include_locale

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

@see api.slack.com/methods/groups.info @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.info.json

# 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 = {}) click to toggle source

Invites a user to a private channel.

@option options [group] :channel

Private channel to invite user to.

@option options [user] :user

User to invite.

@see api.slack.com/methods/groups.invite @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.invite.json

# 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 = {}) click to toggle source

Removes a user from a private channel.

@option options [group] :channel

Private channel to remove user from.

@option options [user] :user

User to remove from private channel.

@see api.slack.com/methods/groups.kick @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.kick.json

# 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 = {}) click to toggle source

Leaves a private channel.

@option options [group] :channel

Private channel to leave.

@see api.slack.com/methods/groups.leave @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.leave.json

# 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 = {}) click to toggle source

Lists private channels that the calling user has access to.

@option options [Object] :exclude_archived

Don't return archived private channels.

@option options [Object] :exclude_members

Exclude the members from each group.

@see api.slack.com/methods/groups.list @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.list.json

# File lib/slack/web/api/endpoints/groups.rb, line 140
def groups_list(options = {})
  post('groups.list', options)
end
groups_mark(options = {}) click to toggle source

Sets the read cursor in a private channel.

@option options [group] :channel

Private channel to set reading cursor in.

@option options [timestamp] :ts

Timestamp of the most recently seen message.

@see api.slack.com/methods/groups.mark @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.mark.json

# 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 = {}) click to toggle source

Opens a private channel.

@option options [group] :channel

Private channel to open.

@see api.slack.com/methods/groups.open @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.open.json

# 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 = {}) click to toggle source

Renames a private channel.

@option options [group] :channel

Private channel to rename.

@option options [Object] :name

New name for private channel.

@option options [Object] :validate

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

@see api.slack.com/methods/groups.rename @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.rename.json

# 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 = {}) click to toggle source

Retrieve a thread of messages posted to a private channel

@option options [group] :channel

Private channel to fetch thread from.

@option options [Object] :thread_ts

Unique identifier of a thread's parent message.

@see api.slack.com/methods/groups.replies @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.replies.json

# 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 = {}) click to toggle source

Sets the purpose for a private channel.

@option options [group] :channel

Private channel to set the purpose of.

@option options [Object] :purpose

The new purpose.

@see api.slack.com/methods/groups.setPurpose @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.setPurpose.json

# 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 = {}) click to toggle source

Sets the topic for a private channel.

@option options [group] :channel

Private channel to set the topic of.

@option options [Object] :topic

The new topic.

@see api.slack.com/methods/groups.setTopic @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.setTopic.json

# 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 = {}) click to toggle source

Unarchives a private channel.

@option options [group] :channel

Private channel to unarchive.

@see api.slack.com/methods/groups.unarchive @see github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.unarchive.json

# 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