slack-ruby-client 3.1.0 → 3.2.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 (294) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +0 -0
  3. data/.github/FUNDING.yml +0 -0
  4. data/.github/dependabot.yml +0 -0
  5. data/.github/workflows/danger-comment.yml +11 -0
  6. data/.github/workflows/danger.yml +13 -0
  7. data/.github/workflows/lint.yml +1 -1
  8. data/.github/workflows/test.yml +1 -1
  9. data/.github/workflows/update_api.yml +8 -10
  10. data/.gitignore +0 -0
  11. data/.gitmodules +0 -0
  12. data/.rspec +0 -0
  13. data/.rubocop.yml +0 -0
  14. data/.rubocop_todo.yml +5 -2
  15. data/.ruby-version +0 -0
  16. data/CHANGELOG.md +10 -1
  17. data/CONTRIBUTING.md +0 -0
  18. data/Dangerfile +4 -1
  19. data/Gemfile +3 -0
  20. data/LICENSE.md +0 -0
  21. data/README.md +1 -1
  22. data/RELEASING.md +0 -0
  23. data/Rakefile +0 -0
  24. data/SECURITY.md +0 -0
  25. data/UPGRADING.md +4 -0
  26. data/bin/commands/admin_analytics.rb +0 -0
  27. data/bin/commands/admin_analytics_messages.rb +36 -0
  28. data/bin/commands/admin_apps.rb +3 -0
  29. data/bin/commands/admin_apps_activities.rb +0 -0
  30. data/bin/commands/admin_apps_approved.rb +0 -0
  31. data/bin/commands/admin_apps_config.rb +0 -0
  32. data/bin/commands/admin_apps_requests.rb +0 -0
  33. data/bin/commands/admin_apps_restricted.rb +0 -0
  34. data/bin/commands/admin_audit_anomaly_allow.rb +0 -0
  35. data/bin/commands/admin_auth_policy.rb +0 -0
  36. data/bin/commands/admin_barriers.rb +0 -0
  37. data/bin/commands/admin_conversations.rb +10 -0
  38. data/bin/commands/admin_conversations_ekm.rb +0 -0
  39. data/bin/commands/admin_conversations_restrictAccess.rb +0 -0
  40. data/bin/commands/admin_emoji.rb +0 -0
  41. data/bin/commands/admin_functions.rb +0 -0
  42. data/bin/commands/admin_functions_permissions.rb +1 -0
  43. data/bin/commands/admin_inviteRequests.rb +0 -0
  44. data/bin/commands/admin_inviteRequests_approved.rb +0 -0
  45. data/bin/commands/admin_inviteRequests_denied.rb +0 -0
  46. data/bin/commands/admin_roles.rb +0 -0
  47. data/bin/commands/admin_teams.rb +0 -0
  48. data/bin/commands/admin_teams_admins.rb +0 -0
  49. data/bin/commands/admin_teams_owners.rb +0 -0
  50. data/bin/commands/admin_teams_settings.rb +0 -0
  51. data/bin/commands/admin_usergroups.rb +0 -0
  52. data/bin/commands/admin_users.rb +10 -8
  53. data/bin/commands/admin_users_session.rb +0 -0
  54. data/bin/commands/admin_users_unsupportedVersions.rb +0 -0
  55. data/bin/commands/admin_workflows.rb +0 -0
  56. data/bin/commands/admin_workflows_collaborators.rb +0 -0
  57. data/bin/commands/admin_workflows_permissions.rb +0 -0
  58. data/bin/commands/admin_workflows_triggers_types_permissions.rb +4 -3
  59. data/bin/commands/api.rb +0 -0
  60. data/bin/commands/apps.rb +0 -0
  61. data/bin/commands/apps_activities.rb +0 -0
  62. data/bin/commands/apps_auth_external.rb +0 -0
  63. data/bin/commands/apps_connections.rb +0 -0
  64. data/bin/commands/apps_datastore.rb +0 -0
  65. data/bin/commands/apps_event_authorizations.rb +0 -0
  66. data/bin/commands/apps_icon.rb +22 -0
  67. data/bin/commands/apps_manifest.rb +7 -6
  68. data/bin/commands/apps_user_connection.rb +21 -0
  69. data/bin/commands/assistant_search.rb +3 -2
  70. data/bin/commands/assistant_threads.rb +5 -2
  71. data/bin/commands/auth.rb +0 -0
  72. data/bin/commands/auth_teams.rb +0 -0
  73. data/bin/commands/blocks.rb +22 -0
  74. data/bin/commands/bookmarks.rb +6 -6
  75. data/bin/commands/bots.rb +0 -0
  76. data/bin/commands/calls.rb +0 -0
  77. data/bin/commands/calls_participants.rb +0 -0
  78. data/bin/commands/canvases.rb +0 -0
  79. data/bin/commands/canvases_access.rb +0 -0
  80. data/bin/commands/canvases_sections.rb +0 -0
  81. data/bin/commands/chat.rb +13 -6
  82. data/bin/commands/chat_scheduledMessages.rb +0 -0
  83. data/bin/commands/conversations.rb +1 -1
  84. data/bin/commands/conversations_canvases.rb +0 -0
  85. data/bin/commands/conversations_externalInvitePermissions.rb +0 -0
  86. data/bin/commands/conversations_requestSharedInvite.rb +0 -0
  87. data/bin/commands/dialog.rb +0 -0
  88. data/bin/commands/dnd.rb +0 -0
  89. data/bin/commands/emoji.rb +0 -0
  90. data/bin/commands/entity.rb +0 -0
  91. data/bin/commands/files.rb +2 -2
  92. data/bin/commands/files_comments.rb +0 -0
  93. data/bin/commands/files_remote.rb +0 -0
  94. data/bin/commands/functions.rb +0 -0
  95. data/bin/commands/functions_distributions_permissions.rb +0 -0
  96. data/bin/commands/functions_workflows_steps.rb +0 -0
  97. data/bin/commands/functions_workflows_steps_responses.rb +0 -0
  98. data/bin/commands/migration.rb +0 -0
  99. data/bin/commands/oauth.rb +0 -0
  100. data/bin/commands/oauth_v2.rb +1 -0
  101. data/bin/commands/oauth_v2_user.rb +27 -0
  102. data/bin/commands/openid_connect.rb +1 -0
  103. data/bin/commands/pins.rb +0 -0
  104. data/bin/commands/reactions.rb +0 -0
  105. data/bin/commands/reminders.rb +0 -0
  106. data/bin/commands/rtm.rb +0 -0
  107. data/bin/commands/search.rb +0 -0
  108. data/bin/commands/slackLists.rb +0 -0
  109. data/bin/commands/slackLists_access.rb +0 -0
  110. data/bin/commands/slackLists_download.rb +0 -0
  111. data/bin/commands/slackLists_items.rb +0 -0
  112. data/bin/commands/stars.rb +0 -0
  113. data/bin/commands/team.rb +0 -0
  114. data/bin/commands/team_billing.rb +0 -0
  115. data/bin/commands/team_externalTeams.rb +0 -0
  116. data/bin/commands/team_preferences.rb +0 -0
  117. data/bin/commands/team_profile.rb +0 -0
  118. data/bin/commands/tooling_tokens.rb +0 -0
  119. data/bin/commands/usergroups.rb +0 -0
  120. data/bin/commands/usergroups_users.rb +0 -0
  121. data/bin/commands/users.rb +2 -2
  122. data/bin/commands/users_admin.rb +0 -0
  123. data/bin/commands/users_discoverableContacts.rb +0 -0
  124. data/bin/commands/users_prefs.rb +0 -0
  125. data/bin/commands/users_profile.rb +0 -0
  126. data/bin/commands/views.rb +1 -0
  127. data/bin/commands/workflows_featured.rb +0 -0
  128. data/bin/commands/workflows_triggers_permissions.rb +0 -0
  129. data/examples/files_upload_v2/.env.example +0 -0
  130. data/examples/files_upload_v2/Gemfile +0 -0
  131. data/examples/files_upload_v2/README.md +0 -0
  132. data/examples/files_upload_v2/files_upload_v2.rb +0 -0
  133. data/examples/hi_web/Gemfile +0 -0
  134. data/examples/hi_web/hi.gif +0 -0
  135. data/examples/hi_web/hi.rb +0 -0
  136. data/examples/new_ticket/Gemfile +0 -0
  137. data/examples/new_ticket/new_ticket.rb +0 -0
  138. data/examples/oauth_v2/.env.example +0 -0
  139. data/examples/oauth_v2/Gemfile +0 -0
  140. data/examples/oauth_v2/README.md +0 -0
  141. data/lib/slack/config.rb +0 -0
  142. data/lib/slack/events/config.rb +0 -0
  143. data/lib/slack/events/request.rb +0 -0
  144. data/lib/slack/logger.rb +0 -0
  145. data/lib/slack/messages/formatting.rb +0 -0
  146. data/lib/slack/messages/message.rb +0 -0
  147. data/lib/slack/utils/security.rb +0 -0
  148. data/lib/slack/version.rb +1 -1
  149. data/lib/slack/web/api/endpoints/admin_analytics.rb +0 -0
  150. data/lib/slack/web/api/endpoints/admin_analytics_messages.rb +64 -0
  151. data/lib/slack/web/api/endpoints/admin_apps.rb +6 -0
  152. data/lib/slack/web/api/endpoints/admin_apps_activities.rb +0 -0
  153. data/lib/slack/web/api/endpoints/admin_apps_approved.rb +0 -0
  154. data/lib/slack/web/api/endpoints/admin_apps_config.rb +0 -0
  155. data/lib/slack/web/api/endpoints/admin_apps_requests.rb +0 -0
  156. data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +0 -0
  157. data/lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb +0 -0
  158. data/lib/slack/web/api/endpoints/admin_auth_policy.rb +0 -0
  159. data/lib/slack/web/api/endpoints/admin_barriers.rb +0 -0
  160. data/lib/slack/web/api/endpoints/admin_conversations.rb +15 -0
  161. data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +0 -0
  162. data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +0 -0
  163. data/lib/slack/web/api/endpoints/admin_emoji.rb +0 -0
  164. data/lib/slack/web/api/endpoints/admin_functions.rb +0 -0
  165. data/lib/slack/web/api/endpoints/admin_functions_permissions.rb +2 -1
  166. data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +0 -0
  167. data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +0 -0
  168. data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +0 -0
  169. data/lib/slack/web/api/endpoints/admin_roles.rb +0 -0
  170. data/lib/slack/web/api/endpoints/admin_teams.rb +0 -0
  171. data/lib/slack/web/api/endpoints/admin_teams_admins.rb +0 -0
  172. data/lib/slack/web/api/endpoints/admin_teams_owners.rb +0 -0
  173. data/lib/slack/web/api/endpoints/admin_teams_settings.rb +0 -0
  174. data/lib/slack/web/api/endpoints/admin_usergroups.rb +0 -0
  175. data/lib/slack/web/api/endpoints/admin_users.rb +10 -6
  176. data/lib/slack/web/api/endpoints/admin_users_session.rb +0 -0
  177. data/lib/slack/web/api/endpoints/admin_users_unsupportedVersions.rb +0 -0
  178. data/lib/slack/web/api/endpoints/admin_workflows.rb +0 -0
  179. data/lib/slack/web/api/endpoints/admin_workflows_collaborators.rb +0 -0
  180. data/lib/slack/web/api/endpoints/admin_workflows_permissions.rb +0 -0
  181. data/lib/slack/web/api/endpoints/admin_workflows_triggers_types_permissions.rb +3 -3
  182. data/lib/slack/web/api/endpoints/api.rb +0 -0
  183. data/lib/slack/web/api/endpoints/apps.rb +0 -0
  184. data/lib/slack/web/api/endpoints/apps_activities.rb +0 -0
  185. data/lib/slack/web/api/endpoints/apps_auth_external.rb +0 -0
  186. data/lib/slack/web/api/endpoints/apps_connections.rb +0 -0
  187. data/lib/slack/web/api/endpoints/apps_datastore.rb +0 -0
  188. data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +0 -0
  189. data/lib/slack/web/api/endpoints/apps_icon.rb +28 -0
  190. data/lib/slack/web/api/endpoints/apps_manifest.rb +5 -3
  191. data/lib/slack/web/api/endpoints/apps_user_connection.rb +27 -0
  192. data/lib/slack/web/api/endpoints/assistant_search.rb +3 -1
  193. data/lib/slack/web/api/endpoints/assistant_threads.rb +8 -3
  194. data/lib/slack/web/api/endpoints/auth.rb +0 -0
  195. data/lib/slack/web/api/endpoints/auth_teams.rb +0 -0
  196. data/lib/slack/web/api/endpoints/blocks.rb +28 -0
  197. data/lib/slack/web/api/endpoints/bookmarks.rb +6 -12
  198. data/lib/slack/web/api/endpoints/bots.rb +0 -0
  199. data/lib/slack/web/api/endpoints/calls.rb +0 -0
  200. data/lib/slack/web/api/endpoints/calls_participants.rb +0 -0
  201. data/lib/slack/web/api/endpoints/canvases.rb +0 -0
  202. data/lib/slack/web/api/endpoints/canvases_access.rb +0 -0
  203. data/lib/slack/web/api/endpoints/canvases_sections.rb +0 -0
  204. data/lib/slack/web/api/endpoints/chat.rb +31 -13
  205. data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +0 -0
  206. data/lib/slack/web/api/endpoints/conversations.rb +1 -1
  207. data/lib/slack/web/api/endpoints/conversations_canvases.rb +0 -0
  208. data/lib/slack/web/api/endpoints/conversations_externalInvitePermissions.rb +0 -0
  209. data/lib/slack/web/api/endpoints/conversations_requestSharedInvite.rb +0 -0
  210. data/lib/slack/web/api/endpoints/dialog.rb +0 -0
  211. data/lib/slack/web/api/endpoints/dnd.rb +0 -0
  212. data/lib/slack/web/api/endpoints/emoji.rb +0 -0
  213. data/lib/slack/web/api/endpoints/entity.rb +0 -0
  214. data/lib/slack/web/api/endpoints/files.rb +1 -1
  215. data/lib/slack/web/api/endpoints/files_comments.rb +0 -0
  216. data/lib/slack/web/api/endpoints/files_remote.rb +0 -0
  217. data/lib/slack/web/api/endpoints/functions.rb +0 -0
  218. data/lib/slack/web/api/endpoints/functions_distributions_permissions.rb +0 -0
  219. data/lib/slack/web/api/endpoints/functions_workflows_steps.rb +0 -0
  220. data/lib/slack/web/api/endpoints/functions_workflows_steps_responses.rb +0 -0
  221. data/lib/slack/web/api/endpoints/migration.rb +0 -0
  222. data/lib/slack/web/api/endpoints/oauth.rb +0 -0
  223. data/lib/slack/web/api/endpoints/oauth_v2.rb +2 -0
  224. data/lib/slack/web/api/endpoints/oauth_v2_user.rb +37 -0
  225. data/lib/slack/web/api/endpoints/openid_connect.rb +2 -0
  226. data/lib/slack/web/api/endpoints/pins.rb +0 -0
  227. data/lib/slack/web/api/endpoints/reactions.rb +0 -0
  228. data/lib/slack/web/api/endpoints/reminders.rb +0 -0
  229. data/lib/slack/web/api/endpoints/rtm.rb +0 -0
  230. data/lib/slack/web/api/endpoints/search.rb +0 -0
  231. data/lib/slack/web/api/endpoints/slackLists.rb +0 -0
  232. data/lib/slack/web/api/endpoints/slackLists_access.rb +0 -0
  233. data/lib/slack/web/api/endpoints/slackLists_download.rb +0 -0
  234. data/lib/slack/web/api/endpoints/slackLists_items.rb +0 -0
  235. data/lib/slack/web/api/endpoints/stars.rb +0 -0
  236. data/lib/slack/web/api/endpoints/team.rb +0 -0
  237. data/lib/slack/web/api/endpoints/team_billing.rb +0 -0
  238. data/lib/slack/web/api/endpoints/team_externalTeams.rb +0 -0
  239. data/lib/slack/web/api/endpoints/team_preferences.rb +0 -0
  240. data/lib/slack/web/api/endpoints/team_profile.rb +0 -0
  241. data/lib/slack/web/api/endpoints/tooling_tokens.rb +0 -0
  242. data/lib/slack/web/api/endpoints/usergroups.rb +0 -0
  243. data/lib/slack/web/api/endpoints/usergroups_users.rb +0 -0
  244. data/lib/slack/web/api/endpoints/users.rb +1 -1
  245. data/lib/slack/web/api/endpoints/users_admin.rb +0 -0
  246. data/lib/slack/web/api/endpoints/users_discoverableContacts.rb +0 -0
  247. data/lib/slack/web/api/endpoints/users_prefs.rb +0 -0
  248. data/lib/slack/web/api/endpoints/users_profile.rb +0 -0
  249. data/lib/slack/web/api/endpoints/views.rb +1 -0
  250. data/lib/slack/web/api/endpoints/workflows_featured.rb +0 -0
  251. data/lib/slack/web/api/endpoints/workflows_triggers_permissions.rb +0 -0
  252. data/lib/slack/web/api/endpoints.rb +10 -0
  253. data/lib/slack/web/api/error.rb +0 -0
  254. data/lib/slack/web/api/errors/server_error.rb +0 -0
  255. data/lib/slack/web/api/errors/slack_error.rb +0 -0
  256. data/lib/slack/web/api/errors/too_many_requests_error.rb +0 -0
  257. data/lib/slack/web/api/errors.rb +112 -6
  258. data/lib/slack/web/api/helpers/files.rb +0 -0
  259. data/lib/slack/web/api/helpers.rb +0 -0
  260. data/lib/slack/web/api/mixins/conversations.id.rb +0 -0
  261. data/lib/slack/web/api/mixins/ids.id.rb +3 -1
  262. data/lib/slack/web/api/mixins/users.id.json +0 -0
  263. data/lib/slack/web/api/mixins/users.id.rb +0 -0
  264. data/lib/slack/web/api/mixins/users.search.json +0 -0
  265. data/lib/slack/web/api/mixins/users.search.rb +0 -0
  266. data/lib/slack/web/api/mixins.rb +0 -0
  267. data/lib/slack/web/api/options.rb +0 -0
  268. data/lib/slack/web/api/patches/.gitkeep +0 -0
  269. data/lib/slack/web/api/schema/group.json +0 -0
  270. data/lib/slack/web/api/schema/method.json +0 -0
  271. data/lib/slack/web/api/templates/command.erb +0 -0
  272. data/lib/slack/web/api/templates/endpoints.erb +0 -0
  273. data/lib/slack/web/api/templates/errors.erb +0 -0
  274. data/lib/slack/web/api/templates/method.erb +3 -1
  275. data/lib/slack/web/api/templates/method_spec.erb +32 -3
  276. data/lib/slack/web/client.rb +0 -0
  277. data/lib/slack/web/config.rb +0 -0
  278. data/lib/slack/web/faraday/connection.rb +0 -0
  279. data/lib/slack/web/faraday/options.rb +0 -0
  280. data/lib/slack/web/faraday/request.rb +0 -0
  281. data/lib/slack/web/faraday/response/raise_error.rb +0 -0
  282. data/lib/slack/web/faraday/response/wrap_error.rb +0 -0
  283. data/lib/slack/web/pagination/cursor.rb +0 -0
  284. data/lib/slack-ruby-client.rb +0 -0
  285. data/lib/slack.rb +0 -0
  286. data/lib/slack_ruby_client.rb +0 -0
  287. data/lib/tasks/git.rake +0 -0
  288. data/lib/tasks/update.rake +0 -0
  289. data/lib/tasks/web.rake +5 -2
  290. data/slack-ruby-client.gemspec +0 -0
  291. data/slack.png +0 -0
  292. metadata +13 -3
  293. data/.github/workflows/pr_lint.yml +0 -21
  294. data/Gemfile.danger +0 -6
