slack-ruby-client 1.0.0 → 2.1.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.
Files changed (239) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.github/workflows/integration_test.yml +45 -0
  4. data/.github/workflows/lint.yml +14 -0
  5. data/.github/workflows/pr_lint.yml +21 -0
  6. data/.github/workflows/test.yml +37 -0
  7. data/.gitignore +4 -3
  8. data/.rubocop.yml +6 -1
  9. data/.rubocop_todo.yml +88 -34
  10. data/.ruby-version +1 -0
  11. data/CHANGELOG.md +36 -0
  12. data/CONTRIBUTING.md +6 -5
  13. data/Gemfile +13 -1
  14. data/Gemfile.danger +6 -0
  15. data/README.md +78 -76
  16. data/RELEASING.md +2 -2
  17. data/SECURITY.md +9 -0
  18. data/UPGRADING.md +28 -0
  19. data/bin/commands/admin_analytics.rb +16 -10
  20. data/bin/commands/admin_apps.rb +48 -42
  21. data/bin/commands/admin_apps_approved.rb +17 -11
  22. data/bin/commands/admin_apps_requests.rb +28 -11
  23. data/bin/commands/admin_apps_restricted.rb +17 -11
  24. data/bin/commands/admin_audit_anomaly_allow.rb +29 -0
  25. data/bin/commands/admin_auth_policy.rb +37 -31
  26. data/bin/commands/admin_barriers.rb +44 -38
  27. data/bin/commands/admin_conversations.rb +221 -163
  28. data/bin/commands/admin_conversations_ekm.rb +17 -11
  29. data/bin/commands/admin_conversations_restrictAccess.rb +35 -29
  30. data/bin/commands/admin_emoji.rb +50 -44
  31. data/bin/commands/admin_inviteRequests.rb +34 -28
  32. data/bin/commands/admin_inviteRequests_approved.rb +16 -10
  33. data/bin/commands/admin_inviteRequests_denied.rb +16 -10
  34. data/bin/commands/admin_roles.rb +46 -0
  35. data/bin/commands/admin_teams.rb +26 -20
  36. data/bin/commands/admin_teams_admins.rb +16 -10
  37. data/bin/commands/admin_teams_owners.rb +16 -10
  38. data/bin/commands/admin_teams_settings.rb +59 -53
  39. data/bin/commands/admin_usergroups.rb +45 -39
  40. data/bin/commands/admin_users.rb +91 -85
  41. data/bin/commands/admin_users_session.rb +72 -66
  42. data/bin/commands/admin_users_unsupportedVersions.rb +21 -0
  43. data/bin/commands/api.rb +14 -8
  44. data/bin/commands/apps.rb +15 -9
  45. data/bin/commands/apps_connections.rb +13 -7
  46. data/bin/commands/apps_event_authorizations.rb +16 -10
  47. data/bin/commands/apps_manifest.rb +48 -41
  48. data/bin/commands/auth.rb +21 -15
  49. data/bin/commands/auth_teams.rb +16 -10
  50. data/bin/commands/bookmarks.rb +59 -0
  51. data/bin/commands/bots.rb +15 -9
  52. data/bin/commands/calls.rb +49 -43
  53. data/bin/commands/calls_participants.rb +24 -18
  54. data/bin/commands/chat.rb +150 -141
  55. data/bin/commands/chat_scheduledMessages.rb +19 -13
  56. data/bin/commands/conversations.rb +233 -225
  57. data/bin/commands/dialog.rb +15 -9
  58. data/bin/commands/dnd.rb +46 -40
  59. data/bin/commands/emoji.rb +14 -7
  60. data/bin/commands/files.rb +112 -83
  61. data/bin/commands/files_comments.rb +15 -9
  62. data/bin/commands/files_remote.rb +73 -67
  63. data/bin/commands/functions_workflows_steps.rb +22 -0
  64. data/bin/commands/functions_workflows_steps_responses.rb +22 -0
  65. data/bin/commands/migration.rb +16 -10
  66. data/bin/commands/oauth.rb +18 -12
  67. data/bin/commands/oauth_v2.rb +28 -22
  68. data/bin/commands/openid_connect.rb +26 -20
  69. data/bin/commands/pins.rb +33 -26
  70. data/bin/commands/reactions.rb +52 -46
  71. data/bin/commands/reminders.rb +53 -47
  72. data/bin/commands/rtm.rb +15 -24
  73. data/bin/commands/search.rb +43 -37
  74. data/bin/commands/stars.rb +38 -32
  75. data/bin/commands/team.rb +47 -38
  76. data/bin/commands/team_billing.rb +13 -7
  77. data/bin/commands/team_preferences.rb +13 -7
  78. data/bin/commands/team_profile.rb +14 -8
  79. data/bin/commands/tooling_tokens.rb +14 -8
  80. data/bin/commands/usergroups.rb +64 -58
  81. data/bin/commands/usergroups_users.rb +27 -21
  82. data/bin/commands/users.rb +111 -105
  83. data/bin/commands/users_admin.rb +28 -22
  84. data/bin/commands/users_prefs.rb +13 -7
  85. data/bin/commands/users_profile.rb +26 -20
  86. data/bin/commands/views.rb +47 -39
  87. data/bin/commands/workflows.rb +36 -30
  88. data/bin/slack +48 -43
  89. data/lib/slack/real_time/api/message.rb +3 -2
  90. data/lib/slack/real_time/api/templates/event_handler.erb +5 -1
  91. data/lib/slack/real_time/api/typing.rb +2 -1
  92. data/lib/slack/real_time/client.rb +10 -28
  93. data/lib/slack/real_time/config.rb +3 -3
  94. data/lib/slack/real_time/models/channel.rb +4 -0
  95. data/lib/slack/real_time/models/{group.rb → mpim.rb} +1 -1
  96. data/lib/slack/real_time/models.rb +2 -1
  97. data/lib/slack/real_time/stores/base.rb +25 -9
  98. data/lib/slack/real_time/stores/starter.rb +323 -309
  99. data/lib/slack/real_time/stores/store.rb +265 -198
  100. data/lib/slack/real_time/stores.rb +1 -7
  101. data/lib/slack/version.rb +1 -1
  102. data/lib/slack/web/api/endpoints/admin_analytics.rb +2 -2
  103. data/lib/slack/web/api/endpoints/admin_apps.rb +2 -2
  104. data/lib/slack/web/api/endpoints/admin_apps_requests.rb +16 -0
  105. data/lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb +34 -0
  106. data/lib/slack/web/api/endpoints/admin_auth_policy.rb +7 -7
  107. data/lib/slack/web/api/endpoints/admin_barriers.rb +8 -8
  108. data/lib/slack/web/api/endpoints/admin_conversations.rb +110 -28
  109. data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +6 -6
  110. data/lib/slack/web/api/endpoints/admin_emoji.rb +9 -9
  111. data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +2 -2
  112. data/lib/slack/web/api/endpoints/admin_roles.rb +73 -0
  113. data/lib/slack/web/api/endpoints/admin_teams.rb +2 -2
  114. data/lib/slack/web/api/endpoints/admin_teams_admins.rb +1 -1
  115. data/lib/slack/web/api/endpoints/admin_teams_owners.rb +1 -1
  116. data/lib/slack/web/api/endpoints/admin_teams_settings.rb +11 -11
  117. data/lib/slack/web/api/endpoints/admin_usergroups.rb +7 -7
  118. data/lib/slack/web/api/endpoints/admin_users.rb +16 -16
  119. data/lib/slack/web/api/endpoints/admin_users_session.rb +8 -8
  120. data/lib/slack/web/api/endpoints/admin_users_unsupportedVersions.rb +25 -0
  121. data/lib/slack/web/api/endpoints/apps.rb +2 -2
  122. data/lib/slack/web/api/endpoints/apps_connections.rb +1 -1
  123. data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +1 -1
  124. data/lib/slack/web/api/endpoints/apps_manifest.rb +8 -6
  125. data/lib/slack/web/api/endpoints/bookmarks.rb +88 -0
  126. data/lib/slack/web/api/endpoints/bots.rb +1 -1
  127. data/lib/slack/web/api/endpoints/calls.rb +5 -5
  128. data/lib/slack/web/api/endpoints/calls_participants.rb +4 -4
  129. data/lib/slack/web/api/endpoints/chat.rb +37 -31
  130. data/lib/slack/web/api/endpoints/conversations.rb +38 -34
  131. data/lib/slack/web/api/endpoints/dialog.rb +2 -2
  132. data/lib/slack/web/api/endpoints/dnd.rb +1 -1
  133. data/lib/slack/web/api/endpoints/emoji.rb +2 -0
  134. data/lib/slack/web/api/endpoints/files.rb +45 -10
  135. data/lib/slack/web/api/endpoints/files_comments.rb +2 -2
  136. data/lib/slack/web/api/endpoints/files_remote.rb +8 -8
  137. data/lib/slack/web/api/endpoints/functions_workflows_steps.rb +28 -0
  138. data/lib/slack/web/api/endpoints/functions_workflows_steps_responses.rb +28 -0
  139. data/lib/slack/web/api/endpoints/migration.rb +1 -1
  140. data/lib/slack/web/api/endpoints/oauth_v2.rb +2 -2
  141. data/lib/slack/web/api/endpoints/pins.rb +5 -3
  142. data/lib/slack/web/api/endpoints/reactions.rb +4 -4
  143. data/lib/slack/web/api/endpoints/reminders.rb +5 -5
  144. data/lib/slack/web/api/endpoints/rtm.rb +0 -23
  145. data/lib/slack/web/api/endpoints/search.rb +3 -3
  146. data/lib/slack/web/api/endpoints/team.rb +13 -1
  147. data/lib/slack/web/api/endpoints/tooling_tokens.rb +1 -1
  148. data/lib/slack/web/api/endpoints/usergroups.rb +5 -5
  149. data/lib/slack/web/api/endpoints/usergroups_users.rb +3 -3
  150. data/lib/slack/web/api/endpoints/users.rb +4 -4
  151. data/lib/slack/web/api/endpoints/users_admin.rb +2 -2
  152. data/lib/slack/web/api/endpoints/users_profile.rb +1 -1
  153. data/lib/slack/web/api/endpoints/views.rb +16 -11
  154. data/lib/slack/web/api/endpoints/workflows.rb +4 -4
  155. data/lib/slack/web/api/endpoints.rb +12 -0
  156. data/lib/slack/web/api/errors.rb +146 -8
  157. data/lib/slack/web/api/mixins/conversations.id.rb +1 -1
  158. data/lib/slack/web/api/mixins/users.id.rb +1 -1
  159. data/lib/slack/web/api/mixins/users.search.rb +2 -1
  160. data/lib/slack/web/api/patches/{chat.1.patch → chat.attachments-blocks.patch} +13 -14
  161. data/lib/slack/web/api/patches/{dialog.1.open-json-support.patch → dialog.encoded-json.patch} +4 -4
  162. data/lib/slack/web/api/patches/views.view-json.patch +55 -0
  163. data/lib/slack/web/api/templates/command.erb +18 -12
  164. data/lib/slack/web/api/templates/method.erb +1 -1
  165. data/lib/slack/web/config.rb +2 -2
  166. data/lib/slack/web/faraday/connection.rb +4 -4
  167. data/lib/slack/web/faraday/request.rb +2 -0
  168. data/lib/slack/web/faraday/response/raise_error.rb +2 -10
  169. data/lib/slack/web/faraday/response/wrap_error.rb +1 -1
  170. data/lib/slack-ruby-client.rb +2 -1
  171. data/lib/tasks/real_time.rake +44 -24
  172. data/lib/tasks/web.rake +9 -8
  173. data/slack-ruby-client.gemspec +5 -14
  174. data/spec/fixtures/slack/web/rtm_connect.yml +85 -1
  175. data/spec/integration/integration_spec.rb +1 -1
  176. data/spec/slack/events/config_spec.rb +2 -0
  177. data/spec/slack/events/request_spec.rb +5 -1
  178. data/spec/slack/messages/formatting_spec.rb +10 -0
  179. data/spec/slack/real_time/api/message_spec.rb +1 -1
  180. data/spec/slack/real_time/api/ping_spec.rb +1 -1
  181. data/spec/slack/real_time/api/typing_spec.rb +1 -1
  182. data/spec/slack/real_time/client_spec.rb +91 -127
  183. data/spec/slack/real_time/event_handlers/bot_spec.rb +19 -17
  184. data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +1 -1
  185. data/spec/slack/real_time/event_handlers/im_spec.rb +30 -27
  186. data/spec/slack/real_time/event_handlers/{group_spec.rb → private_channel_spec.rb} +35 -27
  187. data/spec/slack/real_time/event_handlers/{channel_spec.rb → public_channel_spec.rb} +27 -23
  188. data/spec/slack/real_time/event_handlers/team_spec.rb +7 -8
  189. data/spec/slack/real_time/event_handlers/user_spec.rb +6 -5
  190. data/spec/slack/real_time/stores/store_spec.rb +50 -0
  191. data/spec/slack/slack_spec.rb +5 -4
  192. data/spec/slack/version_spec.rb +1 -1
  193. data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +5 -0
  194. data/spec/slack/web/api/endpoints/admin_audit_anomaly_allow_spec.rb +8 -0
  195. data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +31 -0
  196. data/spec/slack/web/api/endpoints/admin_roles_spec.rb +30 -0
  197. data/spec/slack/web/api/endpoints/admin_users_unsupportedVersions_spec.rb +8 -0
  198. data/spec/slack/web/api/endpoints/bookmarks_spec.rb +40 -0
  199. data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +45 -17
  200. data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +6 -2
  201. data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +33 -16
  202. data/spec/slack/web/api/endpoints/files_spec.rb +13 -0
  203. data/spec/slack/web/api/endpoints/functions_workflows_steps_responses_spec.rb +13 -0
  204. data/spec/slack/web/api/endpoints/functions_workflows_steps_spec.rb +13 -0
  205. data/spec/slack/web/api/mixins/conversations_spec.rb +2 -0
  206. data/spec/slack/web/api/mixins/users_spec.rb +2 -0
  207. data/spec/slack/web/api/pagination/cursor_spec.rb +11 -7
  208. data/spec/slack/web/client_spec.rb +39 -11
  209. data/spec/slack/web/faraday/response/raise_error_spec.rb +1 -1
  210. data/spec/support/real_time/connected_client.rb +1 -1
  211. data/spec/support/real_time/loaded_client.rb +120 -0
  212. metadata +45 -197
  213. data/.travis.yml +0 -29
  214. data/bin/commands/admin_conversations_whitelist.rb +0 -37
  215. data/bin/commands/apps_permissions.rb +0 -23
  216. data/bin/commands/apps_permissions_resources.rb +0 -15
  217. data/bin/commands/apps_permissions_scopes.rb +0 -13
  218. data/bin/commands/apps_permissions_users.rb +0 -26
  219. data/bin/commands/channels.rb +0 -23
  220. data/bin/commands/groups.rb +0 -14
  221. data/bin/commands/im.rb +0 -6
  222. data/bin/commands/mpim.rb +0 -6
  223. data/bin/commands.rb +0 -66
  224. data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +0 -64
  225. data/lib/slack/web/api/endpoints/apps_permissions.rb +0 -36
  226. data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +0 -31
  227. data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +0 -21
  228. data/lib/slack/web/api/endpoints/apps_permissions_users.rb +0 -50
  229. data/lib/slack/web/api/endpoints/channels.rb +0 -25
  230. data/lib/slack/web/api/endpoints/groups.rb +0 -13
  231. data/lib/slack/web/api/endpoints/im.rb +0 -13
  232. data/lib/slack/web/api/endpoints/mpim.rb +0 -13
  233. data/lib/slack/web/api/endpoints/presence.rb +0 -23
  234. data/lib/slack/web/api/patches/views.1.view-json.patch +0 -40
  235. data/lib/slack/web/api/patches/views.1.views-published.patch +0 -16
  236. data/lib/slack/web/api/templates/commands.erb +0 -6
  237. data/spec/fixtures/slack/web/rtm_start.yml +0 -815
  238. data/spec/slack/real_time/rtm_start_spec.rb +0 -14
  239. data/spec/slack/real_time/store_spec.rb +0 -12
