Skip to content

Commit

Permalink
Update API from slack-api-ref@8a22e57 (2024-02-18)
Browse files Browse the repository at this point in the history
  • Loading branch information
web-flow committed Feb 18, 2024
1 parent 9e6d117 commit c80f3b1
Show file tree
Hide file tree
Showing 14 changed files with 193 additions and 9 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
### 2.3.1 (Next)

* [#509](https://github.com/slack-ruby-client/pulls/509): Update API from [slack-api-ref@8a22e57](https://github.com/slack-ruby/slack-api-ref/commit/8a22e57) - [@slack-ruby-ci-bot](https://github.com/apps/slack-ruby-ci-bot).
* Your contribution here.

### 2.3.0 (2024/01/31)
Expand Down
22 changes: 22 additions & 0 deletions bin/commands/admin_workflows_triggers_types_permissions.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# frozen_string_literal: true
# This file was auto-generated by lib/tasks/web.rake

module Slack
module Cli
class App
desc 'AdminWorkflowsTriggersTypesPermissions methods.'
command 'admin_workflows_triggers_types_permissions' do |g|
g.desc 'Set the permissions for using a trigger type in workflow builder'
g.long_desc %( Set the permissions for using a trigger type in workflow builder )
g.command 'set' do |c|
c.flag 'id', desc: 'The trigger type ID for which to set the permissions.'
c.flag 'visibility', desc: 'The function visibility.'
c.flag 'user_ids', desc: 'List of user IDs to allow for named_entities visibility.'
c.action do |_global_options, options, _args|
puts JSON.dump(@client.admin_workflows_triggers_types_permissions_set(options))
end
end
end
end
end
end
33 changes: 33 additions & 0 deletions bin/commands/apps_datastore.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,39 @@ module Cli
class App
desc 'AppsDatastore methods.'
command 'apps_datastore' do |g|
g.desc 'Delete items from a datastore in bulk'
g.long_desc %( Delete items from a datastore in bulk )
g.command 'bulkDelete' do |c|
c.flag 'datastore', desc: 'name of the datastore.'
c.flag 'ids', desc: 'IDs of items to be deleted.'
c.flag 'app_id', desc: '.'
c.action do |_global_options, options, _args|
puts JSON.dump(@client.apps_datastore_bulkDelete(options))
end
end

g.desc 'Get items from a datastore in bulk'
g.long_desc %( Get items from a datastore in bulk )
g.command 'bulkGet' do |c|
c.flag 'datastore', desc: 'name of the datastore.'
c.flag 'ids', desc: "items' ids."
c.flag 'app_id', desc: '.'
c.action do |_global_options, options, _args|
puts JSON.dump(@client.apps_datastore_bulkGet(options))
end
end

g.desc 'Creates or replaces existing items in bulk'
g.long_desc %( Creates or replaces existing items in bulk )
g.command 'bulkPut' do |c|
c.flag 'datastore', desc: 'name of the datastore.'
c.flag 'items', desc: 'attribute names and values of the items.'
c.flag 'app_id', desc: '.'
c.action do |_global_options, options, _args|
puts JSON.dump(@client.apps_datastore_bulkPut(options))
end
end

g.desc 'Delete an item from a datastore'
g.long_desc %( Delete an item from a datastore )
g.command 'delete' do |c|
Expand Down
4 changes: 2 additions & 2 deletions bin/commands/oauth.rb
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ class App
g.desc 'Exchanges a temporary OAuth verifier code for an access token.'
g.long_desc %( Exchanges a temporary OAuth verifier code for an access token. )
g.command 'access' do |c|
c.flag 'client_id', desc: 'Issued when you created your application.'
c.flag 'client_secret', desc: 'Issued when you created your application.'
c.flag 'client_id', desc: '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.'
c.flag 'client_secret', desc: '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.'
c.flag 'code', desc: 'The code param returned via the OAuth callback.'
c.flag 'redirect_uri', desc: 'This must match the originally submitted URI (if one was sent).'
c.flag 'single_channel', desc: 'Request the user to add your app only to a single channel. Only valid with a legacy workspace app.'
Expand Down
4 changes: 2 additions & 2 deletions bin/commands/oauth_v2.rb
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ class App
g.desc 'Exchanges a temporary OAuth verifier code for an access token.'
g.long_desc %( Exchanges a temporary OAuth verifier code for an access token. )
g.command 'access' do |c|
c.flag 'client_id', desc: 'Issued when you created your application.'
c.flag 'client_secret', desc: 'Issued when you created your application.'
c.flag 'client_id', desc: '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.'
c.flag 'client_secret', desc: '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.'
c.flag 'code', desc: 'The code param returned via the OAuth callback.'
c.flag 'grant_type', desc: 'The grant_type param as described in the OAuth spec.'
c.flag 'redirect_uri', desc: 'This must match the originally submitted URI (if one was sent).'
Expand Down
2 changes: 2 additions & 0 deletions lib/slack/web/api/endpoints.rb
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
require_relative 'endpoints/admin_workflows'
require_relative 'endpoints/admin_workflows_collaborators'
require_relative 'endpoints/admin_workflows_permissions'
require_relative 'endpoints/admin_workflows_triggers_types_permissions'
require_relative 'endpoints/api'
require_relative 'endpoints/apps'
require_relative 'endpoints/apps_activities'
Expand Down Expand Up @@ -120,6 +121,7 @@ module Endpoints
include AdminWorkflows
include AdminWorkflowsCollaborators
include AdminWorkflowsPermissions
include AdminWorkflowsTriggersTypesPermissions
include Api
include Apps
include AppsActivities
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# frozen_string_literal: true
# This file was auto-generated by lib/tasks/web.rake

module Slack
module Web
module Api
module Endpoints
module AdminWorkflowsTriggersTypesPermissions
#
# Set the permissions for using a trigger type in workflow builder
#
# @option options [Object] :id
# The trigger type ID for which to set the permissions.
# @option options [enum] :visibility
# The function visibility.
# @option options [array] :user_ids
# List of user IDs to allow for named_entities visibility.
# @see https://api.slack.com/methods/admin.workflows.triggers.types.permissions.set
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.workflows.triggers.types.permissions/admin.workflows.triggers.types.permissions.set.json
def admin_workflows_triggers_types_permissions_set(options = {})
raise ArgumentError, 'Required arguments :id missing' if options[:id].nil?
raise ArgumentError, 'Required arguments :visibility missing' if options[:visibility].nil?
post('admin.workflows.triggers.types.permissions.set', options)
end
end
end
end
end
end
51 changes: 51 additions & 0 deletions lib/slack/web/api/endpoints/apps_datastore.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,57 @@ module Web
module Api
module Endpoints
module AppsDatastore
#
# Delete items from a datastore in bulk
#
# @option options [string] :datastore
# name of the datastore.
# @option options [array] :ids
# IDs of items to be deleted.
# @option options [Object] :app_id
# .
# @see https://api.slack.com/methods/apps.datastore.bulkDelete
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.datastore/apps.datastore.bulkDelete.json
def apps_datastore_bulkDelete(options = {})
raise ArgumentError, 'Required arguments :datastore missing' if options[:datastore].nil?
raise ArgumentError, 'Required arguments :ids missing' if options[:ids].nil?
post('apps.datastore.bulkDelete', options)
end

#
# Get items from a datastore in bulk
#
# @option options [string] :datastore
# name of the datastore.
# @option options [array] :ids
# items' ids.
# @option options [Object] :app_id
# .
# @see https://api.slack.com/methods/apps.datastore.bulkGet
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.datastore/apps.datastore.bulkGet.json
def apps_datastore_bulkGet(options = {})
raise ArgumentError, 'Required arguments :datastore missing' if options[:datastore].nil?
raise ArgumentError, 'Required arguments :ids missing' if options[:ids].nil?
post('apps.datastore.bulkGet', options)
end

#
# Creates or replaces existing items in bulk
#
# @option options [string] :datastore
# name of the datastore.
# @option options [array] :items
# attribute names and values of the items.
# @option options [Object] :app_id
# .
# @see https://api.slack.com/methods/apps.datastore.bulkPut
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.datastore/apps.datastore.bulkPut.json
def apps_datastore_bulkPut(options = {})
raise ArgumentError, 'Required arguments :datastore missing' if options[:datastore].nil?
raise ArgumentError, 'Required arguments :items missing' if options[:items].nil?
post('apps.datastore.bulkPut', options)
end

#
# Delete an item from a datastore
#
Expand Down
4 changes: 2 additions & 2 deletions lib/slack/web/api/endpoints/oauth.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ module Oauth
# Exchanges a temporary OAuth verifier code for an access token.
#
# @option options [string] :client_id
# Issued when you created your application.
# 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.
# @option options [string] :client_secret
# Issued when you created your application.
# 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.
# @option options [string] :code
# The code param returned via the OAuth callback.
# @option options [string] :redirect_uri
Expand Down
4 changes: 2 additions & 2 deletions lib/slack/web/api/endpoints/oauth_v2.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ module OauthV2
# Exchanges a temporary OAuth verifier code for an access token.
#
# @option options [string] :client_id
# Issued when you created your application.
# 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.
# @option options [string] :client_secret
# Issued when you created your application.
# 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.
# @option options [string] :code
# The code param returned via the OAuth callback.
# @option options [string] :grant_type
Expand Down
6 changes: 6 additions & 0 deletions lib/slack/web/api/errors.rb
Original file line number Diff line number Diff line change
Expand Up @@ -481,6 +481,7 @@ class PaidTeamsOnly < SlackError; end
class ParameterValidationFailed < SlackError; end
class ParentBookmarkDisabled < SlackError; end
class ParentWithLink < SlackError; end
class PartialFailure < SlackError; end
class PartialProfileSetFailed < SlackError; end
class PermissionDenied < SlackError; end
class PlanUpgradeRequired < SlackError; end
Expand Down Expand Up @@ -575,6 +576,7 @@ class TooManyTeamsProvided < SlackError; end
class TooManyUsers < SlackError; end
class TriggerExchanged < SlackError; end
class TriggerExpired < SlackError; end
class TriggerTypeIdNotFound < SlackError; end
class TwoFactorSetupRequired < SlackError; end
class UnableToDelete < SlackError; end
class UnableToFetchCustomEmojis < SlackError; end
Expand Down Expand Up @@ -624,6 +626,7 @@ class UsersListNotSupplied < SlackError; end
class UsersNotFound < SlackError; end
class ValidationErrors < SlackError; end
class ViewTooLarge < SlackError; end
class VisibilityIsNotNamedEntities < SlackError; end
class WorkflowsExportCsvNotEnabled < SlackError; end

ERROR_CLASSES = {
Expand Down Expand Up @@ -1103,6 +1106,7 @@ class WorkflowsExportCsvNotEnabled < SlackError; end
'parameter_validation_failed' => ParameterValidationFailed,
'parent_bookmark_disabled' => ParentBookmarkDisabled,
'parent_with_link' => ParentWithLink,
'partial_failure' => PartialFailure,
'partial_profile_set_failed' => PartialProfileSetFailed,
'permission_denied' => PermissionDenied,
'plan_upgrade_required' => PlanUpgradeRequired,
Expand Down Expand Up @@ -1197,6 +1201,7 @@ class WorkflowsExportCsvNotEnabled < SlackError; end
'too_many_users' => TooManyUsers,
'trigger_exchanged' => TriggerExchanged,
'trigger_expired' => TriggerExpired,
'trigger_type_id_not_found' => TriggerTypeIdNotFound,
'two_factor_setup_required' => TwoFactorSetupRequired,
'unable_to_delete' => UnableToDelete,
'unable_to_fetch_custom_emojis' => UnableToFetchCustomEmojis,
Expand Down Expand Up @@ -1246,6 +1251,7 @@ class WorkflowsExportCsvNotEnabled < SlackError; end
'users_not_found' => UsersNotFound,
'validation_errors' => ValidationErrors,
'view_too_large' => ViewTooLarge,
'visibility_is_not_named_entities' => VisibilityIsNotNamedEntities,
'workflows_export_csv_not_enabled' => WorkflowsExportCsvNotEnabled,
}.freeze
end
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# frozen_string_literal: true
# This file was auto-generated by lib/tasks/web.rake

require 'spec_helper'

RSpec.describe Slack::Web::Api::Endpoints::AdminWorkflowsTriggersTypesPermissions do
let(:client) { Slack::Web::Client.new }
context 'admin.workflows.triggers.types.permissions_set' do
it 'requires id' do
expect { client.admin_workflows_triggers_types_permissions_set(visibility: %q[]) }.to raise_error ArgumentError, /Required arguments :id missing/
end
it 'requires visibility' do
expect { client.admin_workflows_triggers_types_permissions_set(id: %q[['FTT01', 'FTT02', 'FTT03']]) }.to raise_error ArgumentError, /Required arguments :visibility missing/
end
end
end
24 changes: 24 additions & 0 deletions spec/slack/web/api/endpoints/apps_datastore_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,30 @@

RSpec.describe Slack::Web::Api::Endpoints::AppsDatastore do
let(:client) { Slack::Web::Client.new }
context 'apps.datastore_bulkDelete' do
it 'requires datastore' do
expect { client.apps_datastore_bulkDelete(ids: %q[["7c6dd137", "c7d6d731"]]) }.to raise_error ArgumentError, /Required arguments :datastore missing/
end
it 'requires ids' do
expect { client.apps_datastore_bulkDelete(datastore: %q[]) }.to raise_error ArgumentError, /Required arguments :ids missing/
end
end
context 'apps.datastore_bulkGet' do
it 'requires datastore' do
expect { client.apps_datastore_bulkGet(ids: %q[["7c6dd137", "c7d6d731"]]) }.to raise_error ArgumentError, /Required arguments :datastore missing/
end
it 'requires ids' do
expect { client.apps_datastore_bulkGet(datastore: %q[]) }.to raise_error ArgumentError, /Required arguments :ids missing/
end
end
context 'apps.datastore_bulkPut' do
it 'requires datastore' do
expect { client.apps_datastore_bulkPut(items: %q[[{"id": "7c6dd137", "favourite_meal": "Shawarma", "reason": "Who doesn't like Shawarma?"}]]) }.to raise_error ArgumentError, /Required arguments :datastore missing/
end
it 'requires items' do
expect { client.apps_datastore_bulkPut(datastore: %q[]) }.to raise_error ArgumentError, /Required arguments :items missing/
end
end
context 'apps.datastore_delete' do
it 'requires datastore' do
expect { client.apps_datastore_delete(id: %q[]) }.to raise_error ArgumentError, /Required arguments :datastore missing/
Expand Down

0 comments on commit c80f3b1

Please sign in to comment.