File without changes
File without changes
@@ -7,10 +7,10 @@ module Slack
7
7
  module Endpoints
8
8
  module AdminWorkflowsTriggersTypesPermissions
9
9
  #
10
- # list the permissions for using each trigger type
10
+ # List the permissions for using each trigger type.
11
11
  #
12
12
  # @option options [array] :trigger_type_ids
13
- # The trigger types IDs for which to get the permissions.
13
+ # The trigger type IDs for which to get the permissions.
14
14
  # @see https://api.slack.com/methods/admin.workflows.triggers.types.permissions.lookup
15
15
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.workflows.triggers.types.permissions/admin.workflows.triggers.types.permissions.lookup.json
16
16
  def admin_workflows_triggers_types_permissions_lookup(options = {})
@@ -27,11 +27,11 @@ module Slack
27
27
  # The function visibility.
28
28
  # @option options [array] :user_ids
29
29
  # List of user IDs to allow for named_entities visibility.
30
+ # @option options [object] :permissions
30
31
  # @see https://api.slack.com/methods/admin.workflows.triggers.types.permissions.set
31
32
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.workflows.triggers.types.permissions/admin.workflows.triggers.types.permissions.set.json
32
33
  def admin_workflows_triggers_types_permissions_set(options = {})
33
34
  raise ArgumentError, 'Required arguments :id missing' if options[:id].nil?