@@ -1,17 +1,23 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminConversationsEkm methods.'
5
- command 'admin_conversations_ekm' do |g|
6
- g.desc '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.'
7
- g.long_desc %( 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. )
8
- g.command 'listOriginalConnectedChannelInfo' do |c|
9
- c.flag 'channel_ids', desc: 'A comma-separated list of channels to filter to.'
10
- c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
11
- c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
12
- c.flag 'team_ids', desc: 'A comma-separated list of the workspaces to which the channels you would like returned belong.'
13
- c.action do |_global_options, options, _args|
14
- puts JSON.dump($client.admin_conversations_ekm_listOriginalConnectedChannelInfo(options))
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminConversationsEkm methods.'
8
+ command 'admin_conversations_ekm' do |g|
9
+ g.desc '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.'
10
+ g.long_desc %( 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
+ g.command 'listOriginalConnectedChannelInfo' do |c|
12
+ c.flag 'channel_ids', desc: 'A comma-separated list of channels to filter to.'
13
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
14
+ c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
15
+ c.flag 'team_ids', desc: 'A comma-separated list of the workspaces to which the channels you would like returned belong.'
16
+ c.action do |_global_options, options, _args|
17
+ puts JSON.dump(@client.admin_conversations_ekm_listOriginalConnectedChannelInfo(options))
18
+ end
19
+ end
20
+ end
15
21
  end
16
22
  end
17
23
  end
@@ -1,37 +1,43 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminConversationsRestrictaccess methods.'
5
- command 'admin_conversations_restrictAccess' do |g|
6
- g.desc 'Add an allowlist of IDP groups for accessing a channel'
7
- g.long_desc %( Add an allowlist of IDP groups for accessing a channel )
8
- g.command 'addGroup' do |c|
9
- c.flag 'channel_id', desc: 'The channel to link this group to.'
10
- c.flag 'group_id', desc: 'The IDP Group ID to be an allowlist for the private channel.'
11
- c.flag 'team_id', desc: '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.'
12
- c.action do |_global_options, options, _args|
13
- puts JSON.dump($client.admin_conversations_restrictAccess_addGroup(options))
14
- end
15
- end
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminConversationsRestrictaccess methods.'
8
+ command 'admin_conversations_restrictAccess' do |g|
9
+ g.desc 'Add an allowlist of IDP groups for accessing a channel'
10
+ g.long_desc %( Add an allowlist of IDP groups for accessing a channel )
11
+ g.command 'addGroup' do |c|
12
+ c.flag 'channel_id', desc: 'The channel to link this group to.'
13
+ c.flag 'group_id', desc: 'The IDP Group ID to be an allowlist for the private channel.'
14
+ c.flag 'team_id', desc: '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.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_conversations_restrictAccess_addGroup(options))
17
+ end
18
+ end
16
19
 
17
- g.desc 'List all IDP Groups linked to a channel'
18
- g.long_desc %( List all IDP Groups linked to a channel )
19
- g.command 'listGroups' do |c|
20
- c.flag 'channel_id', desc: '.'
21
- c.flag 'team_id', desc: '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.'
22
- c.action do |_global_options, options, _args|
23
- puts JSON.dump($client.admin_conversations_restrictAccess_listGroups(options))
24
- end
25
- end
20
+ g.desc 'List all IDP Groups linked to a channel'
21
+ g.long_desc %( List all IDP Groups linked to a channel )
22
+ g.command 'listGroups' do |c|
23
+ c.flag 'channel_id', desc: '.'
24
+ c.flag 'team_id', desc: '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.'
25
+ c.action do |_global_options, options, _args|
26
+ puts JSON.dump(@client.admin_conversations_restrictAccess_listGroups(options))
27
+ end
28
+ end
26
29
 
27
- g.desc 'Remove a linked IDP group linked from a private channel'
28
- g.long_desc %( Remove a linked IDP group linked from a private channel )
29
- g.command 'removeGroup' do |c|
30
- c.flag 'channel_id', desc: 'The channel to remove the linked group from.'
31
- c.flag 'group_id', desc: 'The IDP Group ID to remove from the private channel.'
32
- c.flag 'team_id', desc: '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
- c.action do |_global_options, options, _args|
34
- puts JSON.dump($client.admin_conversations_restrictAccess_removeGroup(options))
30
+ g.desc 'Remove a linked IDP group linked from a private channel'
31
+ g.long_desc %( Remove a linked IDP group linked from a private channel )
32
+ g.command 'removeGroup' do |c|
33
+ c.flag 'channel_id', desc: 'The channel to remove the linked group from.'
34
+ c.flag 'group_id', desc: 'The IDP Group ID to remove from the private channel.'
35
+ c.flag 'team_id', desc: '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.'
36
+ c.action do |_global_options, options, _args|
37
+ puts JSON.dump(@client.admin_conversations_restrictAccess_removeGroup(options))
38
+ end
39
+ end
40
+ end
35
41
  end
36
42
  end
37
43
  end
@@ -1,54 +1,60 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminEmoji methods.'
5
- command 'admin_emoji' do |g|
6
- g.desc 'Add an emoji.'
7
- g.long_desc %( Add an emoji. )
8
- g.command 'add' do |c|
9
- c.flag 'name', desc: 'The name of the emoji to be added. Colons (:myemoji:) around the value are not required, although they may be included.'
10
- c.flag 'url', desc: 'The URL of a file to use as an image for the emoji. Square images under 128KB and with transparent backgrounds work best.'
11
- c.action do |_global_options, options, _args|
12
- puts JSON.dump($client.admin_emoji_add(options))
13
- end
14
- end
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminEmoji methods.'
8
+ command 'admin_emoji' do |g|
9
+ g.desc 'Add an emoji.'
10
+ g.long_desc %( Add an emoji. )
11
+ g.command 'add' do |c|
12
+ c.flag 'name', desc: 'The name of the emoji to be added. Colons (:myemoji:) around the value are not required, although they may be included.'
13
+ c.flag 'url', desc: 'The URL of a file to use as an image for the emoji. Square images under 128KB and with transparent backgrounds work best.'
14
+ c.action do |_global_options, options, _args|
15
+ puts JSON.dump(@client.admin_emoji_add(options))
16
+ end
17
+ end
15
18
 
16
- g.desc 'Add an emoji alias.'
17
- g.long_desc %( Add an emoji alias. )
18
- g.command 'addAlias' do |c|
19
- c.flag 'alias_for', desc: 'The alias of the emoji.'
20
- c.flag 'name', desc: 'The name of the emoji to be aliased. Colons (:myemoji:) around the value are not required, although they may be included.'
21
- c.action do |_global_options, options, _args|
22
- puts JSON.dump($client.admin_emoji_addAlias(options))
23
- end
24
- end
19
+ g.desc 'Add an emoji alias.'
20
+ g.long_desc %( Add an emoji alias. )
21
+ g.command 'addAlias' do |c|
22
+ c.flag 'alias_for', desc: 'Name of the emoji for which the alias is being made. Any wrapping whitespace or colons will be automatically trimmed.'
23
+ c.flag 'name', desc: 'The new alias for the specified emoji. Any wrapping whitespace or colons will be automatically trimmed.'
24
+ c.action do |_global_options, options, _args|
25
+ puts JSON.dump(@client.admin_emoji_addAlias(options))
26
+ end
27
+ end
25
28
 
26
- g.desc 'List emoji for an Enterprise Grid organization.'
27
- g.long_desc %( List emoji for an Enterprise Grid organization. )
28
- g.command 'list' do |c|
29
- c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
30
- c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
31
- c.action do |_global_options, options, _args|
32
- puts JSON.dump($client.admin_emoji_list(options))
33
- end
34
- end
29
+ g.desc 'List emoji for an Enterprise Grid organization.'
30
+ g.long_desc %( List emoji for an Enterprise Grid organization. )
31
+ g.command 'list' do |c|
32
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
33
+ c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
34
+ c.action do |_global_options, options, _args|
35
+ puts JSON.dump(@client.admin_emoji_list(options))
36
+ end
37
+ end
35
38
 
36
- g.desc 'Remove an emoji across an Enterprise Grid organization'
37
- g.long_desc %( Remove an emoji across an Enterprise Grid organization )
38
- g.command 'remove' do |c|
39
- c.flag 'name', desc: 'The name of the emoji to be removed. Colons (:myemoji:) around the value are not required, although they may be included.'
40
- c.action do |_global_options, options, _args|
41
- puts JSON.dump($client.admin_emoji_remove(options))
42
- end
43
- end
39
+ g.desc 'Remove an emoji across an Enterprise Grid organization'
40
+ g.long_desc %( Remove an emoji across an Enterprise Grid organization )
41
+ g.command 'remove' do |c|
42
+ c.flag 'name', desc: 'The name of the emoji to be removed. Colons (:myemoji:) around the value are not required, although they may be included.'
43
+ c.action do |_global_options, options, _args|
44
+ puts JSON.dump(@client.admin_emoji_remove(options))
45
+ end
46
+ end
44
47
 
45
- g.desc 'Rename an emoji.'
46
- g.long_desc %( Rename an emoji. )
47
- g.command 'rename' do |c|
48
- c.flag 'name', desc: 'The name of the emoji to be renamed. Colons (:myemoji:) around the value are not required, although they may be included.'
49
- c.flag 'new_name', desc: 'The new name of the emoji.'
50
- c.action do |_global_options, options, _args|
51
- puts JSON.dump($client.admin_emoji_rename(options))
48
+ g.desc 'Rename an emoji.'
49
+ g.long_desc %( Rename an emoji. )
50
+ g.command 'rename' do |c|
51
+ c.flag 'name', desc: 'The name of the emoji to be renamed. Colons (:myemoji:) around the value are not required, although they may be included.'
52
+ c.flag 'new_name', desc: 'The new name of the emoji.'
53
+ c.action do |_global_options, options, _args|
54
+ puts JSON.dump(@client.admin_emoji_rename(options))
55
+ end
56
+ end
57
+ end
52
58
  end
53
59
  end
54
60
  end
@@ -1,36 +1,42 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminInviterequests methods.'
5
- command 'admin_inviteRequests' do |g|
6
- g.desc 'Approve a workspace invite request.'
7
- g.long_desc %( Approve a workspace invite request. )
8
- g.command 'approve' do |c|
9
- c.flag 'invite_request_id', desc: 'ID of the request to invite.'
10
- c.flag 'team_id', desc: 'ID for the workspace where the invite request was made.'
11
- c.action do |_global_options, options, _args|
12
- puts JSON.dump($client.admin_inviteRequests_approve(options))
13
- end
14
- end
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminInviterequests methods.'
8
+ command 'admin_inviteRequests' do |g|
9
+ g.desc 'Approve a workspace invite request.'
10
+ g.long_desc %( Approve a workspace invite request. )
11
+ g.command 'approve' do |c|
12
+ c.flag 'invite_request_id', desc: 'ID of the request to invite.'
13
+ c.flag 'team_id', desc: 'ID for the workspace where the invite request was made.'
14
+ c.action do |_global_options, options, _args|
15
+ puts JSON.dump(@client.admin_inviteRequests_approve(options))
16
+ end
17
+ end
15
18
 
16
- g.desc 'Deny a workspace invite request.'
17
- g.long_desc %( Deny a workspace invite request. )
18
- g.command 'deny' do |c|
19
- c.flag 'invite_request_id', desc: 'ID of the request to invite.'
20
- c.flag 'team_id', desc: 'ID for the workspace where the invite request was made.'
21
- c.action do |_global_options, options, _args|
22
- puts JSON.dump($client.admin_inviteRequests_deny(options))
23
- end
24
- end
19
+ g.desc 'Deny a workspace invite request.'
20
+ g.long_desc %( Deny a workspace invite request. )
21
+ g.command 'deny' do |c|
22
+ c.flag 'invite_request_id', desc: 'ID of the request to invite.'
23
+ c.flag 'team_id', desc: 'ID for the workspace where the invite request was made.'
24
+ c.action do |_global_options, options, _args|
25
+ puts JSON.dump(@client.admin_inviteRequests_deny(options))
26
+ end
27
+ end
25
28
 
26
- g.desc 'List all pending workspace invite requests.'
27
- g.long_desc %( List all pending workspace invite requests. )
28
- g.command 'list' do |c|
29
- c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous API response.'
30
- c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.'
31
- c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
32
- c.action do |_global_options, options, _args|
33
- puts JSON.dump($client.admin_inviteRequests_list(options))
29
+ g.desc 'List all pending workspace invite requests.'
30
+ g.long_desc %( List all pending workspace invite requests. )
31
+ g.command 'list' do |c|
32
+ c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous API response.'
33
+ c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.'
34
+ c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
35
+ c.action do |_global_options, options, _args|
36
+ puts JSON.dump(@client.admin_inviteRequests_list(options))
37
+ end
38
+ end
39
+ end
34
40
  end
35
41
  end
36
42
  end
@@ -1,16 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminInviterequestsApproved methods.'
5
- command 'admin_inviteRequests_approved' do |g|
6
- g.desc 'List all approved workspace invite requests.'
7
- g.long_desc %( List all approved workspace invite requests. )
8
- g.command 'list' do |c|
9
- c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous API response.'
10
- c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.'
11
- c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
12
- c.action do |_global_options, options, _args|
13
- puts JSON.dump($client.admin_inviteRequests_approved_list(options))
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminInviterequestsApproved methods.'
8
+ command 'admin_inviteRequests_approved' do |g|
9
+ g.desc 'List all approved workspace invite requests.'
10
+ g.long_desc %( List all approved workspace invite requests. )
11
+ g.command 'list' do |c|
12
+ c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous API response.'
13
+ c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.'
14
+ c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_inviteRequests_approved_list(options))
17
+ end
18
+ end
19
+ end
14
20
  end
