slack-ruby-client 0.15.1 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/.rubocop_todo.yml +0 -14
- data/.travis.yml +1 -4
- data/CHANGELOG.md +8 -0
- data/CONTRIBUTING.md +3 -10
- data/README.md +9 -27
- data/UPGRADING.md +14 -2
- data/bin/commands.rb +7 -0
- data/bin/commands/admin_analytics.rb +15 -0
- data/bin/commands/admin_apps.rb +15 -2
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +154 -2
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +4 -4
- data/bin/commands/admin_conversations_whitelist.rb +1 -1
- data/bin/commands/admin_emoji.rb +1 -1
- data/bin/commands/admin_usergroups.rb +2 -2
- data/bin/commands/admin_users.rb +2 -2
- data/bin/commands/admin_users_session.rb +22 -0
- data/bin/commands/api.rb +0 -1
- data/bin/commands/apps_connections.rb +13 -0
- data/bin/commands/apps_event_authorizations.rb +16 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bots.rb +1 -0
- data/bin/commands/channels.rb +6 -3
- data/bin/commands/chat.rb +4 -4
- data/bin/commands/chat_scheduledMessages.rb +1 -0
- data/bin/commands/conversations.rb +14 -2
- data/bin/commands/dnd.rb +1 -1
- data/bin/commands/files.rb +6 -5
- data/bin/commands/files_remote.rb +2 -2
- data/bin/commands/groups.rb +5 -3
- data/bin/commands/im.rb +1 -1
- data/bin/commands/migration.rb +1 -0
- data/bin/commands/mpim.rb +3 -3
- data/bin/commands/pins.rb +0 -2
- data/bin/commands/reactions.rb +1 -0
- data/bin/commands/search.rb +4 -1
- data/bin/commands/team.rb +3 -0
- data/bin/commands/usergroups.rb +6 -1
- data/bin/commands/usergroups_users.rb +2 -0
- data/bin/commands/users.rb +5 -3
- data/bin/commands/users_profile.rb +5 -5
- data/bin/commands/views.rb +1 -1
- data/bin/commands/workflows.rb +38 -0
- data/lib/slack-ruby-client.rb +2 -0
- data/lib/slack/events/request.rb +5 -1
- data/lib/slack/real_time/client.rb +0 -1
- data/lib/slack/real_time/concurrency.rb +0 -2
- data/lib/slack/real_time/config.rb +5 -4
- data/lib/slack/version.rb +1 -1
- data/lib/slack/web/api/endpoints.rb +14 -0
- data/lib/slack/web/api/endpoints/admin_analytics.rb +26 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +22 -2
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +231 -1
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +3 -3
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +3 -3
- data/lib/slack/web/api/endpoints/admin_emoji.rb +1 -1
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +1 -1
- data/lib/slack/web/api/endpoints/admin_users.rb +4 -6
- data/lib/slack/web/api/endpoints/admin_users_session.rb +38 -0
- data/lib/slack/web/api/endpoints/api.rb +0 -2
- data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
- data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
- data/lib/slack/web/api/endpoints/bots.rb +2 -0
- data/lib/slack/web/api/endpoints/channels.rb +9 -3
- data/lib/slack/web/api/endpoints/chat.rb +3 -3
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +2 -0
- data/lib/slack/web/api/endpoints/conversations.rb +21 -1
- data/lib/slack/web/api/endpoints/files.rb +4 -2
- data/lib/slack/web/api/endpoints/files_remote.rb +2 -2
- data/lib/slack/web/api/endpoints/groups.rb +7 -3
- data/lib/slack/web/api/endpoints/im.rb +1 -1
- data/lib/slack/web/api/endpoints/migration.rb +2 -0
- data/lib/slack/web/api/endpoints/mpim.rb +3 -3
- data/lib/slack/web/api/endpoints/pins.rb +0 -5
- data/lib/slack/web/api/endpoints/reactions.rb +2 -0
- data/lib/slack/web/api/endpoints/search.rb +6 -0
- data/lib/slack/web/api/endpoints/team.rb +6 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +10 -0
- data/lib/slack/web/api/endpoints/usergroups_users.rb +4 -0
- data/lib/slack/web/api/endpoints/users.rb +7 -5
- data/lib/slack/web/api/endpoints/users_profile.rb +3 -3
- data/lib/slack/web/api/endpoints/views.rb +1 -1
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/errors.rb +194 -0
- data/lib/slack/web/api/errors/internal_error.rb +14 -0
- data/lib/slack/web/api/templates/endpoints.erb +1 -0
- data/lib/slack/web/api/templates/method_spec.erb +1 -1
- data/lib/slack/web/faraday/connection.rb +1 -1
- data/lib/slack/web/faraday/response/raise_error.rb +16 -1
- data/lib/slack/web/faraday/response/wrap_error.rb +18 -0
- data/lib/tasks/web.rake +7 -3
- data/spec/slack/events/request_spec.rb +7 -3
- data/spec/slack/real_time/client_spec.rb +1 -1
- data/spec/slack/web/api/endpoints/admin_analytics_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +5 -0
- data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
- data/spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +5 -5
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +85 -0
- data/spec/slack/web/api/endpoints/admin_conversations_whitelist_spec.rb +5 -5
- data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +6 -6
- data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +10 -10
- data/spec/slack/web/api/endpoints/admin_teams_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +6 -6
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +15 -23
- data/spec/slack/web/api/endpoints/apps_connections_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/apps_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/auth_teams_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/calls_participants_spec.rb +4 -4
- data/spec/slack/web/api/endpoints/calls_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/conversations_spec.rb +20 -12
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/files_spec.rb +4 -4
- data/spec/slack/web/api/endpoints/im_spec.rb +4 -4
- data/spec/slack/web/api/endpoints/mpim_spec.rb +4 -4
- data/spec/slack/web/api/endpoints/oauth_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/pins_spec.rb +1 -4
- data/spec/slack/web/api/endpoints/reactions_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/reminders_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/workflows_spec.rb +26 -0
- data/spec/slack/web/client_spec.rb +56 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +7 -6
- metadata +32 -19
- data/examples/hi_real_time/Gemfile +0 -6
- data/examples/hi_real_time/hi.gif +0 -0
- data/examples/hi_real_time/hi.rb +0 -41
- data/examples/hi_real_time_async_celluloid/Gemfile +0 -7
- data/examples/hi_real_time_async_celluloid/Procfile +0 -2
- data/examples/hi_real_time_async_celluloid/hi.rb +0 -39
- data/examples/hi_real_time_async_eventmachine/Gemfile +0 -7
- data/examples/hi_real_time_async_eventmachine/Procfile +0 -2
- data/examples/hi_real_time_async_eventmachine/hi.rb +0 -39
- data/lib/slack/real_time/concurrency/celluloid.rb +0 -142
- data/lib/slack/real_time/concurrency/eventmachine.rb +0 -85
- data/spec/slack/real_time/concurrency/celluloid_spec.rb +0 -116
- data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -57
- data/spec/slack/web/api/errors/service_unavailable_spec.rb +0 -17
@@ -0,0 +1,82 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# This file was auto-generated by lib/tasks/web.rake
|
3
|
+
|
4
|
+
module Slack
|
5
|
+
module Web
|
6
|
+
module Api
|
7
|
+
module Endpoints
|
8
|
+
module AdminBarriers
|
9
|
+
#
|
10
|
+
# Create an Information Barrier
|
11
|
+
#
|
12
|
+
# @option options [Object] :barriered_from_usergroup_ids
|
13
|
+
# A list of IDP Groups ids that the primary usergroup is to be barriered from.
|
14
|
+
# @option options [Object] :primary_usergroup_id
|
15
|
+
# The id of the primary IDP Group.
|
16
|
+
# @option options [Object] :restricted_subjects
|
17
|
+
# What kind of interactions are blocked by this barrier? For v1, we only support a list of all 3, eg im, mpim, call.
|
18
|
+
# @see https://api.slack.com/methods/admin.barriers.create
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.barriers/admin.barriers.create.json
|
20
|
+
def admin_barriers_create(options = {})
|
21
|
+
throw ArgumentError.new('Required arguments :barriered_from_usergroup_ids missing') if options[:barriered_from_usergroup_ids].nil?
|
22
|
+
throw ArgumentError.new('Required arguments :primary_usergroup_id missing') if options[:primary_usergroup_id].nil?
|
23
|
+
throw ArgumentError.new('Required arguments :restricted_subjects missing') if options[:restricted_subjects].nil?
|
24
|
+
post('admin.barriers.create', options)
|
25
|
+
end
|
26
|
+
|
27
|
+
#
|
28
|
+
# Delete an existing Information Barrier
|
29
|
+
#
|
30
|
+
# @option options [Object] :barrier_id
|
31
|
+
# The ID of the barrier you're trying to delete.
|
32
|
+
# @see https://api.slack.com/methods/admin.barriers.delete
|
33
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.barriers/admin.barriers.delete.json
|
34
|
+
def admin_barriers_delete(options = {})
|
35
|
+
throw ArgumentError.new('Required arguments :barrier_id missing') if options[:barrier_id].nil?
|
36
|
+
post('admin.barriers.delete', options)
|
37
|
+
end
|
38
|
+
|
39
|
+
#
|
40
|
+
# Get all Information Barriers for your organization
|
41
|
+
#
|
42
|
+
# @option options [Object] :cursor
|
43
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
44
|
+
# @option options [Object] :limit
|
45
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
46
|
+
# @see https://api.slack.com/methods/admin.barriers.list
|
47
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.barriers/admin.barriers.list.json
|
48
|
+
def admin_barriers_list(options = {})
|
49
|
+
if block_given?
|
50
|
+
Pagination::Cursor.new(self, :admin_barriers_list, options).each do |page|
|
51
|
+
yield page
|
52
|
+
end
|
53
|
+
else
|
54
|
+
post('admin.barriers.list', options)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
#
|
59
|
+
# Update an existing Information Barrier
|
60
|
+
#
|
61
|
+
# @option options [Object] :barrier_id
|
62
|
+
# The ID of the barrier you're trying to modify.
|
63
|
+
# @option options [Object] :barriered_from_usergroup_ids
|
64
|
+
# A list of IDP Groups ids that the primary usergroup is to be barriered from.
|
65
|
+
# @option options [Object] :primary_usergroup_id
|
66
|
+
# The id of the primary IDP Group.
|
67
|
+
# @option options [Object] :restricted_subjects
|
68
|
+
# What kind of interactions are blocked by this barrier? For v1, we only support a list of all 3, eg im, mpim, call.
|
69
|
+
# @see https://api.slack.com/methods/admin.barriers.update
|
70
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.barriers/admin.barriers.update.json
|
71
|
+
def admin_barriers_update(options = {})
|
72
|
+
throw ArgumentError.new('Required arguments :barrier_id missing') if options[:barrier_id].nil?
|
73
|
+
throw ArgumentError.new('Required arguments :barriered_from_usergroup_ids missing') if options[:barriered_from_usergroup_ids].nil?
|
74
|
+
throw ArgumentError.new('Required arguments :primary_usergroup_id missing') if options[:primary_usergroup_id].nil?
|
75
|
+
throw ArgumentError.new('Required arguments :restricted_subjects missing') if options[:restricted_subjects].nil?
|
76
|
+
post('admin.barriers.update', options)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
@@ -7,7 +7,225 @@ module Slack
|
|
7
7
|
module Endpoints
|
8
8
|
module AdminConversations
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# Archive a public or private channel.
|
11
|
+
#
|
12
|
+
# @option options [Object] :channel_id
|
13
|
+
# The channel to archive.
|
14
|
+
# @see https://api.slack.com/methods/admin.conversations.archive
|
15
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.archive.json
|
16
|
+
def admin_conversations_archive(options = {})
|
17
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
18
|
+
post('admin.conversations.archive', options)
|
19
|
+
end
|
20
|
+
|
21
|
+
#
|
22
|
+
# Convert a public channel to a private channel.
|
23
|
+
#
|
24
|
+
# @option options [Object] :channel_id
|
25
|
+
# The channel to convert to private.
|
26
|
+
# @see https://api.slack.com/methods/admin.conversations.convertToPrivate
|
27
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.convertToPrivate.json
|
28
|
+
def admin_conversations_convertToPrivate(options = {})
|
29
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
30
|
+
post('admin.conversations.convertToPrivate', options)
|
31
|
+
end
|
32
|
+
|
33
|
+
#
|
34
|
+
# Create a public or private channel-based conversation.
|
35
|
+
#
|
36
|
+
# @option options [Object] :is_private
|
37
|
+
# When true, creates a private channel instead of a public channel.
|
38
|
+
# @option options [Object] :name
|
39
|
+
# Name of the public or private channel to create.
|
40
|
+
# @option options [Object] :description
|
41
|
+
# Description of the public or private channel to create.
|
42
|
+
# @option options [Object] :org_wide
|
43
|
+
# When true, the channel will be available org-wide. Note: if the channel is not org_wide=true, you must specify a team_id for this channel.
|
44
|
+
# @option options [Object] :team_id
|
45
|
+
# The workspace to create the channel in. Note: this argument is required unless you set org_wide=true.
|
46
|
+
# @see https://api.slack.com/methods/admin.conversations.create
|
47
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.create.json
|
48
|
+
def admin_conversations_create(options = {})
|
49
|
+
throw ArgumentError.new('Required arguments :is_private missing') if options[:is_private].nil?
|
50
|
+
throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
|
51
|
+
post('admin.conversations.create', options)
|
52
|
+
end
|
53
|
+
|
54
|
+
#
|
55
|
+
# Delete a public or private channel.
|
56
|
+
#
|
57
|
+
# @option options [Object] :channel_id
|
58
|
+
# The channel to delete.
|
59
|
+
# @see https://api.slack.com/methods/admin.conversations.delete
|
60
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.delete.json
|
61
|
+
def admin_conversations_delete(options = {})
|
62
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
63
|
+
post('admin.conversations.delete', options)
|
64
|
+
end
|
65
|
+
|
66
|
+
#
|
67
|
+
# Disconnect a connected channel from one or more workspaces.
|
68
|
+
#
|
69
|
+
# @option options [Object] :channel_id
|
70
|
+
# The channel to be disconnected from some workspaces.
|
71
|
+
# @option options [Object] :leaving_team_ids
|
72
|
+
# The team to be removed from the channel. Currently only a single team id can be specified.
|
73
|
+
# @see https://api.slack.com/methods/admin.conversations.disconnectShared
|
74
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.disconnectShared.json
|
75
|
+
def admin_conversations_disconnectShared(options = {})
|
76
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
77
|
+
post('admin.conversations.disconnectShared', options)
|
78
|
+
end
|
79
|
+
|
80
|
+
#
|
81
|
+
# Get conversation preferences for a public or private channel.
|
82
|
+
#
|
83
|
+
# @option options [Object] :channel_id
|
84
|
+
# The channel to get preferences for.
|
85
|
+
# @see https://api.slack.com/methods/admin.conversations.getConversationPrefs
|
86
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getConversationPrefs.json
|
87
|
+
def admin_conversations_getConversationPrefs(options = {})
|
88
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
89
|
+
post('admin.conversations.getConversationPrefs', options)
|
90
|
+
end
|
91
|
+
|
92
|
+
#
|
93
|
+
# This API endpoint can be used by any admin to get a channel's retention policy.
|
94
|
+
#
|
95
|
+
# @option options [Object] :channel_id
|
96
|
+
# The channel to get the retention policy for.
|
97
|
+
# @see https://api.slack.com/methods/admin.conversations.getCustomRetention
|
98
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getCustomRetention.json
|
99
|
+
def admin_conversations_getCustomRetention(options = {})
|
100
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
101
|
+
post('admin.conversations.getCustomRetention', options)
|
102
|
+
end
|
103
|
+
|
104
|
+
#
|
105
|
+
# Get all the workspaces a given public or private channel is connected to within this Enterprise org.
|
106
|
+
#
|
107
|
+
# @option options [Object] :channel_id
|
108
|
+
# The channel to determine connected workspaces within the organization for.
|
109
|
+
# @option options [Object] :cursor
|
110
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
111
|
+
# @option options [Object] :limit
|
112
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
113
|
+
# @see https://api.slack.com/methods/admin.conversations.getTeams
|
114
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getTeams.json
|
115
|
+
def admin_conversations_getTeams(options = {})
|
116
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
117
|
+
if block_given?
|
118
|
+
Pagination::Cursor.new(self, :admin_conversations_getTeams, options).each do |page|
|
119
|
+
yield page
|
120
|
+
end
|
121
|
+
else
|
122
|
+
post('admin.conversations.getTeams', options)
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
#
|
127
|
+
# Invite a user to a public or private channel.
|
128
|
+
#
|
129
|
+
# @option options [Object] :channel_id
|
130
|
+
# The channel that the users will be invited to.
|
131
|
+
# @option options [Object] :user_ids
|
132
|
+
# The users to invite.
|
133
|
+
# @see https://api.slack.com/methods/admin.conversations.invite
|
134
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.invite.json
|
135
|
+
def admin_conversations_invite(options = {})
|
136
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
137
|
+
throw ArgumentError.new('Required arguments :user_ids missing') if options[:user_ids].nil?
|
138
|
+
post('admin.conversations.invite', options)
|
139
|
+
end
|
140
|
+
|
141
|
+
#
|
142
|
+
# This API endpoint can be used by any admin to remove a channel's retention policy.
|
143
|
+
#
|
144
|
+
# @option options [Object] :channel_id
|
145
|
+
# The channel to set the retention policy for.
|
146
|
+
# @see https://api.slack.com/methods/admin.conversations.removeCustomRetention
|
147
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.removeCustomRetention.json
|
148
|
+
def admin_conversations_removeCustomRetention(options = {})
|
149
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
150
|
+
post('admin.conversations.removeCustomRetention', options)
|
151
|
+
end
|
152
|
+
|
153
|
+
#
|
154
|
+
# Rename a public or private channel.
|
155
|
+
#
|
156
|
+
# @option options [Object] :channel_id
|
157
|
+
# The channel to rename.
|
158
|
+
# @option options [Object] :name
|
159
|
+
# .
|
160
|
+
# @see https://api.slack.com/methods/admin.conversations.rename
|
161
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.rename.json
|
162
|
+
def admin_conversations_rename(options = {})
|
163
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
164
|
+
throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
|
165
|
+
post('admin.conversations.rename', options)
|
166
|
+
end
|
167
|
+
|
168
|
+
#
|
169
|
+
# Search for public or private channels in an Enterprise organization.
|
170
|
+
#
|
171
|
+
# @option options [Object] :cursor
|
172
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
173
|
+
# @option options [Object] :limit
|
174
|
+
# Maximum number of items to be returned. Must be between 1 - 20 both inclusive. Default is 10.
|
175
|
+
# @option options [Object] :query
|
176
|
+
# Name of the the channel to query by.
|
177
|
+
# @option options [Object] :search_channel_types
|
178
|
+
# The type of channel to include or exclude in the search. For example private will search private channels, while private_exclude will exclude them. For a full list of types, check the Types section.
|
179
|
+
# @option options [Object] :sort
|
180
|
+
# Possible values are relevant (search ranking based on what we think is closest), name (alphabetical), member_count (number of users in the channel), and created (date channel was created). You can optionally pair this with the sort_dir arg to change how it is sorted.
|
181
|
+
# @option options [Object] :sort_dir
|
182
|
+
# Sort direction. Possible values are asc for ascending order like (1, 2, 3) or (a, b, c), and desc for descending order like (3, 2, 1) or (c, b, a).
|
183
|
+
# @option options [Object] :team_ids
|
184
|
+
# Comma separated string of team IDs, signifying the workspaces to search through.
|
185
|
+
# @see https://api.slack.com/methods/admin.conversations.search
|
186
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.search.json
|
187
|
+
def admin_conversations_search(options = {})
|
188
|
+
if block_given?
|
189
|
+
Pagination::Cursor.new(self, :admin_conversations_search, options).each do |page|
|
190
|
+
yield page
|
191
|
+
end
|
192
|
+
else
|
193
|
+
post('admin.conversations.search', options)
|
194
|
+
end
|
195
|
+
end
|
196
|
+
|
197
|
+
#
|
198
|
+
# Set the posting permissions for a public or private channel.
|
199
|
+
#
|
200
|
+
# @option options [Object] :channel_id
|
201
|
+
# The channel to set the prefs for.
|
202
|
+
# @option options [Object] :prefs
|
203
|
+
# The prefs for this channel in a stringified JSON format.
|
204
|
+
# @see https://api.slack.com/methods/admin.conversations.setConversationPrefs
|
205
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.setConversationPrefs.json
|
206
|
+
def admin_conversations_setConversationPrefs(options = {})
|
207
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
208
|
+
throw ArgumentError.new('Required arguments :prefs missing') if options[:prefs].nil?
|
209
|
+
post('admin.conversations.setConversationPrefs', options)
|
210
|
+
end
|
211
|
+
|
212
|
+
#
|
213
|
+
# This API endpoint can be used by any admin to set a channel's retention policy.
|
214
|
+
#
|
215
|
+
# @option options [Object] :channel_id
|
216
|
+
# The channel to set the retention policy for.
|
217
|
+
# @option options [Object] :duration_days
|
218
|
+
# The message retention duration in days to set for this channel.
|
219
|
+
# @see https://api.slack.com/methods/admin.conversations.setCustomRetention
|
220
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.setCustomRetention.json
|
221
|
+
def admin_conversations_setCustomRetention(options = {})
|
222
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
223
|
+
throw ArgumentError.new('Required arguments :duration_days missing') if options[:duration_days].nil?
|
224
|
+
post('admin.conversations.setCustomRetention', options)
|
225
|
+
end
|
226
|
+
|
227
|
+
#
|
228
|
+
# Set the workspaces in an Enterprise grid org that connect to a public or private channel.
|
11
229
|
#
|
12
230
|
# @option options [Object] :channel_id
|
13
231
|
# The encoded channel_id to add or remove to workspaces.
|
@@ -23,6 +241,18 @@ module Slack
|
|
23
241
|
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
24
242
|
post('admin.conversations.setTeams', options)
|
25
243
|
end
|
244
|
+
|
245
|
+
#
|
246
|
+
# Unarchive a public or private channel.
|
247
|
+
#
|
248
|
+
# @option options [Object] :channel_id
|
249
|
+
# The channel to unarchive.
|
250
|
+
# @see https://api.slack.com/methods/admin.conversations.unarchive
|
251
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.unarchive.json
|
252
|
+
def admin_conversations_unarchive(options = {})
|
253
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
254
|
+
post('admin.conversations.unarchive', options)
|
255
|
+
end
|
26
256
|
end
|
27
257
|
end
|
28
258
|
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# This file was auto-generated by lib/tasks/web.rake
|
3
|
+
|
4
|
+
module Slack
|
5
|
+
module Web
|
6
|
+
module Api
|
7
|
+
module Endpoints
|
8
|
+
module AdminConversationsEkm
|
9
|
+
#
|
10
|
+
# List all disconnected channels—i.e., channels that were once connected to other workspaces and then disconnected—and the corresponding original channel IDs for key revocation with EKM.
|
11
|
+
#
|
12
|
+
# @option options [Object] :channel_ids
|
13
|
+
# A comma-separated list of channels to filter to.
|
14
|
+
# @option options [Object] :cursor
|
15
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
16
|
+
# @option options [Object] :limit
|
17
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
18
|
+
# @option options [Object] :team_ids
|
19
|
+
# A comma-separated list of the workspaces to which the channels you would like returned belong.
|
20
|
+
# @see https://api.slack.com/methods/admin.conversations.ekm.listOriginalConnectedChannelInfo
|
21
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.ekm/admin.conversations.ekm.listOriginalConnectedChannelInfo.json
|
22
|
+
def admin_conversations_ekm_listOriginalConnectedChannelInfo(options = {})
|
23
|
+
if block_given?
|
24
|
+
Pagination::Cursor.new(self, :admin_conversations_ekm_listOriginalConnectedChannelInfo, options).each do |page|
|
25
|
+
yield page
|
26
|
+
end
|
27
|
+
else
|
28
|
+
post('admin.conversations.ekm.listOriginalConnectedChannelInfo', options)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -14,7 +14,7 @@ module Slack
|
|
14
14
|
# @option options [Object] :group_id
|
15
15
|
# The IDP Group ID to be an allowlist for the private channel.
|
16
16
|
# @option options [Object] :team_id
|
17
|
-
# The workspace where the
|
17
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
18
18
|
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.addGroup
|
19
19
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.addGroup.json
|
20
20
|
def admin_conversations_restrictAccess_addGroup(options = {})
|
@@ -29,7 +29,7 @@ module Slack
|
|
29
29
|
# @option options [Object] :channel_id
|
30
30
|
# .
|
31
31
|
# @option options [Object] :team_id
|
32
|
-
# The workspace where the
|
32
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
33
33
|
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.listGroups
|
34
34
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.listGroups.json
|
35
35
|
def admin_conversations_restrictAccess_listGroups(options = {})
|
@@ -45,7 +45,7 @@ module Slack
|
|
45
45
|
# @option options [Object] :group_id
|
46
46
|
# The IDP Group ID to remove from the private channel.
|
47
47
|
# @option options [Object] :team_id
|
48
|
-
# The workspace where the
|
48
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
49
49
|
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.removeGroup
|
50
50
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.removeGroup.json
|
51
51
|
def admin_conversations_restrictAccess_removeGroup(options = {})
|
@@ -20,7 +20,7 @@ module Slack
|
|
20
20
|
def admin_conversations_whitelist_add(options = {})
|
21
21
|
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
22
22
|
throw ArgumentError.new('Required arguments :group_id missing') if options[:group_id].nil?
|
23
|
-
logger.warn('admin.conversations.whitelist.add:
|
23
|
+
logger.warn('admin.conversations.whitelist.add: This method is deprecated Alternative methods: .')
|
24
24
|
post('admin.conversations.whitelist.add', options)
|
25
25
|
end
|
26
26
|
|
@@ -35,7 +35,7 @@ module Slack
|
|
35
35
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.whitelist/admin.conversations.whitelist.listGroupsLinkedToChannel.json
|
36
36
|
def admin_conversations_whitelist_listGroupsLinkedToChannel(options = {})
|
37
37
|
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
38
|
-
logger.warn('admin.conversations.whitelist.listGroupsLinkedToChannel:
|
38
|
+
logger.warn('admin.conversations.whitelist.listGroupsLinkedToChannel: This method is deprecated Alternative methods: .')
|
39
39
|
post('admin.conversations.whitelist.listGroupsLinkedToChannel', options)
|
40
40
|
end
|
41
41
|
|
@@ -54,7 +54,7 @@ module Slack
|
|
54
54
|
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
55
55
|
throw ArgumentError.new('Required arguments :group_id missing') if options[:group_id].nil?
|
56
56
|
throw ArgumentError.new('Required arguments :team_id missing') if options[:team_id].nil?
|
57
|
-
logger.warn('admin.conversations.whitelist.remove:
|
57
|
+
logger.warn('admin.conversations.whitelist.remove: This method is deprecated Alternative methods: .')
|
58
58
|
post('admin.conversations.whitelist.remove', options)
|
59
59
|
end
|
60
60
|
end
|
@@ -10,7 +10,7 @@ module Slack
|
|
10
10
|
# Add an emoji.
|
11
11
|
#
|
12
12
|
# @option options [Object] :name
|
13
|
-
# The name of the emoji to be
|
13
|
+
# The name of the emoji to be added. Colons (:myemoji:) around the value are not required, although they may be included.
|
14
14
|
# @option options [Object] :url
|
15
15
|
# The URL of a file to use as an image for the emoji. Square images under 128KB and with transparent backgrounds work best.
|
16
16
|
# @see https://api.slack.com/methods/admin.emoji.add
|
@@ -7,7 +7,7 @@ module Slack
|
|
7
7
|
module Endpoints
|
8
8
|
module AdminUsergroups
|
9
9
|
#
|
10
|
-
# Add one
|
10
|
+
# Add up to one hundred default channels to an IDP group.
|
11
11
|
#
|
12
12
|
# @option options [Object] :channel_ids
|
13
13
|
# Comma separated string of channel IDs.
|
@@ -60,16 +60,15 @@ module Slack
|
|
60
60
|
#
|
61
61
|
# List users on a workspace
|
62
62
|
#
|
63
|
-
# @option options [Object] :team_id
|
64
|
-
# The ID (T1234) of the workspace.
|
65
63
|
# @option options [Object] :cursor
|
66
64
|
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
67
65
|
# @option options [Object] :limit
|
68
66
|
# Limit for how many users to be retrieved per page.
|
67
|
+
# @option options [Object] :team_id
|
68
|
+
# The ID (T1234) of the workspace.
|
69
69
|
# @see https://api.slack.com/methods/admin.users.list
|
70
70
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.list.json
|
71
71
|
def admin_users_list(options = {})
|
72
|
-
throw ArgumentError.new('Required arguments :team_id missing') if options[:team_id].nil?
|
73
72
|
if block_given?
|
74
73
|
Pagination::Cursor.new(self, :admin_users_list, options).each do |page|
|
75
74
|
yield page
|
@@ -114,15 +113,14 @@ module Slack
|
|
114
113
|
#
|
115
114
|
# @option options [Object] :expiration_ts
|
116
115
|
# Timestamp when guest account should be disabled.
|
117
|
-
# @option options [Object] :team_id
|
118
|
-
# The ID (T1234) of the workspace.
|
119
116
|
# @option options [Object] :user_id
|
120
117
|
# The ID of the user to set an expiration for.
|
118
|
+
# @option options [Object] :team_id
|
119
|
+
# The ID (T1234) of the workspace.
|
121
120
|
# @see https://api.slack.com/methods/admin.users.setExpiration
|
122
121
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.setExpiration.json
|
123
122
|
def admin_users_setExpiration(options = {})
|
124
123
|
throw ArgumentError.new('Required arguments :expiration_ts missing') if options[:expiration_ts].nil?
|
125
|
-
throw ArgumentError.new('Required arguments :team_id missing') if options[:team_id].nil?
|
126
124
|
throw ArgumentError.new('Required arguments :user_id missing') if options[:user_id].nil?
|
127
125
|
post('admin.users.setExpiration', options)
|
128
126
|
end
|