34
- raise ArgumentError, 'Required arguments :visibility missing' if options[:visibility].nil?
35
35
  post('admin.workflows.triggers.types.permissions.set', options)
36
36
  end
37
37
  end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -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 AppsIcon
9
+ #
10
+ # Sets the app icon
11
+ #
12
+ # @option options [Object] :app_id
13
+ # The ID of the app whose icon you want to set.
14
+ # @option options [file] :file
15
+ # File contents via multipart/form-data.
16
+ # @option options [string] :url
17
+ # URL of a publicly hosted image.
18
+ # @see https://api.slack.com/methods/apps.icon.set
19
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.icon/apps.icon.set.json
20
+ def apps_icon_set(options = {})
21
+ raise ArgumentError, 'Required arguments :app_id missing' if options[:app_id].nil?
22
+ post('apps.icon.set', options)
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -11,6 +11,8 @@ module Slack
11
11
  #
12
12
  # @option options [string] :manifest
13
13
  # A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one.
14
+ # @option options [string] :team_id
15
+ # When called with an org token, which specific team to create app on.
14
16
  # @see https://api.slack.com/methods/apps.manifest.create
15
17
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.create.json
16
18
  def apps_manifest_create(options = {})
@@ -20,7 +22,7 @@ module Slack
20
22
  end