15
21
  end
16
22
  end
@@ -1,16 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminInviterequestsDenied methods.'
5
- command 'admin_inviteRequests_denied' do |g|
6
- g.desc 'List all denied workspace invite requests.'
7
- g.long_desc %( List all denied workspace invite requests. )
8
- g.command 'list' do |c|
9
- c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous api response.'
10
- c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000 both inclusive.'
11
- c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
12
- c.action do |_global_options, options, _args|
13
- puts JSON.dump($client.admin_inviteRequests_denied_list(options))
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminInviterequestsDenied methods.'
8
+ command 'admin_inviteRequests_denied' do |g|
9
+ g.desc 'List all denied workspace invite requests.'
10
+ g.long_desc %( List all denied workspace invite requests. )
11
+ g.command 'list' do |c|
12
+ c.flag 'cursor', desc: 'Value of the next_cursor field sent as part of the previous api response.'
13
+ c.flag 'limit', desc: 'The number of results that will be returned by the API on each invocation. Must be between 1 - 1000 both inclusive.'
14
+ c.flag 'team_id', desc: 'ID for the workspace where the invite requests were made.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_inviteRequests_denied_list(options))
17
+ end
18
+ end
19
+ end
14
20
  end
15
21
  end
16
22
  end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+ # This file was auto-generated by lib/tasks/web.rake
