slack-ruby-client 0.14.6 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/FUNDING.yml +1 -0
- data/.rubocop.yml +15 -3
- data/.rubocop_todo.yml +110 -38
- data/.travis.yml +2 -5
- data/CHANGELOG.md +42 -0
- data/CONTRIBUTING.md +19 -8
- data/Dangerfile +1 -1
- data/Gemfile +1 -2
- data/LICENSE.md +1 -1
- data/README.md +38 -36
- data/RELEASING.md +1 -1
- data/UPGRADING.md +62 -2
- data/bin/commands/admin_analytics.rb +16 -0
- data/bin/commands/admin_apps.rb +26 -2
- data/bin/commands/admin_apps_requests.rb +1 -0
- data/bin/commands/admin_auth_policy.rb +39 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +155 -3
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
- data/bin/commands/admin_conversations_whitelist.rb +37 -0
- data/bin/commands/admin_emoji.rb +1 -1
- data/bin/commands/admin_teams.rb +1 -1
- data/bin/commands/admin_usergroups.rb +48 -0
- data/bin/commands/admin_users.rb +3 -2
- data/bin/commands/admin_users_session.rb +62 -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/apps_manifest.rb +51 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bots.rb +1 -0
- data/bin/commands/calls.rb +52 -0
- data/bin/commands/calls_participants.rb +25 -0
- data/bin/commands/channels.rb +1 -155
- data/bin/commands/chat.rb +17 -12
- data/bin/commands/chat_scheduledMessages.rb +1 -0
- data/bin/commands/conversations.rb +71 -3
- data/bin/commands/dnd.rb +2 -0
- data/bin/commands/files.rb +6 -4
- data/bin/commands/files_remote.rb +2 -2
- data/bin/commands/groups.rb +1 -162
- data/bin/commands/im.rb +1 -63
- data/bin/commands/migration.rb +1 -0
- data/bin/commands/mpim.rb +1 -61
- data/bin/commands/oauth.rb +0 -13
- data/bin/commands/oauth_v2.rb +13 -1
- data/bin/commands/openid_connect.rb +27 -0
- data/bin/commands/pins.rb +2 -4
- data/bin/commands/reactions.rb +1 -0
- data/bin/commands/reminders.rb +6 -0
- data/bin/commands/rtm.rb +2 -2
- data/bin/commands/search.rb +4 -0
- data/bin/commands/stars.rb +7 -6
- data/bin/commands/team.rb +3 -0
- data/bin/commands/team_billing.rb +13 -0
- data/bin/commands/team_preferences.rb +13 -0
- data/bin/commands/tooling_tokens.rb +14 -0
- data/bin/commands/usergroups.rb +5 -0
- data/bin/commands/usergroups_users.rb +2 -0
- data/bin/commands/users.rb +4 -2
- data/bin/commands/users_profile.rb +5 -5
- data/bin/commands/views.rb +2 -2
- data/bin/commands/workflows.rb +38 -0
- data/bin/commands.rb +17 -8
- data/lib/slack/config.rb +1 -2
- data/lib/slack/events/request.rb +10 -4
- data/lib/slack/messages/message.rb +0 -4
- data/lib/slack/real_time/client.rb +6 -6
- data/lib/slack/real_time/concurrency/async.rb +7 -11
- data/lib/slack/real_time/concurrency.rb +0 -2
- data/lib/slack/real_time/config.rb +5 -14
- data/lib/slack/real_time/models/base.rb +0 -4
- data/lib/slack/real_time/socket.rb +3 -4
- data/lib/slack/real_time/stores/base.rb +4 -7
- data/lib/slack/real_time/stores/starter.rb +6 -3
- data/lib/slack/real_time/stores/store.rb +5 -0
- data/lib/slack/version.rb +1 -1
- data/lib/slack/web/api/endpoints/admin_analytics.rb +28 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +42 -6
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +4 -2
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +234 -4
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +10 -10
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +7 -7
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +3 -3
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams.rb +7 -7
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +5 -5
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
- data/lib/slack/web/api/endpoints/admin_users.rb +23 -23
- data/lib/slack/web/api/endpoints/admin_users_session.rb +97 -3
- data/lib/slack/web/api/endpoints/api.rb +1 -3
- data/lib/slack/web/api/endpoints/apps.rb +2 -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/apps_manifest.rb +75 -0
- data/lib/slack/web/api/endpoints/auth.rb +1 -1
- data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
- data/lib/slack/web/api/endpoints/bots.rb +3 -1
- data/lib/slack/web/api/endpoints/calls.rb +83 -0
- data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
- data/lib/slack/web/api/endpoints/channels.rb +1 -245
- data/lib/slack/web/api/endpoints/chat.rb +76 -66
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +5 -3
- data/lib/slack/web/api/endpoints/conversations.rb +149 -41
- data/lib/slack/web/api/endpoints/dialog.rb +2 -2
- data/lib/slack/web/api/endpoints/dnd.rb +6 -3
- data/lib/slack/web/api/endpoints/files.rb +21 -17
- data/lib/slack/web/api/endpoints/files_comments.rb +1 -1
- data/lib/slack/web/api/endpoints/files_remote.rb +23 -23
- data/lib/slack/web/api/endpoints/groups.rb +0 -253
- data/lib/slack/web/api/endpoints/im.rb +0 -101
- data/lib/slack/web/api/endpoints/migration.rb +4 -2
- data/lib/slack/web/api/endpoints/mpim.rb +0 -96
- data/lib/slack/web/api/endpoints/oauth.rb +5 -30
- data/lib/slack/web/api/endpoints/oauth_v2.rb +24 -6
- data/lib/slack/web/api/endpoints/openid_connect.rb +42 -0
- data/lib/slack/web/api/endpoints/pins.rb +7 -12
- data/lib/slack/web/api/endpoints/reactions.rb +16 -14
- data/lib/slack/web/api/endpoints/reminders.rb +17 -5
- data/lib/slack/web/api/endpoints/rtm.rb +10 -10
- data/lib/slack/web/api/endpoints/search.rb +27 -13
- data/lib/slack/web/api/endpoints/stars.rb +13 -11
- data/lib/slack/web/api/endpoints/team.rb +11 -5
- data/lib/slack/web/api/endpoints/team_billing.rb +21 -0
- data/lib/slack/web/api/endpoints/team_preferences.rb +21 -0
- data/lib/slack/web/api/endpoints/team_profile.rb +1 -1
- data/lib/slack/web/api/endpoints/tooling_tokens.rb +24 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +26 -16
- data/lib/slack/web/api/endpoints/usergroups_users.rb +9 -5
- data/lib/slack/web/api/endpoints/users.rb +20 -18
- data/lib/slack/web/api/endpoints/users_profile.rb +7 -7
- data/lib/slack/web/api/endpoints/views.rb +13 -13
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/endpoints.rb +35 -18
- data/lib/slack/web/api/errors/server_error.rb +37 -0
- data/lib/slack/web/api/errors/too_many_requests_error.rb +1 -4
- data/lib/slack/web/api/errors.rb +486 -12
- data/lib/slack/web/api/mixins/{channels.id.rb → conversations.id.rb} +3 -5
- data/lib/slack/web/api/mixins/ids.id.rb +3 -5
- data/lib/slack/web/api/mixins/users.id.rb +1 -3
- data/lib/slack/web/api/mixins.rb +1 -2
- data/lib/slack/web/api/patches/{chat.6.block-kit-support.patch → chat.1.patch} +25 -24
- data/lib/slack/web/api/templates/endpoints.erb +1 -2
- data/lib/slack/web/api/templates/method.erb +4 -1
- data/lib/slack/web/api/templates/method_spec.erb +1 -1
- data/lib/slack/web/config.rb +2 -0
- data/lib/slack/web/faraday/connection.rb +23 -20
- data/lib/slack/web/faraday/request.rb +2 -1
- data/lib/slack/web/faraday/response/raise_error.rb +12 -1
- data/lib/slack/web/faraday/response/wrap_error.rb +24 -0
- data/lib/slack/web/pagination/cursor.rb +3 -7
- data/lib/slack-ruby-client.rb +4 -4
- data/lib/tasks/web.rake +11 -3
- data/slack-ruby-client.gemspec +6 -7
- data/spec/fixtures/slack/web/429_error.yml +50 -54
- data/spec/fixtures/slack/web/auth_test_error.yml +51 -18
- data/spec/fixtures/slack/web/auth_test_success.yml +50 -26
- data/spec/fixtures/slack/web/conversations_info.yml +167 -0
- data/spec/fixtures/slack/web/conversations_setTopic.yml +84 -0
- data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +172 -0
- data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +253 -0
- data/spec/fixtures/slack/web/paginated_users_list.yml +501 -69
- data/spec/fixtures/slack/web/rtm_connect.yml +267 -30
- data/spec/fixtures/slack/web/rtm_start.yml +771 -60
- data/spec/fixtures/slack/web/users_info.yml +153 -69
- data/spec/fixtures/slack/web/users_list.yml +102 -41
- data/spec/fixtures/slack/web/views_open_error.yml +49 -42
- data/spec/slack/events/request_spec.rb +13 -8
- data/spec/slack/real_time/client_spec.rb +35 -22
- data/spec/slack/real_time/concurrency/with_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/concurrency/without_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/event_handlers/bot_spec.rb +1 -1
- data/spec/slack/real_time/event_handlers/channel_spec.rb +1 -1
- data/spec/slack/real_time/event_handlers/im_spec.rb +5 -5
- data/spec/slack/real_time/event_handlers/user_spec.rb +2 -2
- data/spec/slack/real_time/rtm_connect_spec.rb +1 -1
- data/spec/slack/real_time/rtm_start_spec.rb +1 -1
- data/spec/slack/slack_spec.rb +3 -1
- data/spec/slack/web/api/endpoints/admin_analytics_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +10 -0
- data/spec/slack/web/api/endpoints/admin_auth_policy_spec.rb +35 -0
- data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
- data/spec/slack/web/api/endpoints/{apps_permissions_scopes_spec.rb → admin_conversations_ekm_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +85 -0
- 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 +37 -0
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +28 -0
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +15 -23
- data/spec/slack/web/api/endpoints/{apps_permissions_resources_spec.rb → apps_connections_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/apps_manifest_spec.rb +36 -0
- 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 +24 -0
- data/spec/slack/web/api/endpoints/calls_spec.rb +31 -0
- data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +4 -6
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/dnd_spec.rb +0 -5
- 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/oauth_spec.rb +0 -22
- data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +6 -3
- data/spec/slack/web/api/endpoints/openid_connect_spec.rb +8 -0
- 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/team_billing_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/team_preferences_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/tooling_tokens_spec.rb +13 -0
- 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/api/error_spec.rb +5 -7
- data/spec/slack/web/api/errors/slack_error_spec.rb +21 -26
- data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
- data/spec/slack/web/api/mixins/{channels_spec.rb → conversations_spec.rb} +8 -8
- data/spec/slack/web/api/mixins/users_spec.rb +1 -1
- data/spec/slack/web/api/pagination/cursor_spec.rb +1 -3
- data/spec/slack/web/client_spec.rb +123 -1
- data/spec/slack/web/faraday/request_spec.rb +80 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +8 -6
- data/spec/spec_helper.rb +1 -1
- data/spec/support/real_time/connected_client.rb +1 -7
- data/spec/support/vcr.rb +36 -1
- metadata +95 -173
- 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/lib/slack/web/api/mixins/channels.id.json +0 -20
- data/lib/slack/web/api/mixins/groups.id.json +0 -20
- data/lib/slack/web/api/mixins/groups.id.rb +0 -27
- data/lib/slack/web/api/patches/chat.1.text-attachments-required.patch +0 -13
- data/lib/slack/web/api/patches/chat.2.attachments-json.patch +0 -17
- data/lib/slack/web/api/patches/chat.3.update-attachments-support.patch +0 -21
- data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
- data/lib/slack/web/api/patches/chat.5.postEphemeral-text-or-attachments.patch +0 -15
- data/spec/fixtures/slack/web/503_error.yml +0 -14
- data/spec/fixtures/slack/web/channels_info.yml +0 -46
- data/spec/fixtures/slack/web/groups_info.yml +0 -43
- 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/endpoints/apps_permissions_spec.rb +0 -16
- data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +0 -19
- data/spec/slack/web/api/endpoints/conversations_spec.rb +0 -101
- data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +0 -13
- data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +0 -13
- data/spec/slack/web/api/endpoints/im_spec.rb +0 -39
- data/spec/slack/web/api/endpoints/mpim_spec.rb +0 -39
- data/spec/slack/web/api/endpoints/views_spec.rb +0 -29
- data/spec/slack/web/api/errors/service_unavailable_spec.rb +0 -17
- data/spec/slack/web/api/mixins/groups_spec.rb +0 -43
@@ -2,15 +2,14 @@
|
|
2
2
|
module Slack
|
3
3
|
module RealTime
|
4
4
|
class Socket
|
5
|
-
attr_accessor :url
|
6
|
-
attr_accessor :options
|
5
|
+
attr_accessor :url, :options
|
7
6
|
attr_reader :driver
|
8
7
|
|
9
8
|
def initialize(url, options = {})
|
10
9
|
@url = url
|
11
|
-
@options = options
|
10
|
+
@options = options.dup
|
12
11
|
@driver = nil
|
13
|
-
@logger = options.delete(:logger) || Slack::RealTime::Config.logger || Slack::Config.logger
|
12
|
+
@logger = @options.delete(:logger) || Slack::RealTime::Config.logger || Slack::Config.logger
|
14
13
|
@last_message_at = nil
|
15
14
|
end
|
16
15
|
|
@@ -4,14 +4,11 @@ module Slack
|
|
4
4
|
module Stores
|
5
5
|
# Doesn't store anything.
|
6
6
|
class Base
|
7
|
-
|
7
|
+
class << self
|
8
|
+
attr_accessor :events
|
9
|
+
end
|
8
10
|
|
9
|
-
attr_accessor :users
|
10
|
-
attr_accessor :bots
|
11
|
-
attr_accessor :channels
|
12
|
-
attr_accessor :groups
|
13
|
-
attr_accessor :teams
|
14
|
-
attr_accessor :ims
|
11
|
+
attr_accessor :users, :bots, :channels, :groups, :teams, :ims
|
15
12
|
|
16
13
|
def self
|
17
14
|
nil
|
@@ -4,9 +4,7 @@ module Slack
|
|
4
4
|
module Stores
|
5
5
|
# Only stores initial information.
|
6
6
|
class Starter < Base
|
7
|
-
attr_reader :self
|
8
|
-
|
9
|
-
attr_reader :team
|
7
|
+
attr_reader :self, :team
|
10
8
|
|
11
9
|
def initialize(attrs)
|
12
10
|
@team = Models::Team.new(attrs.team)
|
@@ -15,6 +13,11 @@ module Slack
|
|
15
13
|
|
16
14
|
### RealTime Events
|
17
15
|
|
16
|
+
# A shared channel invite was sent to a Slack user.
|
17
|
+
# @see https://api.slack.com/events/shared_channel_invite_received
|
18
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/events/shared_channel_invite_received.json
|
19
|
+
# on :shared_channel_invite_received do |data|
|
20
|
+
|
18
21
|
# An enterprise grid migration has started on an external workspace..
|
19
22
|
# @see https://api.slack.com/events/external_org_migration_started
|
20
23
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/events/external_org_migration_started.json
|
@@ -55,6 +55,11 @@ module Slack
|
|
55
55
|
|
56
56
|
### RealTime Events
|
57
57
|
|
58
|
+
# A shared channel invite was sent to a Slack user.
|
59
|
+
# @see https://api.slack.com/events/shared_channel_invite_received
|
60
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/events/shared_channel_invite_received.json
|
61
|
+
# on :shared_channel_invite_received do |data|
|
62
|
+
|
58
63
|
# An enterprise grid migration has started on an external workspace..
|
59
64
|
# @see https://api.slack.com/events/external_org_migration_started
|
60
65
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/events/external_org_migration_started.json
|
data/lib/slack/version.rb
CHANGED
@@ -0,0 +1,28 @@
|
|
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 AdminAnalytics
|
9
|
+
#
|
10
|
+
# Retrieve analytics data for a given date, presented as a compressed JSON file
|
11
|
+
#
|
12
|
+
# @option options [string] :type
|
13
|
+
# The type of analytics to retrieve. The options are currently limited to member (for grid member analytics) and public_channel (for public channel analytics).
|
14
|
+
# @option options [date] :date
|
15
|
+
# Date to retrieve the analytics data for, expressed as YYYY-MM-DD in UTC.
|
16
|
+
# @option options [boolean] :metadata_only
|
17
|
+
# Retrieve metadata for the type of analytics indicated. Can be used only with type set to public_channel analytics. See detail below. Omit the date parameter when using this argument.
|
18
|
+
# @see https://api.slack.com/methods/admin.analytics.getFile
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.analytics/admin.analytics.getFile.json
|
20
|
+
def admin_analytics_getFile(options = {})
|
21
|
+
throw ArgumentError.new('Required arguments :type missing') if options[:type].nil?
|
22
|
+
post('admin.analytics.getFile', options)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -9,32 +9,68 @@ module Slack
|
|
9
9
|
#
|
10
10
|
# Approve an app for installation on a workspace.
|
11
11
|
#
|
12
|
-
# @option options [
|
12
|
+
# @option options [string] :app_id
|
13
13
|
# The id of the app to approve.
|
14
|
-
# @option options [Object] :
|
14
|
+
# @option options [Object] :enterprise_id
|
15
|
+
# The ID of the enterprise to approve the app on.
|
16
|
+
# @option options [string] :request_id
|
15
17
|
# The id of the request to approve.
|
16
18
|
# @option options [Object] :team_id
|
17
|
-
# .
|
19
|
+
# The ID of the workspace to approve the app on.
|
18
20
|
# @see https://api.slack.com/methods/admin.apps.approve
|
19
21
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.apps/admin.apps.approve.json
|
20
22
|
def admin_apps_approve(options = {})
|
21
23
|
post('admin.apps.approve', options)
|
22
24
|
end
|
23
25
|
|
26
|
+
#
|
27
|
+
# Clear an app resolution
|
28
|
+
#
|
29
|
+
# @option options [string] :app_id
|
30
|
+
# The id of the app whose resolution you want to clear/undo.
|
31
|
+
# @option options [Object] :enterprise_id
|
32
|
+
# The enterprise to clear the app resolution from.
|
33
|
+
# @option options [Object] :team_id
|
34
|
+
# The workspace to clear the app resolution from.
|
35
|
+
# @see https://api.slack.com/methods/admin.apps.clearResolution
|
36
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.apps/admin.apps.clearResolution.json
|
37
|
+
def admin_apps_clearResolution(options = {})
|
38
|
+
throw ArgumentError.new('Required arguments :app_id missing') if options[:app_id].nil?
|
39
|
+
post('admin.apps.clearResolution', options)
|
40
|
+
end
|
41
|
+
|
24
42
|
#
|
25
43
|
# Restrict an app for installation on a workspace.
|
26
44
|
#
|
27
|
-
# @option options [
|
45
|
+
# @option options [string] :app_id
|
28
46
|
# The id of the app to restrict.
|
29
|
-
# @option options [Object] :
|
47
|
+
# @option options [Object] :enterprise_id
|
48
|
+
# The ID of the enterprise to approve the app on.
|
49
|
+
# @option options [string] :request_id
|
30
50
|
# The id of the request to restrict.
|
31
51
|
# @option options [Object] :team_id
|
32
|
-
# .
|
52
|
+
# The ID of the workspace to approve the app on.
|
33
53
|
# @see https://api.slack.com/methods/admin.apps.restrict
|
34
54
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.apps/admin.apps.restrict.json
|
35
55
|
def admin_apps_restrict(options = {})
|
36
56
|
post('admin.apps.restrict', options)
|
37
57
|
end
|
58
|
+
|
59
|
+
#
|
60
|
+
# Uninstall an app from one or many workspaces, or an entire enterprise organization.
|
61
|
+
#
|
62
|
+
# @option options [string] :app_id
|
63
|
+
# The ID of the app to uninstall.
|
64
|
+
# @option options [string] :enterprise_id
|
65
|
+
# The enterprise to completely uninstall the application from (across all workspaces). With an org-level token, this or team_ids is required.
|
66
|
+
# @option options [string] :team_ids
|
67
|
+
# IDs of the teams to uninstall from (max 100). With an org-level token, this or enterprise_id is required.
|
68
|
+
# @see https://api.slack.com/methods/admin.apps.uninstall
|
69
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.apps/admin.apps.uninstall.json
|
70
|
+
def admin_apps_uninstall(options = {})
|
71
|
+
throw ArgumentError.new('Required arguments :app_id missing') if options[:app_id].nil?
|
72
|
+
post('admin.apps.uninstall', options)
|
73
|
+
end
|
38
74
|
end
|
39
75
|
end
|
40
76
|
end
|
@@ -9,11 +9,11 @@ module Slack
|
|
9
9
|
#
|
10
10
|
# List approved apps for an org or workspace.
|
11
11
|
#
|
12
|
-
# @option options [
|
12
|
+
# @option options [string] :cursor
|
13
13
|
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
14
14
|
# @option options [Object] :enterprise_id
|
15
15
|
# .
|
16
|
-
# @option options [
|
16
|
+
# @option options [integer] :limit
|
17
17
|
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
18
18
|
# @option options [Object] :team_id
|
19
19
|
# .
|
@@ -9,9 +9,11 @@ module Slack
|
|
9
9
|
#
|
10
10
|
# List app requests for a team/workspace.
|
11
11
|
#
|
12
|
-
# @option options [
|
12
|
+
# @option options [string] :cursor
|
13
13
|
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
14
|
-
# @option options [Object] :
|
14
|
+
# @option options [Object] :enterprise_id
|
15
|
+
# .
|
16
|
+
# @option options [integer] :limit
|
15
17
|
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
16
18
|
# @option options [Object] :team_id
|
17
19
|
# .
|
@@ -9,11 +9,11 @@ module Slack
|
|
9
9
|
#
|
10
10
|
# List restricted apps for an org or workspace.
|
11
11
|
#
|
12
|
-
# @option options [
|
12
|
+
# @option options [string] :cursor
|
13
13
|
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
14
14
|
# @option options [Object] :enterprise_id
|
15
15
|
# .
|
16
|
-
# @option options [
|
16
|
+
# @option options [integer] :limit
|
17
17
|
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
18
18
|
# @option options [Object] :team_id
|
19
19
|
# .
|
@@ -0,0 +1,72 @@
|
|
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 AdminAuthPolicy
|
9
|
+
#
|
10
|
+
# Assign entities to a particular authentication policy.
|
11
|
+
#
|
12
|
+
# @option options [array] :entity_ids
|
13
|
+
# Array of IDs to assign to the policy.
|
14
|
+
# @option options [Object] :entity_type
|
15
|
+
# The type of entity to assign to the policy. Currently, USER is supported.
|
16
|
+
# @option options [string] :policy_name
|
17
|
+
# The name of the authentication policy to assign the entities to. Currently, email_password is the only policy that may be used with this method.
|
18
|
+
# @see https://api.slack.com/methods/admin.auth.policy.assignEntities
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.auth.policy/admin.auth.policy.assignEntities.json
|
20
|
+
def admin_auth_policy_assignEntities(options = {})
|
21
|
+
throw ArgumentError.new('Required arguments :entity_ids missing') if options[:entity_ids].nil?
|
22
|
+
throw ArgumentError.new('Required arguments :entity_type missing') if options[:entity_type].nil?
|
23
|
+
throw ArgumentError.new('Required arguments :policy_name missing') if options[:policy_name].nil?
|
24
|
+
post('admin.auth.policy.assignEntities', options)
|
25
|
+
end
|
26
|
+
|
27
|
+
#
|
28
|
+
# Fetch all the entities assigned to a particular authentication policy by name.
|
29
|
+
#
|
30
|
+
# @option options [string] :policy_name
|
31
|
+
# The name of the policy to fetch entities for. Currently, email_password is the only policy that may be used with this method.
|
32
|
+
# @option options [string] :cursor
|
33
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
34
|
+
# @option options [Object] :entity_type
|
35
|
+
# The type of entity to assign to the policy. Currently, USER is supported.
|
36
|
+
# @option options [integer] :limit
|
37
|
+
# The maximum number of items to return. Must be between 1 and 1000, both inclusive.
|
38
|
+
# @see https://api.slack.com/methods/admin.auth.policy.getEntities
|
39
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.auth.policy/admin.auth.policy.getEntities.json
|
40
|
+
def admin_auth_policy_getEntities(options = {})
|
41
|
+
throw ArgumentError.new('Required arguments :policy_name missing') if options[:policy_name].nil?
|
42
|
+
if block_given?
|
43
|
+
Pagination::Cursor.new(self, :admin_auth_policy_getEntities, options).each do |page|
|
44
|
+
yield page
|
45
|
+
end
|
46
|
+
else
|
47
|
+
post('admin.auth.policy.getEntities', options)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
#
|
52
|
+
# Remove specified entities from a specified authentication policy.
|
53
|
+
#
|
54
|
+
# @option options [array] :entity_ids
|
55
|
+
# Encoded IDs of the entities you'd like to remove from the policy.
|
56
|
+
# @option options [Object] :entity_type
|
57
|
+
# The type of entity to assign to the policy. Currently, USER is supported.
|
58
|
+
# @option options [string] :policy_name
|
59
|
+
# The name of the policy to remove entities from. Currently, email_password is the only policy that may be used with this method.
|
60
|
+
# @see https://api.slack.com/methods/admin.auth.policy.removeEntities
|
61
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.auth.policy/admin.auth.policy.removeEntities.json
|
62
|
+
def admin_auth_policy_removeEntities(options = {})
|
63
|
+
throw ArgumentError.new('Required arguments :entity_ids missing') if options[:entity_ids].nil?
|
64
|
+
throw ArgumentError.new('Required arguments :entity_type missing') if options[:entity_type].nil?
|
65
|
+
throw ArgumentError.new('Required arguments :policy_name missing') if options[:policy_name].nil?
|
66
|
+
post('admin.auth.policy.removeEntities', options)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -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 [array] :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 [array] :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 [string] :cursor
|
43
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
44
|
+
# @option options [integer] :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 [array] :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 [array] :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,14 +7,232 @@ module Slack
|
|
7
7
|
module Endpoints
|
8
8
|
module AdminConversations
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# Archive a public or private channel.
|
11
11
|
#
|
12
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 [boolean] :is_private
|
37
|
+
# When true, creates a private channel instead of a public channel.
|
38
|
+
# @option options [string] :name
|
39
|
+
# Name of the public or private channel to create.
|
40
|
+
# @option options [string] :description
|
41
|
+
# Description of the public or private channel to create.
|
42
|
+
# @option options [boolean] :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 [array] :leaving_team_ids
|
72
|
+
# team IDs getting removed from the channel, optional if there are only two teams in the channel.
|
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 [string] :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 [string] :cursor
|
110
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
111
|
+
# @option options [integer] :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 [array] :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 [string] :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 [string] :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 [string] :cursor
|
172
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
173
|
+
# @option options [integer] :limit
|
174
|
+
# Maximum number of items to be returned. Must be between 1 - 20 both inclusive. Default is 10.
|
175
|
+
# @option options [string] :query
|
176
|
+
# Name of the the channel to query by.
|
177
|
+
# @option options [array] :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 [string] :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 [string] :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 [array] :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 [string] :channel_id
|
201
|
+
# The channel to set the prefs for.
|
202
|
+
# @option options [string] :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 [string] :channel_id
|
216
|
+
# The channel to set the retention policy for.
|
217
|
+
# @option options [integer] :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.
|
229
|
+
#
|
230
|
+
# @option options [string] :channel_id
|
13
231
|
# The encoded channel_id to add or remove to workspaces.
|
14
|
-
# @option options [
|
232
|
+
# @option options [boolean] :org_channel
|
15
233
|
# True if channel has to be converted to an org channel.
|
16
|
-
# @option options [
|
17
|
-
#
|
234
|
+
# @option options [array] :target_team_ids
|
235
|
+
# A comma-separated list of workspaces to which the channel should be shared. Not required if the channel is being shared org-wide.
|
18
236
|
# @option options [Object] :team_id
|
19
237
|
# The workspace to which the channel belongs. Omit this argument if the channel is a cross-workspace shared channel.
|
20
238
|
# @see https://api.slack.com/methods/admin.conversations.setTeams
|
@@ -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
|