21
23
 
22
24
  #
23
- # Permanently deletes an app created through app manifests
25
+ # Permanently deletes an app created through app manifests. When called with a manager app token, this method can only delete apps that were created by that manager app.
24
26
  #
25
27
  # @option options [Object] :app_id
26
28
  # The ID of the app you want to delete.
@@ -32,7 +34,7 @@ module Slack
32
34
  end
33
35
 
34
36
  #
35
- # Export an app manifest from an existing app
37
+ # Export an app manifest from an existing app. When called with a manager app token, this method can only export apps that were created by that manager app.
36
38
  #
37
39
  # @option options [Object] :app_id
38
40
  # The ID of the app whose configuration you want to export as a manifest.
@@ -44,7 +46,7 @@ module Slack
44
46
  end
45
47
 
46
48
  #
47
- # Update an app from an app manifest
49
+ # Update an app from an app manifest. When called with a manager app token, this method can only update apps that were created by that manager app.
48
50
  #
49
51
  # @option options [string] :manifest
50
52
  # A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one. As this method entirely _replaces_ any previous configuration, manifest must contain both unmodified and modified fields.
@@ -0,0 +1,27 @@
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 AppsUserConnection
9
+ #
10
+ # Updates the connection status between a user and an app.
11
+ #
12
+ # @option options [string] :user_id
13
+ # The ID of the user for the status update.
14
+ # @option options [enum] :status
15
+ # The status that should be set for the user.
16
+ # @see https://api.slack.com/methods/apps.user.connection.update
17
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.user.connection/apps.user.connection.update.json
18
+ def apps_user_connection_update(options = {})
19
+ raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
20
+ raise ArgumentError, 'Required arguments :status missing' if options[:status].nil?
21
+ post('apps.user.connection.update', options)
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -7,7 +7,7 @@ module Slack
7
7
  module Endpoints