3
+
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminRoles methods.'
8
+ command 'admin_roles' do |g|
9
+ g.desc 'Adds members to the specified role with the specified scopes'
10
+ g.long_desc %( Adds members to the specified role with the specified scopes )
11
+ g.command 'addAssignments' do |c|
12
+ c.flag 'entity_ids', desc: 'List of the entity IDs for which roles will be assigned. These can be Org IDs, Team IDs or Channel IDs.'
13
+ c.flag 'role_id', desc: 'ID of the role to which users will be assigned.'
14
+ c.flag 'user_ids', desc: 'List of IDs from the users to be added to the given role.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_roles_addAssignments(options))
17
+ end
18
+ end
19
+
20
+ g.desc 'Lists assignments for all roles across entities. Options to scope results by any combination of roles or entities'
21
+ g.long_desc %( Lists assignments for all roles across entities. Options to scope results by any combination of roles or entities )
22
+ g.command 'listAssignments' do |c|
23
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
24
+ c.flag 'entity_ids', desc: 'The entities for which the roles apply.'
25
+ c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 100 both inclusive.'
26
+ c.flag 'role_ids', desc: 'collection of role ids to scope results by.'
27
+ c.flag 'sort_dir', desc: 'Sort direction. Default is descending on date_create, can be either ASC or DESC.'
28
+ c.action do |_global_options, options, _args|
29
+ puts JSON.dump(@client.admin_roles_listAssignments(options))
30
+ end
31
+ end
32
+
33
+ g.desc 'Removes a set of users from a role for the given scopes and entities'
34
+ g.long_desc %( Removes a set of users from a role for the given scopes and entities )
35
+ g.command 'removeAssignments' do |c|
36
+ c.flag 'entity_ids', desc: 'List of the entity IDs for which roles will be revoked. These can be Org IDs, Team IDs or Channel IDs.'
37
+ c.flag 'role_id', desc: 'ID of the role to which users will be assigned.'
38
+ c.flag 'user_ids', desc: 'List of IDs of the users whose roles will be revoked.'
39
+ c.action do |_global_options, options, _args|
40
+ puts JSON.dump(@client.admin_roles_removeAssignments(options))
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -1,27 +1,33 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminTeams methods.'
5
- command 'admin_teams' do |g|
6
- g.desc 'Create an Enterprise team.'
7
- g.long_desc %( Create an Enterprise team. )
8
- g.command 'create' do |c|
9
- c.flag 'team_domain', desc: 'Team domain (for example, slacksoftballteam). Domains are limited to 21 characters.'
10
- c.flag 'team_name', desc: 'Team name (for example, Slack Softball Team).'
11
- c.flag 'team_description', desc: 'Description for the team.'
12
- c.flag 'team_discoverability', desc: "Who can join the team. A team's discoverability can be open, closed, invite_only, or unlisted."
13
- c.action do |_global_options, options, _args|
14
- puts JSON.dump($client.admin_teams_create(options))
15
- end
16
- end
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminTeams methods.'
8
+ command 'admin_teams' do |g|
9
+ g.desc 'Create an Enterprise team.'
10
+ g.long_desc %( Create an Enterprise team. )
11
+ g.command 'create' do |c|
12
+ c.flag 'team_domain', desc: 'Team domain (for example, slacksoftballteam). Domains are limited to 21 characters.'
13
+ c.flag 'team_name', desc: 'Team name (for example, Slack Softball Team).'
14
+ c.flag 'team_description', desc: 'Description for the team.'
15
+ c.flag 'team_discoverability', desc: "Who can join the team. A team's discoverability can be open, closed, invite_only, or unlisted."
16
+ c.action do |_global_options, options, _args|
17
+ puts JSON.dump(@client.admin_teams_create(options))
18
+ end
19
+ end
17
20
 