8
8
  module AssistantSearch
9
9
  #
10
- # Searches messages across your Slack organization—perfect for broad, specific, and real-time data retrieval.
10
+ # Searches messages, files, channels and users across your Slack organization.
11
11
  #
12
12
  # @option options [string] :query
13
13
  # User prompt or search query.
@@ -47,6 +47,8 @@ module Slack
47
47
  # A string containing only modifiers in the format of modifier:value. Search results returned will match the modifier value. For now modifiers only affect term clauses.
48
48
  # @option options [boolean] :include_archived_channels
49
49
  # Whether to include archived channels in the search results.
50
+ # @option options [boolean] :disable_semantic_search
51
+ # Whether to disable semantic search. When true, only keyword-based search is used. Defaults to false.
50
52
  # @see https://api.slack.com/methods/assistant.search.context
51
53
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/assistant.search/assistant.search.context.json
52
54
  def assistant_search_context(options = {})
@@ -14,9 +14,15 @@ module Slack
14
14
  # @option options [string] :thread_ts
15
15
  # Message timestamp of the thread of where to set the status.
16
16
  # @option options [string] :status
17
- # Status of the specified bot user, e.g. 'is thinking...'.
17
+ # Status of the specified bot user, e.g., 'is thinking...'. A two minute timeout applies, which will cause the status to be removed if no message has been sent.
18
18
  # @option options [array] :loading_messages
19
- # The list of messages to rotate through as a loading indicator.
19
+ # The list of messages to rotate through as a loading indicator. Maximum of 10 messages.
20
+ # @option options [string] :icon_emoji
21
+ # Emoji to use as the icon for this message. Overrides icon_url.
22
+ # @option options [string] :icon_url
23
+ # Image URL to use as the icon for this message.
24
+ # @option options [string] :username
25
+ # The bot's username to display.
20
26
  # @see https://api.slack.com/methods/assistant.threads.setStatus
21
27
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/assistant.threads/assistant.threads.setStatus.json
22
28
  def assistant_threads_setStatus(options = {})
@@ -41,7 +47,6 @@ module Slack
41
47
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/assistant.threads/assistant.threads.setSuggestedPrompts.json
42
48
  def assistant_threads_setSuggestedPrompts(options = {})
43
49
  raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
44
- raise ArgumentError, 'Required arguments :thread_ts missing' if options[:thread_ts].nil?
45
50
  raise ArgumentError, 'Required arguments :prompts missing' if options[:prompts].nil?
46
51
  post('assistant.threads.setSuggestedPrompts', options)
47
52
  end
File without changes
File without changes
@@ -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 Blocks
9
+ #
10
+ # Validates blocks, messages, and views Block Kit JSON payloads.
11
+ #
12
+ # @option options [string] :blocks
13
+ # A JSON-encoded array of structured blocks. Provide exactly one of blocks, view, or message.
14
+ # @option options [string] :message
15
+ # A JSON-encoded message payload to validate. Provide exactly one of blocks, view, or message.
16
+ # @option options [string] :view
17
+ # A JSON-encoded view payload to validate. Provide exactly one of blocks, view, or message.
18
+ # @see https://api.slack.com/methods/blocks.validate
19
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/blocks/blocks.validate.json
20
+ def blocks_validate(options = {})
21
+ options = encode_options_as_json(options, %i[blocks message view])
22
+ post('blocks.validate', options)
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -10,7 +10,7 @@ module Slack
10
10
  # Add bookmark to a channel.
11
11
  #
12
12
  # @option options [string] :channel_id
13
- # Channel to add bookmark in.
13
+ # Channel to add bookmark in. Required for public channels.
14
14
  # @option options [string] :title
15
15
  # Title for the bookmark.
16
16
  # @option options [string] :link
@@ -28,7 +28,6 @@ module Slack
28
28
  # @see https://api.slack.com/methods/bookmarks.add
29
29
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.add.json
30
30
  def bookmarks_add(options = {})
31
- raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
32
31
  raise ArgumentError, 'Required arguments :title missing' if options[:title].nil?
33
32
  raise ArgumentError, 'Required arguments :type missing' if options[:type].nil?
34
33
  post('bookmarks.add', options)
@@ -38,9 +37,9 @@ module Slack
38
37
  # Edit bookmark.
39
38
  #
40
39
  # @option options [string] :channel_id
41
- # Channel to update bookmark in.
40
+ # Channel to update bookmark in. Required for public channels.
42
41
  # @option options [string] :bookmark_id
43
- # Bookmark to update.
42
+ # Bookmark to update. Required for public channels.
44
43
  # @option options [string] :title
45
44
  # Title for the bookmark.
46
45
  # @option options [string] :link
@@ -50,8 +49,6 @@ module Slack
50
49
  # @see https://api.slack.com/methods/bookmarks.edit
51
50
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.edit.json
52
51
  def bookmarks_edit(options = {})
53
- raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
54
- raise ArgumentError, 'Required arguments :bookmark_id missing' if options[:bookmark_id].nil?
55
52
  post('bookmarks.edit', options)
56
53
  end
57
54
 
@@ -59,11 +56,10 @@ module Slack
59
56
  # List bookmark for the channel.
60
57
  #
61
58
  # @option options [string] :channel_id
62
- # Channel to list bookmarks in.
59
+ # Channel to list bookmarks in. Required for public channels.
63
60
  # @see https://api.slack.com/methods/bookmarks.list
64
61
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.list.json
65
62
  def bookmarks_list(options = {})
66
- raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
67
63
  post('bookmarks.list', options)
68
64
  end
69
65
 
@@ -71,16 +67,14 @@ module Slack
71
67
  # Remove bookmark from the channel.
72
68
  #
73
69
  # @option options [string] :channel_id
74
- # Channel to remove bookmark.
70
+ # Channel to remove bookmark. Required for public channels.
75
71
  # @option options [string] :bookmark_id
76
- # Bookmark to remove.
72
+ # Bookmark to remove. Required for public channels.
77
73
  # @option options [string] :quip_section_id
78
74
  # Quip section ID to unbookmark.
79
75
  # @see https://api.slack.com/methods/bookmarks.remove
80
76
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.remove.json
81
77
  def bookmarks_remove(options = {})
82
- raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
83
- raise ArgumentError, 'Required arguments :bookmark_id missing' if options[:bookmark_id].nil?
84
78
  post('bookmarks.remove', options)
85
79
  end
86
80
  end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -11,6 +11,8 @@ module Slack
11
11
  #
12
12
  # @option options [channel] :channel
13
13
  # An encoded ID that represents a channel, private group, or DM.
14
+ # @option options [array] :chunks
15
+ # Array of streaming chunks.
14
16
  # @option options [timestamp] :ts
15
17
  # The timestamp of the streaming message.
16
18
  # @option options [string] :markdown_text
@@ -144,7 +146,8 @@ module Slack
144
146
  def chat_postEphemeral(options = {})
145
147
  raise ArgumentError, 'Required arguments :channel missing' if options[:channel].nil?
146
148
  raise ArgumentError, 'Required arguments :user missing' if options[:user].nil?
147
- raise ArgumentError, 'At least one of :attachments, :blocks, :text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil?
149
+ raise ArgumentError, 'At least one of :attachments, :blocks, :text, :markdown_text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil? && options[:markdown_text].nil?
150
+ raise ArgumentError, ':text, :markdown_text are mutually exclusive' if !options[:text].nil? && !options[:markdown_text].nil?
148
151
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
149
152
  options = encode_options_as_json(options, %i[attachments blocks])
150
153
  post('chat.postEphemeral', options)
@@ -172,7 +175,7 @@ module Slack
172
175
  # @option options [string] :markdown_text
173
176
  # Accepts message text formatted in markdown. This argument should not be used in conjunction with blocks or text. Limit this field to 12,000 characters.
174
177
  # @option options [string] :metadata
175
- # JSON object with event_type and event_payload fields, presented as a URL-encoded string. Metadata you post to Slack is accessible to any app or user who is a member of that workspace.
178
+ # JSON object with event_type and event_payload fields, presented as a URL-encoded string. You can also provide Work Object entity metadata using this parameter. Metadata you post to Slack is accessible to any app or user who is a member of that workspace.
176
179
  # @option options [boolean] :mrkdwn
177
180
  # Disable Slack markup parsing by setting to false. Enabled by default.
178
181
  # @option options [string] :parse