18
- g.desc 'List all teams on an Enterprise organization'
19
- g.long_desc %( List all teams on an Enterprise organization )
20
- g.command 'list' do |c|
21
- c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
22
- c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 100 both inclusive.'
23
- c.action do |_global_options, options, _args|
24
- puts JSON.dump($client.admin_teams_list(options))
21
+ g.desc 'List all teams on an Enterprise organization'
22
+ g.long_desc %( List all teams on an Enterprise organization )
23
+ g.command 'list' do |c|
24
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
25
+ c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 100 both inclusive.'
26
+ c.action do |_global_options, options, _args|
27
+ puts JSON.dump(@client.admin_teams_list(options))
28
+ end
29
+ end
30
+ end
25
31
  end
26
32
  end
27
33
  end
@@ -1,16 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminTeamsAdmins methods.'
5
- command 'admin_teams_admins' do |g|
6
- g.desc 'List all of the admins on a given workspace.'
7
- g.long_desc %( List all of the admins on a given workspace. )
8
- g.command 'list' do |c|
9
- c.flag 'team_id', desc: '.'
10
- c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
11
- c.flag 'limit', desc: 'The maximum number of items to return.'
12
- c.action do |_global_options, options, _args|
13
- puts JSON.dump($client.admin_teams_admins_list(options))
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminTeamsAdmins methods.'
8
+ command 'admin_teams_admins' do |g|
9
+ g.desc 'List all of the admins on a given workspace.'
10
+ g.long_desc %( List all of the admins on a given workspace. )
11
+ g.command 'list' do |c|
12
+ c.flag 'team_id', desc: '.'
13
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
14
+ c.flag 'limit', desc: 'The maximum number of items to return.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_teams_admins_list(options))
17
+ end
18
+ end
19
+ end
14
20
  end