@@ -193,7 +196,8 @@ module Slack
193
196
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/chat/chat.postMessage.json
194
197
  def chat_postMessage(options = {})
195
198
  raise ArgumentError, 'Required arguments :channel missing' if options[:channel].nil?
196
- raise ArgumentError, 'At least one of :attachments, :blocks, :text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil?
199
+ raise ArgumentError, 'At least one of :attachments, :blocks, :text, :markdown_text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil? && options[:markdown_text].nil?
200
+ raise ArgumentError, ':text, :markdown_text are mutually exclusive' if !options[:text].nil? && !options[:markdown_text].nil?
197
201
  options = encode_options_as_json(options, %i[attachments blocks metadata])
198
202
  post('chat.postMessage', options)
199
203
  end
@@ -234,7 +238,8 @@ module Slack
234
238
  def chat_scheduleMessage(options = {})
235
239
  raise ArgumentError, 'Required arguments :channel missing' if options[:channel].nil?
236
240
  raise ArgumentError, 'Required arguments :post_at missing' if options[:post_at].nil?
237
- raise ArgumentError, 'At least one of :attachments, :blocks, :text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil?
241
+ raise ArgumentError, 'At least one of :attachments, :blocks, :text, :markdown_text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil? && options[:markdown_text].nil?
242
+ raise ArgumentError, ':text, :markdown_text are mutually exclusive' if !options[:text].nil? && !options[:markdown_text].nil?
238
243
  options = encode_options_as_json(options, %i[attachments blocks metadata])
239
244
  post('chat.scheduleMessage', options)
240
245
  end
@@ -243,7 +248,9 @@ module Slack
243
248
  # Starts a new streaming conversation.
244
249
  #
245
250
  # @option options [channel] :channel
246
- # An encoded ID that represents a channel, private group, or DM.
251
+ # An encoded ID that represents a channel thread or DM.
252
+ # @option options [array] :chunks
253
+ # Array of streaming chunks.
247
254
  # @option options [string] :markdown_text
248
255
  # Accepts message text formatted in markdown. Limit this field to 12,000 characters.
249
256
  # @option options [string] :thread_ts
@@ -252,6 +259,14 @@ module Slack
252
259
  # The encoded ID of the user to receive the streaming text. Required when streaming to channels.
253
260
  # @option options [string] :recipient_team_id
254
261
  # The encoded ID of the team the user receiving the streaming text belongs to. Required when streaming to channels.
262
+ # @option options [enum] :task_display_mode
263
+ # Specifies how tasks are displayed in the message. A timeline displays individual tasks with text in sequential order, plan displays all tasks together, with the first tasks's placement determining the placement of the rest of the tasks, and dense collapses consecutive tool calls into a single summarized task card.
264
+ # @option options [string] :icon_emoji
265
+ # Emoji to use as the icon for this message. Overrides icon_url.
266
+ # @option options [string] :icon_url
267
+ # Image URL to use as the icon for this message.
268
+ # @option options [string] :username
269
+ # The bot's username to display.
255
270
  # @see https://api.slack.com/methods/chat.startStream
256
271
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/chat/chat.startStream.json
257
272
  def chat_startStream(options = {})
@@ -266,6 +281,8 @@ module Slack
266
281
  #
267
282
  # @option options [channel] :channel
268
283
  # An encoded ID that represents a channel, private group, or DM.
284
+ # @option options [array] :chunks
285
+ # Array of streaming chunks.
269
286
  # @option options [timestamp] :ts
270
287
  # The timestamp of the streaming message.
271
288
  # @option options [string] :markdown_text
@@ -288,11 +305,11 @@ module Slack
288
305
  # Provide custom unfurl behavior for user-posted URLs
289
306
  #
290
307
  # @option options [channel] :channel
291
- # Channel ID of the message. Both channel and ts must be provided together, or unfurl_id and source must be provided together.
308
+ # Channel ID of the message. Both channel and ts must be provided together, or unfurl_id and source must be provided together. Required for public channels.
292
309
  # @option options [timestamp] :ts
293
- # Timestamp of the message to add unfurl behavior to.
310
+ # Timestamp of the message to add unfurl behavior to. Required for public channels.
294
311
  # @option options [string] :unfurls
295
- # URL-encoded JSON map with keys set to URLs featured in the the message, pointing to their unfurl blocks or message attachments. Either unfurls or metadata must be provided.
312
+ # URL-encoded JSON map with keys set to URLs featured in the the message, pointing to their unfurl blocks or message attachments. Required for public channels.
296
313
  # @option options [string] :user_auth_message
297
314
  # Provide a simply-formatted string to send as an ephemeral message to the user as invitation to authenticate further and enable full unfurling behavior. Provides two buttons, Not now or Never ask me again.
298
315
  # @option options [boolean] :user_auth_required
@@ -305,13 +322,11 @@ module Slack
305
322
  # The ID of the link to unfurl. Both unfurl_id and source must be provided together, or channel and ts must be provided together.
306
323
  # @option options [enum] :source
307
324
  # The source of the link to unfurl. The source may either be composer, when the link is inside the message composer, or conversations_history, when the link has been posted to a conversation.
308
- # @option options [string] :metadata
309
- # JSON object with entity_type and entity_payload fields, presented as a URL-encoded string. Either unfurls or metadata must be provided.
310
325
  # @see https://api.slack.com/methods/chat.unfurl
311
326
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/chat/chat.unfurl.json
312
327
  def chat_unfurl(options = {})
313
328
  options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
314
- options = encode_options_as_json(options, %i[unfurls user_auth_blocks metadata])
329
+ options = encode_options_as_json(options, %i[unfurls user_auth_blocks])
315
330
  post('chat.unfurl', options)
316
331
  end
317
332
 
@@ -322,6 +337,8 @@ module Slack
322
337
  # Pass true to update the message as the authed user. Bot users in this context are considered authed users.
323
338
  # @option options [string] :attachments
324
339
  # A JSON-based array of structured attachments, presented as a URL-encoded string.
340
+ # @option options [string] :unfurled_attachments
341
+ # A JSON-based array of structured attachments, presented as a URL-encoded string.
325
342
  # @option options [string] :blocks
326
343
  # A JSON-based array of structured blocks, presented as a URL-encoded string.
327
344
  # @option options [string] :markdown_text
@@ -347,9 +364,10 @@ module Slack
347
364
  def chat_update(options = {})
348
365
  raise ArgumentError, 'Required arguments :channel missing' if options[:channel].nil?
349
366
  raise ArgumentError, 'Required arguments :ts missing' if options[:ts].nil?
350
- raise ArgumentError, 'At least one of :attachments, :blocks, :text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil?
367
+ raise ArgumentError, 'At least one of :attachments, :blocks, :text, :markdown_text is required' if options[:attachments].nil? && options[:blocks].nil? && options[:text].nil? && options[:markdown_text].nil?
368
+ raise ArgumentError, ':text, :markdown_text are mutually exclusive' if !options[:text].nil? && !options[:markdown_text].nil?
351
369
  options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
352
- options = encode_options_as_json(options, %i[attachments blocks metadata])
370
+ options = encode_options_as_json(options, %i[attachments unfurled_attachments blocks metadata])
353
371
  post('chat.update', options)
354
372
  end
355
373
  end
@@ -34,7 +34,7 @@ module Slack
34
34
  # @option options [Object] :invite_id
35
35
  # ID of the shared channel invite to approve.
36
36
  # @option options [Object] :target_team
37
- # The team or enterprise id of the other party involved in the invitation you are approving.
37
+ # The team or enterprise ID of the receiving party involved in the invitation you are approving.
38
38
  # @see https://api.slack.com/methods/conversations.approveSharedInvite
39
39
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/conversations/conversations.approveSharedInvite.json
40
40
  def conversations_approveSharedInvite(options = {})
File without changes
File without changes
File without changes
File without changes
@@ -100,7 +100,7 @@ module Slack
100
100
  end
101
101
 
102
102
  #
103
- # List for a team, in a channel, or from a user with applied filters.
103
+ # List files for a team, in a channel, or from a user with applied filters.
104
104
  #
105
105
  # @option options [channel] :channel
106
106
  # Filter files appearing in a specific channel, indicated by its ID.
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -23,6 +23,8 @@ module Slack
23
23
  # The grant_type param as described in the OAuth spec.
24
24
  # @option options [string] :refresh_token
25
25
  # The refresh_token param as described in the OAuth spec.
26
+ # @option options [string] :assertion
27
+ # Identity assertion JWT authorization grant.
26
28
  # @see https://api.slack.com/methods/oauth.v2.access
27
29
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/oauth.v2/oauth.v2.access.json
28
30
  def oauth_v2_access(options = {})
@@ -0,0 +1,37 @@
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 OauthV2User
9
+ #
10
+ # Exchanges a temporary OAuth verifier code for a user access token.
11
+ #
12
+ # @option options [string] :client_id
13
+ # Issued when you created your application. If possible, avoid sending client_id and client_secret as parameters in your request and instead supply the Client ID and Client Secret using the HTTP Basic authentication scheme.
14
+ # @option options [string] :client_secret
15
+ # Issued when you created your application. If possible, avoid sending client_id and client_secret as parameters in your request and instead supply the Client ID and Client Secret using the HTTP Basic authentication scheme.
16
+ # @option options [string] :code
17
+ # The code param returned via the OAuth callback.
18
+ # @option options [string] :code_verifier
19
+ # The code_verifier param used to generate the code_challenge originally. Used for PKCE.
20
+ # @option options [string] :redirect_uri
21
+ # This must match the originally submitted URI (if one was sent).
22
+ # @option options [string] :grant_type
23
+ # The grant_type param as described in the OAuth spec.
24
+ # @option options [string] :refresh_token
25
+ # The refresh_token param as described in the OAuth spec.
26
+ # @option options [string] :assertion
27
+ # Identity assertion JWT authorization grant.
28
+ # @see https://api.slack.com/methods/oauth.v2.user.access
29
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/oauth.v2.user/oauth.v2.user.access.json
30
+ def oauth_v2_user_access(options = {})
31
+ post('oauth.v2.user.access', options)
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -21,6 +21,8 @@ module Slack
21
21
  # The grant_type param as described in the OAuth spec.
22
22
  # @option options [string] :refresh_token
23
23
  # The refresh_token param as described in the OAuth spec.
24
+ # @option options [string] :code_verifier
25
+ # PKCE code verifier (RFC 7636). Required when the authorization request included a code_challenge.
24
26
  # @see https://api.slack.com/methods/openid.connect.token
25
27
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/openid.connect/openid.connect.token.json
26
28
  def openid_connect_token(options = {})
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -7,7 +7,7 @@ module Slack
7
7
  module Endpoints
8
8
  module Users
9
9
  #
10
- # List conversations the calling user may access.
10
+ # List conversations the calling user is a member of.
11
11
  #
12
12
  # @option options [string] :cursor
13
13
  # Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request's response_metadata. Default value fetches the first "page" of the collection. See pagination for more detail.