15
21
  end
16
22
  end
@@ -1,16 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
  # This file was auto-generated by lib/tasks/web.rake
3
3
 
4
- desc 'AdminTeamsOwners methods.'
5
- command 'admin_teams_owners' do |g|
6
- g.desc 'List all of the owners on a given workspace.'
7
- g.long_desc %( List all of the owners on a given workspace. )
8
- g.command 'list' do |c|
9
- c.flag 'team_id', desc: '.'
10
- c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
11
- c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
12
- c.action do |_global_options, options, _args|
13
- puts JSON.dump($client.admin_teams_owners_list(options))
4
+ module Slack
5
+ module Cli
6
+ class App
7
+ desc 'AdminTeamsOwners methods.'
8
+ command 'admin_teams_owners' do |g|
9
+ g.desc 'List all of the owners on a given workspace.'
10
+ g.long_desc %( List all of the owners on a given workspace. )
11
+ g.command 'list' do |c|
12
+ c.flag 'team_id', desc: '.'
13
+ c.flag 'cursor', desc: 'Set cursor to next_cursor returned by the previous call to list items in the next page.'
14
+ c.flag 'limit', desc: 'The maximum number of items to return. Must be between 1 - 1000 both inclusive.'
15
+ c.action do |_global_options, options, _args|
16
+ puts JSON.dump(@client.admin_teams_owners_list(options))
17
+ end
18
+ end
19
+ end
14
20
  end
15
21
  end
16
22
  end