diff --git a/docs/content/concepts/acknowledge.md b/docs/content/concepts/acknowledge.md
index b1d2000ef..5e5c0ed25 100644
--- a/docs/content/concepts/acknowledge.md
+++ b/docs/content/concepts/acknowledge.md
@@ -6,7 +6,7 @@ slug: /concepts/acknowledge
Actions, commands, shortcuts, options requests, and view submissions must **always** be acknowledged using the `ack()` function. This lets Slack know that the request was received so that it may update the Slack user interface accordingly.
-Depending on the type of request, your acknowledgement may be different. For example, when acknowledging a menu selection associated with an external data source, you would call `ack()` with a list of relevant [options](https://api.slack.com/reference/block-kit/composition-objects#option). When acknowledging a view submission, you may supply a `response_action` as part of your acknowledgement to [update the view](/concepts/view_submissions).
+Depending on the type of request, your acknowledgement may be different. For example, when acknowledging a menu selection associated with an external data source, you would call `ack()` with a list of relevant [options](https://docs.slack.dev/reference/block-kit/composition-objects/option-object/). When acknowledging a view submission, you may supply a `response_action` as part of your acknowledgement to [update the view](/concepts/view_submissions).
We recommend calling `ack()` right away before initiating any time-consuming processes such as fetching information from your database or sending a new message, since you only have 3 seconds to respond before Slack registers a timeout error.
diff --git a/docs/content/concepts/actions.md b/docs/content/concepts/actions.md
index b2ab27920..018642b4a 100644
--- a/docs/content/concepts/actions.md
+++ b/docs/content/concepts/actions.md
@@ -62,7 +62,7 @@ def approve_request(ack, say):
### Using `respond()` method
-Since `respond()` is a utility for calling the `response_url`, it behaves in the same way. You can pass [all the message payload properties](https://api.slack.com/reference/messaging/payload) as keyword arguments along with optional properties like `response_type` (which has a value of `"in_channel"` or `"ephemeral"`), `replace_original`, `delete_original`, `unfurl_links`, and `unfurl_media`. With that, your app can send a new message payload that will be published back to the source of the original interaction.
+Since `respond()` is a utility for calling the `response_url`, it behaves in the same way. You can pass [all the message payload properties](https://docs.slack.dev/messaging/#payloads) as keyword arguments along with optional properties like `response_type` (which has a value of `"in_channel"` or `"ephemeral"`), `replace_original`, `delete_original`, `unfurl_links`, and `unfurl_media`. With that, your app can send a new message payload that will be published back to the source of the original interaction.
```python
# Listens to actions triggered with action_id of “user_select”
diff --git a/docs/content/concepts/ai-apps.md b/docs/content/concepts/ai-apps.md
index eb5f64fff..d30513bdd 100644
--- a/docs/content/concepts/ai-apps.md
+++ b/docs/content/concepts/ai-apps.md
@@ -8,21 +8,21 @@ slug: /concepts/ai-apps
If you don't have a paid workspace for development, you can join the [Developer Program](https://api.slack.com/developer-program) and provision a sandbox with access to all Slack features for free.
:::
-AI apps comprise a new messaging experience for Slack. If you're unfamiliar with using AI apps within Slack, you'll want to read the [API documentation on the subject](https://api.slack.com/docs/apps/ai). Then come back here to implement them with Bolt!
+AI apps comprise a new messaging experience for Slack. If you're unfamiliar with using AI apps within Slack, you'll want to read the [API documentation on the subject](https://docs.slack.dev/ai/). Then come back here to implement them with Bolt!
## Configuring your app to support AI features {#configuring-your-app}
1. Within [App Settings](https://api.slack.com/apps), enable the **Agents & AI Apps** feature.
2. Within the App Settings **OAuth & Permissions** page, add the following scopes:
-* [`assistant:write`](https://api.slack.com/scopes/assistant:write)
-* [`chat:write`](https://api.slack.com/scopes/chat:write)
-* [`im:history`](https://api.slack.com/scopes/im:history)
+* [`assistant:write`](https://docs.slack.dev/reference/scopes/assistant.write)
+* [`chat:write`](https://docs.slack.dev/reference/scopes/chat.write)
+* [`im:history`](https://docs.slack.dev/reference/scopes/im.history)
3. Within the App Settings **Event Subscriptions** page, subscribe to the following events:
-* [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started)
-* [`assistant_thread_context_changed`](https://api.slack.com/events/assistant_thread_context_changed)
-* [`message.im`](https://api.slack.com/events/message.im)
+* [`assistant_thread_started`](https://docs.slack.dev/reference/events/assistant_thread_started)
+* [`assistant_thread_context_changed`](https://docs.slack.dev/reference/events/assistant_thread_context_changed)
+* [`message.im`](https://docs.slack.dev/reference/events/message.im)
:::info
You _could_ implement your own AI app by [listening](event-listening) for the `assistant_thread_started`, `assistant_thread_context_changed`, and `message.im` events (see implementation details below). That being said, using the `Assistant` class will streamline the process. And we already wrote this nice guide for you!
@@ -32,9 +32,9 @@ You _could_ implement your own AI app by [listening](event-listening) for the `a
The `Assistant` class can be used to handle the incoming events expected from a user interacting with an AI app in Slack. A typical flow would look like:
-1. [The user starts a thread](#handling-a-new-thread). The `Assistant` class handles the incoming [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started) event.
-2. [The thread context may change at any point](#handling-thread-context-changes). The `Assistant` class can handle any incoming [`assistant_thread_context_changed`](https://api.slack.com/events/assistant_thread_context_changed) events. The class also provides a default context store to keep track of thread context changes as the user moves through Slack.
-3. [The user responds](#handling-the-user-response). The `Assistant` class handles the incoming [`message.im`](https://api.slack.com/events/message.im) event.
+1. [The user starts a thread](#handling-a-new-thread). The `Assistant` class handles the incoming [`assistant_thread_started`](https://docs.slack.dev/reference/events/assistant_thread_started) event.
+2. [The thread context may change at any point](#handling-thread-context-changes). The `Assistant` class can handle any incoming [`assistant_thread_context_changed`](https://docs.slack.dev/reference/events/assistant_thread_context_changed) events. The class also provides a default context store to keep track of thread context changes as the user moves through Slack.
+3. [The user responds](#handling-the-user-response). The `Assistant` class handles the incoming [`message.im`](https://docs.slack.dev/reference/events/message.im) event.
```python
@@ -97,7 +97,7 @@ def respond_in_assistant_thread(
app.use(assistant)
```
-While the `assistant_thread_started` and `assistant_thread_context_changed` events do provide Slack-client thread context information, the `message.im` event does not. Any subsequent user message events won't contain thread context data. For that reason, Bolt not only provides a way to store thread context — the `threadContextStore` property — but it also provides an instance that is utilized by default. This implementation relies on storing and retrieving [message metadata](https://api.slack.com/metadata/using) as the user interacts with the app.
+While the `assistant_thread_started` and `assistant_thread_context_changed` events do provide Slack-client thread context information, the `message.im` event does not. Any subsequent user message events won't contain thread context data. For that reason, Bolt not only provides a way to store thread context — the `threadContextStore` property — but it also provides an instance that is utilized by default. This implementation relies on storing and retrieving [message metadata](https://docs.slack.dev/messaging/message-metadata/) as the user interacts with the app.
If you do provide your own `threadContextStore` property, it must feature `get` and `save` methods.
@@ -107,7 +107,7 @@ Refer to the [module document](https://tools.slack.dev/bolt-python/api-docs/slac
## Handling a new thread {#handling-a-new-thread}
-When the user opens a new thread with your AI app, the [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started) event will be sent to your app.
+When the user opens a new thread with your AI app, the [`assistant_thread_started`](https://docs.slack.dev/reference/events/assistant_thread_started) event will be sent to your app.
:::tip
When a user opens an AI app thread while in a channel, the channel info is stored as the thread's `AssistantThreadContext` data. You can grab that info by using the `get_thread_context` utility, as subsequent user message event payloads won't include the channel info.
@@ -115,7 +115,7 @@ When a user opens an AI app thread while in a channel, the channel info is store
### Block Kit interactions in the AI app thread {#block-kit-interactions}
-For advanced use cases, Block Kit buttons may be used instead of suggested prompts, as well as the sending of messages with structured [metadata](https://api.slack.com/metadata) to trigger subsequent interactions with the user.
+For advanced use cases, Block Kit buttons may be used instead of suggested prompts, as well as the sending of messages with structured [metadata](https://docs.slack.dev/messaging/message-metadata/) to trigger subsequent interactions with the user.
For example, an app can display a button such as "Summarize the referring channel" in the initial reply. When the user clicks the button and submits detailed information (such as the number of messages, days to check, purpose of the summary, etc.), the app can handle that information and post a message that describes the request with structured metadata.
@@ -241,9 +241,9 @@ def respond_to_bot_messages(logger: logging.Logger, set_status: SetStatus, say:
## Handling thread context changes {#handling-thread-context-changes}
-When the user switches channels, the [`assistant_thread_context_changed`](https://api.slack.com/events/assistant_thread_context_changed) event will be sent to your app.
+When the user switches channels, the [`assistant_thread_context_changed`](https://docs.slack.dev/reference/events/assistant_thread_context_changed) event will be sent to your app.
-If you use the built-in `Assistant` middleware without any custom configuration, the updated context data is automatically saved as [message metadata](https://api.slack.com/metadata/using) of the first reply from the app.
+If you use the built-in `Assistant` middleware without any custom configuration, the updated context data is automatically saved as [message metadata](https://docs.slack.dev/messaging/message-metadata/) of the first reply from the app.
As long as you use the built-in approach, you don't need to store the context data within a datastore. The downside of this default behavior is the overhead of additional calls to the Slack API. These calls include those to `conversations.history`, which are used to look up the stored message metadata that contains the thread context (via `get_thread_context`).
@@ -256,9 +256,9 @@ assistant = Assistant(thread_context_store=FileAssistantThreadContextStore())
## Handling the user response {#handling-the-user-response}
-When the user messages your app, the [`message.im`](https://api.slack.com/events/message.im) event will be sent to your app.
+When the user messages your app, the [`message.im`](https://docs.slack.dev/reference/events/message.im) event will be sent to your app.
-Messages sent to the app do not contain a [subtype](https://api.slack.com/events/message#subtypes) and must be deduced based on their shape and any provided [message metadata](https://api.slack.com/metadata/using).
+Messages sent to the app do not contain a [subtype](https://docs.slack.dev/reference/events/message#subtypes) and must be deduced based on their shape and any provided [message metadata](https://docs.slack.dev/messaging/message-metadata/).
There are three utilities that are particularly useful in curating the user experience:
* [`say`](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/#slack_bolt.Say)
diff --git a/docs/content/concepts/app-home.md b/docs/content/concepts/app-home.md
index 887279a5d..d29bfc4d6 100644
--- a/docs/content/concepts/app-home.md
+++ b/docs/content/concepts/app-home.md
@@ -4,9 +4,9 @@ lang: en
slug: /concepts/app-home
---
-[Home tabs](https://api.slack.com/surfaces/tabs/using) are customizable surfaces accessible via the sidebar and search that allow apps to display views on a per-user basis. After enabling App Home within your app configuration, home tabs can be published and updated by passing a `user_id` and [view payload](https://api.slack.com/reference/block-kit/views) to the [`views.publish`](https://api.slack.com/methods/views.publish) method.
+[Home tabs](https://docs.slack.dev/surfaces/app-home) are customizable surfaces accessible via the sidebar and search that allow apps to display views on a per-user basis. After enabling App Home within your app configuration, home tabs can be published and updated by passing a `user_id` and [view payload](https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission) to the [`views.publish`](https://docs.slack.dev/reference/methods/views.publis) method.
-You can subscribe to the [`app_home_opened`](https://api.slack.com/events/app_home_opened) event to listen for when users open your App Home.
+You can subscribe to the [`app_home_opened`](https://docs.slack.dev/reference/events/app_home_opened) event to listen for when users open your App Home.
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
```python
@@ -32,7 +32,7 @@ def update_home_tab(client, event, logger):
"type": "section",
"text": {
"type": "mrkdwn",
- "text": "Learn how home tabs can be more useful and interactive ."
+ "text": "Learn how home tabs can be more useful and interactive ."
}
}
]
diff --git a/docs/content/concepts/authenticating-oauth.md b/docs/content/concepts/authenticating-oauth.md
index 734a727b2..1fabe3522 100644
--- a/docs/content/concepts/authenticating-oauth.md
+++ b/docs/content/concepts/authenticating-oauth.md
@@ -10,9 +10,9 @@ Bolt for Python will create a **Redirect URL** `slack/oauth_redirect`, which Sla
Bolt for Python will also create a `slack/install` route, where you can find an **Add to Slack** button for your app to perform direct installs of your app. If you need any additional authorizations (user tokens) from users inside a team when your app is already installed or a reason to dynamically generate an install URL, you can pass your own custom URL generator to `oauth_settings` as `authorize_url_generator`.
-Bolt for Python automatically includes support for [org wide installations](https://api.slack.com/enterprise/apps) in version `1.1.0+`. Org wide installations can be enabled in your app configuration settings under **Org Level Apps**.
+Bolt for Python automatically includes support for [org wide installations](https://docs.slack.dev/enterprise-grid/) in version `1.1.0+`. Org wide installations can be enabled in your app configuration settings under **Org Level Apps**.
-To learn more about the OAuth installation flow with Slack, [read the API documentation](https://api.slack.com/authentication/oauth-v2).
+To learn more about the OAuth installation flow with Slack, [read the API documentation](https://docs.slack.dev/authentication/installing-with-oauth).
```python
import os
diff --git a/docs/content/concepts/custom-steps.md b/docs/content/concepts/custom-steps.md
index 10d03e4c4..52e3d76e2 100644
--- a/docs/content/concepts/custom-steps.md
+++ b/docs/content/concepts/custom-steps.md
@@ -5,7 +5,7 @@ lang: en
slug: /concepts/custom-steps
---
-Your app can use the `function()` method to listen to incoming [custom step requests](https://api.slack.com/automation/functions/custom-bolt). Custom steps are used in Workflow Builder to build workflows. The method requires a step `callback_id` of type `str`. This `callback_id` must also be defined in your [Function](https://api.slack.com/concepts/manifests#functions) definition. Custom steps must be finalized using the `complete()` or `fail()` listener arguments to notify Slack that your app has processed the request.
+Your app can use the `function()` method to listen to incoming [custom step requests](https://docs.slack.dev/workflows/workflow-steps). Custom steps are used in Workflow Builder to build workflows. The method requires a step `callback_id` of type `str`. This `callback_id` must also be defined in your [Function](https://docs.slack.dev/reference/app-manifest#functions) definition. Custom steps must be finalized using the `complete()` or `fail()` listener arguments to notify Slack that your app has processed the request.
* `complete()` requires **one** argument: `outputs` of type `dict`. It ends your custom step **successfully** and provides a dictionary containing the outputs of your custom step as per its definition.
* `fail()` requires **one** argument: `error` of type `str`. It ends your custom step **unsuccessfully** and provides a message containing information regarding why your custom step failed.
@@ -151,4 +151,4 @@ Example app manifest definition
-Learn more about responding to interactivity, see the [Slack API documentation](https://api.slack.com/automation/functions/custom-bolt#interactivity).
+Learn more about responding to interactivity, see the [Slack API documentation](https://docs.slack.dev/interactivity/handling-user-interaction).
diff --git a/docs/content/concepts/event-listening.md b/docs/content/concepts/event-listening.md
index 79317b07a..7ffa9e3a2 100644
--- a/docs/content/concepts/event-listening.md
+++ b/docs/content/concepts/event-listening.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/event-listening
---
-You can listen to [any Events API event](https://api.slack.com/events) using the `event()` method after subscribing to it in your app configuration. This allows your app to take action when something happens in a workspace where it's installed, like a user reacting to a message or joining a channel.
+You can listen to [any Events API event](https://docs.slack.dev/reference/events) using the `event()` method after subscribing to it in your app configuration. This allows your app to take action when something happens in a workspace where it's installed, like a user reacting to a message or joining a channel.
The `event()` method requires an `eventType` of type `str`.
@@ -23,7 +23,7 @@ def ask_for_introduction(event, say):
The `message()` listener is equivalent to `event("message")`.
-You can filter on subtypes of events by passing in the additional key `subtype`. Common message subtypes like `bot_message` and `message_replied` can be found [on the message event page](https://api.slack.com/events/message#subtypes).
+You can filter on subtypes of events by passing in the additional key `subtype`. Common message subtypes like `bot_message` and `message_replied` can be found [on the message event page](https://docs.slack.dev/reference/events/message#subtypes).
You can explicitly filter for events without a subtype by explicitly setting `None`.
```python
diff --git a/docs/content/concepts/message-listening.md b/docs/content/concepts/message-listening.md
index 3527dc226..b2f8bc05c 100644
--- a/docs/content/concepts/message-listening.md
+++ b/docs/content/concepts/message-listening.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/message-listening
---
-To listen to messages that [your app has access to receive](https://api.slack.com/messaging/retrieving#permissions), you can use the `message()` method which filters out events that aren't of type `message`.
+To listen to messages that [your app has access to receive](https://docs.slack.dev/messaging/retrieving-messages), you can use the `message()` method which filters out events that aren't of type `message`.
`message()` accepts an argument of type `str` or `re.Pattern` object that filters out any messages that don't match the pattern.
diff --git a/docs/content/concepts/message-sending.md b/docs/content/concepts/message-sending.md
index b44f8848f..b4a2f309e 100644
--- a/docs/content/concepts/message-sending.md
+++ b/docs/content/concepts/message-sending.md
@@ -20,7 +20,7 @@ def ask_who(message, say):
`say()` accepts more complex message payloads to make it easy to add functionality and structure to your messages.
-To explore adding rich message layouts to your app, read through [the guide on our API site](https://api.slack.com/messaging/composing/layouts) and look through templates of common app flows [in the Block Kit Builder](https://api.slack.com/tools/block-kit-builder?template=1).
+To explore adding rich message layouts to your app, read through [the guide on our API site](https://docs.slack.dev/messaging/#structure) and look through templates of common app flows [in the Block Kit Builder](https://api.slack.com/tools/block-kit-builder?template=1).
```python
# Sends a section block with datepicker when someone reacts with a 📅 emoji
diff --git a/docs/content/concepts/opening-modals.md b/docs/content/concepts/opening-modals.md
index a686eec63..e7daceafc 100644
--- a/docs/content/concepts/opening-modals.md
+++ b/docs/content/concepts/opening-modals.md
@@ -4,11 +4,11 @@ lang: en
slug: /concepts/opening-modals
---
-[Modals](https://api.slack.com/block-kit/surfaces/modals) are focused surfaces that allow you to collect user data and display dynamic information. You can open a modal by passing a valid `trigger_id` and a [view payload](https://api.slack.com/reference/block-kit/views) to the built-in client's [`views.open`](https://api.slack.com/methods/views.open) method.
+[Modals](https://docs.slack.dev/surfaces/modals) are focused surfaces that allow you to collect user data and display dynamic information. You can open a modal by passing a valid `trigger_id` and a [view payload](https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission) to the built-in client's [`views.open`](https://docs.slack.dev/reference/methods/views.open/) method.
Your app receives `trigger_id` parameters in payloads sent to your Request URL triggered user invocation like a slash command, button press, or interaction with a select menu.
-Read more about modal composition in the [API documentation](https://api.slack.com/surfaces/modals/using#composing_views).
+Read more about modal composition in the [API documentation](https://docs.slack.dev/surfaces/modals#composing_views).
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
diff --git a/docs/content/concepts/select-menu-options.md b/docs/content/concepts/select-menu-options.md
index 835ae15c7..d699e6370 100644
--- a/docs/content/concepts/select-menu-options.md
+++ b/docs/content/concepts/select-menu-options.md
@@ -9,7 +9,7 @@ an `action_id` or constraints object is required. In order to load external data
While it's recommended to use `action_id` for `external_select` menus, dialogs do not support Block Kit so you'll have to use the constraints object to filter on a `callback_id`.
-To respond to options requests, you'll need to call `ack()` with a valid `options` or `option_groups` list. Both [external select response examples](https://api.slack.com/reference/messaging/block-elements#external-select) and [dialog response examples](https://api.slack.com/dialogs#dynamic_select_elements_external) can be found on our API site.
+To respond to options requests, you'll need to call `ack()` with a valid `options` or `option_groups` list. Both [external select response examples](https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select) and [dialog response examples](https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#conversation_multi_select) can be found on our API site.
Additionally, you may want to apply filtering logic to the returned options based on user input. This can be accomplished by using the `payload` argument to your options listener and checking for the contents of the `value` property within it. Based on the `value` you can return different options. All listeners and middleware handlers in Bolt for Python have access to [many useful arguments](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) - be sure to check them out!
diff --git a/docs/content/concepts/shortcuts.md b/docs/content/concepts/shortcuts.md
index 58889b1f8..6833d468d 100644
--- a/docs/content/concepts/shortcuts.md
+++ b/docs/content/concepts/shortcuts.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/shortcuts
---
-The `shortcut()` method supports both [global shortcuts](https://api.slack.com/interactivity/shortcuts/using#global_shortcuts) and [message shortcuts](https://api.slack.com/interactivity/shortcuts/using#message_shortcuts).
+The `shortcut()` method supports both [global shortcuts](https://docs.slack.dev/interactivity/implementing-shortcuts#global) and [message shortcuts](https://docs.slack.dev/interactivity/implementing-shortcuts#messages).
Shortcuts are invokable entry points to apps. Global shortcuts are available from within search and text composer area in Slack. Message shortcuts are available in the context menus of messages. Your app can use the `shortcut()` method to listen to incoming shortcut requests. The method requires a `callback_id` parameter of type `str` or `re.Pattern`.
@@ -14,7 +14,7 @@ Shortcuts include a `trigger_id` which an app can use to [open a modal](/concept
When setting up shortcuts within your app configuration, as with other URLs, you'll append `/slack/events` to your request URL.
-⚠️ Note that global shortcuts do **not** include a channel ID. If your app needs access to a channel ID, you may use a [`conversations_select`](https://api.slack.com/reference/block-kit/block-elements#conversation_select) element within a modal. Message shortcuts do include a channel ID.
+⚠️ Note that global shortcuts do **not** include a channel ID. If your app needs access to a channel ID, you may use a [`conversations_select`](https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#conversation_multi_select) element within a modal. Message shortcuts do include a channel ID.
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
```python
@@ -36,7 +36,7 @@ def open_modal(ack, shortcut, client):
"type": "section",
"text": {
"type": "mrkdwn",
- "text": "About the simplest modal you could conceive of :smile:\n\nMaybe or ."
+ "text": "About the simplest modal you could conceive of :smile:\n\nMaybe or ."
}
},
{
@@ -75,7 +75,7 @@ def open_modal(ack, shortcut, client):
"type": "section",
"text": {
"type": "mrkdwn",
- "text": "About the simplest modal you could conceive of :smile:\n\nMaybe or ."
+ "text": "About the simplest modal you could conceive of :smile:\n\nMaybe or ."
}
},
{
diff --git a/docs/content/concepts/socket-mode.md b/docs/content/concepts/socket-mode.md
index 72a2b7982..301fbf94e 100644
--- a/docs/content/concepts/socket-mode.md
+++ b/docs/content/concepts/socket-mode.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/socket-mode
---
-With the introduction of [Socket Mode](https://api.slack.com/apis/connections/socket), Bolt for Python introduced support in version `1.2.0`. With Socket Mode, instead of creating a server with endpoints that Slack sends payloads too, the app will instead connect to Slack via a WebSocket connection and receive data from Slack over the socket connection. Make sure to enable Socket Mode in your app configuration settings.
+With the introduction of [Socket Mode](https://docs.slack.dev/apis/events-api/using-socket-mode), Bolt for Python introduced support in version `1.2.0`. With Socket Mode, instead of creating a server with endpoints that Slack sends payloads too, the app will instead connect to Slack via a WebSocket connection and receive data from Slack over the socket connection. Make sure to enable Socket Mode in your app configuration settings.
To use the Socket Mode, add `SLACK_APP_TOKEN` as an environment variable. You can get your App Token in your app configuration settings under the **Basic Information** section.
diff --git a/docs/content/concepts/steps-from-apps.md b/docs/content/concepts/steps-from-apps.md
index f1e1e7c70..09becda0c 100644
--- a/docs/content/concepts/steps-from-apps.md
+++ b/docs/content/concepts/steps-from-apps.md
@@ -8,13 +8,13 @@ slug: /legacy/steps-from-apps
Steps from Apps is a deprecated feature.
-Steps from Apps are different than, and not interchangeable with, Slack automation workflows. We encourage those who are currently publishing steps from apps to consider the new [Slack automation features](https://api.slack.com/automation), such as [custom steps for Bolt](https://api.slack.com/automation/functions/custom-bolt).
+Steps from Apps are different than, and not interchangeable with, Slack automation workflows. We encourage those who are currently publishing steps from apps to consider the new [Slack automation features](https://docs.slack.dev/workflows/), such as [custom steps for Bolt](https://docs.slack.dev/workflows/workflow-steps).
-Please [read the Slack API changelog entry](https://api.slack.com/changelog/2023-08-workflow-steps-from-apps-step-back) for more information.
+Please [read the Slack API changelog entry](https://docs.slack.dev/changelog/2023-08-workflow-steps-from-apps-step-back) for more information.
:::
-Steps from apps allow your app to create and process steps that users can add using [Workflow Builder](https://api.slack.com/workflows).
+Steps from apps allow your app to create and process steps that users can add using [Workflow Builder](https://docs.slack.dev/workflows/workflow-builder).
Steps from apps are made up of three distinct user events:
@@ -24,7 +24,7 @@ Steps from apps are made up of three distinct user events:
All three events must be handled for a step from app to function.
-Read more about steps from apps in the [API documentation](https://api.slack.com/workflows/steps).
+Read more about steps from apps in the [API documentation](https://docs.slack.dev/workflows/workflow-steps).
## Creating steps from apps
@@ -74,13 +74,13 @@ app.step(ws)
## Adding or editing steps from apps
-When a builder adds (or later edits) your step in their workflow, your app will receive a [`workflow_step_edit` event](https://api.slack.com/reference/workflows/workflow_step_edit). The `edit` callback in your `WorkflowStep` configuration will be run when this event is received.
+When a builder adds (or later edits) your step in their workflow, your app will receive a [`workflow_step_edit` event](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-workflow_step_edit-payload). The `edit` callback in your `WorkflowStep` configuration will be run when this event is received.
-Whether a builder is adding or editing a step, you need to send them a [step from app configuration modal](https://api.slack.com/reference/workflows/configuration-view). This modal is where step-specific settings are chosen, and it has more restrictions than typical modals—most notably, it cannot include `title`, `submit`, or `close` properties. By default, the configuration modal's `callback_id` will be the same as the step from app.
+Whether a builder is adding or editing a step, you need to send them a [step from app configuration modal](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-configuration-view-object). This modal is where step-specific settings are chosen, and it has more restrictions than typical modals—most notably, it cannot include `title`, `submit`, or `close` properties. By default, the configuration modal's `callback_id` will be the same as the step from app.
Within the `edit` callback, the `configure()` utility can be used to easily open your step's configuration modal by passing in the view's blocks with the corresponding `blocks` argument. To disable saving the configuration before certain conditions are met, you can also pass in `submit_disabled` with a value of `True`.
-To learn more about opening configuration modals, [read the documentation](https://api.slack.com/workflows/steps#handle_config_view).
+To learn more about opening configuration modals, [read the documentation](https://docs.slack.dev/legacy/legacy-steps-from-apps/).
Refer to the module documents ([common](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) / [step-specific](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/workflows/step/utilities/index.html)) to learn the available arguments.
@@ -132,7 +132,7 @@ Within the `save` callback, the `update()` method can be used to save the builde
- `step_name` overrides the default Step name
- `step_image_url` overrides the default Step image
-To learn more about how to structure these parameters, [read the documentation](https://api.slack.com/reference/workflows/workflow_step).
+To learn more about how to structure these parameters, [read the documentation](https://docs.slack.dev/legacy/legacy-steps-from-apps/).
Refer to the module documents ([common](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) / [step-specific](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/workflows/step/utilities/index.html)) to learn the available arguments.
@@ -173,7 +173,7 @@ app.step(ws)
## Executing steps from apps
-When your step from app is executed by an end user, your app will receive a [`workflow_step_execute` event](https://api.slack.com/events/workflow_step_execute). The `execute` callback in your `WorkflowStep` configuration will be run when this event is received.
+When your step from app is executed by an end user, your app will receive a [`workflow_step_execute` event](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-workflow_step-object). The `execute` callback in your `WorkflowStep` configuration will be run when this event is received.
Using the `inputs` from the `save` callback, this is where you can make third-party API calls, save information to a database, update the user's Home tab, or decide the outputs that will be available to subsequent steps from apps by mapping values to the `outputs` object.
diff --git a/docs/content/concepts/token-rotation.md b/docs/content/concepts/token-rotation.md
index ca690dd28..88af29ffa 100644
--- a/docs/content/concepts/token-rotation.md
+++ b/docs/content/concepts/token-rotation.md
@@ -10,4 +10,4 @@ Instead of an access token representing an existing installation of your Slack a
Bolt for Python supports and will handle token rotation automatically so long as the [built-in OAuth](/concepts/authenticating-oauth) functionality is used.
-For more information about token rotation, please see the [documentation](https://api.slack.com/authentication/rotation).
\ No newline at end of file
+For more information about token rotation, please see the [documentation](https://docs.slack.dev/authentication/using-token-rotation).
\ No newline at end of file
diff --git a/docs/content/concepts/updating-pushing-views.md b/docs/content/concepts/updating-pushing-views.md
index 051c0c6ae..aa1efa3fa 100644
--- a/docs/content/concepts/updating-pushing-views.md
+++ b/docs/content/concepts/updating-pushing-views.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/updating-pushing-views
---
-Modals contain a stack of views. When you call [`views_open`](https://api.slack.com/methods/views.open), you add the root view to the modal. After the initial call, you can dynamically update a view by calling [`views_update`](https://api.slack.com/methods/views.update), or stack a new view on top of the root view by calling [`views_push`](https://api.slack.com/methods/views.push)
+Modals contain a stack of views. When you call [`views_open`](https://api.https://docs.slack.dev/reference/methods/views.open/slack.com/methods/views.open), you add the root view to the modal. After the initial call, you can dynamically update a view by calling [`views_update`](https://docs.slack.dev/reference/methods/views.update/), or stack a new view on top of the root view by calling [`views_push`](https://docs.slack.dev/reference/methods/views.push/)
## The `views_update` method
@@ -12,9 +12,9 @@ To update a view, you can use the built-in client to call `views_update` with th
## The `views_push` method
-To push a new view onto the view stack, you can use the built-in client to call `views_push` with a valid `trigger_id` a new [view payload](https://api.slack.com/reference/block-kit/views). The arguments for `views_push` is the same as [opening modals](/concepts/creating-models). After you open a modal, you may only push two additional views onto the view stack.
+To push a new view onto the view stack, you can use the built-in client to call `views_push` with a valid `trigger_id` a new [view payload](https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission). The arguments for `views_push` is the same as [opening modals](/concepts/creating-models). After you open a modal, you may only push two additional views onto the view stack.
-Learn more about updating and pushing views in our [API documentation](https://api.slack.com/surfaces/modals/using#modifying)
+Learn more about updating and pushing views in our [API documentation](https://docs.slack.dev/surfaces/modals)
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
```python
diff --git a/docs/content/concepts/view-submissions.md b/docs/content/concepts/view-submissions.md
index 729f9d87b..60b78cd54 100644
--- a/docs/content/concepts/view-submissions.md
+++ b/docs/content/concepts/view-submissions.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/view_submissions
---
-If a [view payload](https://api.slack.com/reference/block-kit/views) contains any input blocks, you must listen to `view_submission` requests to receive their values. To listen to `view_submission` requests, you can use the built-in `view()` method. `view()` requires a `callback_id` of type `str` or `re.Pattern`.
+If a [view payload](https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission) contains any input blocks, you must listen to `view_submission` requests to receive their values. To listen to `view_submission` requests, you can use the built-in `view()` method. `view()` requires a `callback_id` of type `str` or `re.Pattern`.
You can access the value of the `input` blocks by accessing the `state` object. `state` contains a `values` object that uses the `block_id` and unique `action_id` to store the input values.
@@ -23,9 +23,9 @@ def handle_submission(ack, body):
# https://app.slack.com/block-kit-builder/#%7B%22type%22:%22modal%22,%22callback_id%22:%22view_1%22,%22title%22:%7B%22type%22:%22plain_text%22,%22text%22:%22My%20App%22,%22emoji%22:true%7D,%22blocks%22:%5B%5D%7D
ack(response_action="update", view=build_new_view(body))
```
-Similarly, there are options for [displaying errors](https://api.slack.com/surfaces/modals/using#displaying_errors) in response to view submissions.
+Similarly, there are options for [displaying errors](https://docs.slack.dev/surfaces/modals#displaying_errors) in response to view submissions.
-Read more about view submissions in our [API documentation](https://api.slack.com/surfaces/modals/using#handling_submissions)
+Read more about view submissions in our [API documentation](https://docs.slack.dev/surfaces/modals#interactions)
---
@@ -33,7 +33,7 @@ Read more about view submissions in our [API documentation](https://api.slack.co
When listening for `view_closed` requests, you must pass `callback_id` and add a `notify_on_close` property to the view during creation. See below for an example of this:
-See the [API documentation](https://api.slack.com/surfaces/modals/using#modal_cancellations) for more information about `view_closed`.
+See the [API documentation](https://docs.slack.dev/surfaces/modals#interactions) for more information about `view_closed`.
```python
diff --git a/docs/content/concepts/web-api.md b/docs/content/concepts/web-api.md
index c4f9a526b..18b41a029 100644
--- a/docs/content/concepts/web-api.md
+++ b/docs/content/concepts/web-api.md
@@ -4,7 +4,7 @@ lang: en
slug: /concepts/web-api
---
-You can call [any Web API method](https://api.slack.com/methods) using the [`WebClient`](https://tools.slack.dev/python-slack-sdk/web) provided to your Bolt app as either `app.client` or `client` in middleware/listener arguments (given that your app has the appropriate scopes). When you call one the client's methods, it returns a `SlackResponse` which contains the response from Slack.
+You can call [any Web API method](https://docs.slack.dev/reference/methods) using the [`WebClient`](https://tools.slack.dev/python-slack-sdk/web) provided to your Bolt app as either `app.client` or `client` in middleware/listener arguments (given that your app has the appropriate scopes). When you call one the client's methods, it returns a `SlackResponse` which contains the response from Slack.
The token used to initialize Bolt can be found in the `context` object, which is required to call most Web API methods.
diff --git a/docs/content/getting-started.md b/docs/content/getting-started.md
index 5449a4ac2..d1b7d5e2c 100644
--- a/docs/content/getting-started.md
+++ b/docs/content/getting-started.md
@@ -32,18 +32,18 @@ Look around, add an app icon and description, and then let's start configuring y
---
### Tokens and installing apps {#tokens-and-installing-apps}
-Slack apps use [OAuth to manage access to Slack's APIs](https://api.slack.com/docs/oauth). When an app is installed, you'll receive a token that the app can use to call API methods.
+Slack apps use [OAuth to manage access to Slack's APIs](https://docs.slack.dev/authentication/installing-with-oauth). When an app is installed, you'll receive a token that the app can use to call API methods.
There are three main token types available to a Slack app: user (`xoxp`), bot (`xoxb`), and app-level (`xapp`) tokens.
-- [User tokens](https://api.slack.com/authentication/token-types#user) allow you to call API methods on behalf of users after they install or authenticate the app. There may be several user tokens for a single workspace.
-- [Bot tokens](https://api.slack.com/authentication/token-types#bot) are associated with bot users, and are only granted once in a workspace where someone installs the app. The bot token your app uses will be the same no matter which user performed the installation. Bot tokens are the token type that _most_ apps use.
-- [App-level tokens](https://api.slack.com/authentication/token-types#app) represent your app across organizations, including installations by all individual users on all workspaces in a given organization and are commonly used for creating WebSocket connections to your app.
+- [User tokens](https://docs.slack.dev/authentication/tokens#user) allow you to call API methods on behalf of users after they install or authenticate the app. There may be several user tokens for a single workspace.
+- [Bot tokens](https://docs.slack.dev/authentication/tokens#bot) are associated with bot users, and are only granted once in a workspace where someone installs the app. The bot token your app uses will be the same no matter which user performed the installation. Bot tokens are the token type that _most_ apps use.
+- [App-level tokens](https://docs.slack.dev/authentication/tokens#app-level) represent your app across organizations, including installations by all individual users on all workspaces in a given organization and are commonly used for creating WebSocket connections to your app.
We're going to use bot and app-level tokens for this guide.
1. Navigate to the **OAuth & Permissions** on the left sidebar and scroll down to the **Bot Token Scopes** section. Click **Add an OAuth Scope**.
-2. For now, we'll just add one scope: [`chat:write`](https://api.slack.com/scopes/chat:write). This grants your app the permission to post messages in channels it's a member of.
+2. For now, we'll just add one scope: [`chat:write`](https://docs.slack.dev/reference/scopes/chat.write). This grants your app the permission to post messages in channels it's a member of.
3. Scroll up to the top of the **OAuth & Permissions** page and click **Install App to Workspace**. You'll be led through Slack's OAuth UI, where you should allow your app to be installed to your development workspace.
@@ -57,7 +57,7 @@ We're going to use bot and app-level tokens for this guide.
:::tip
-Treat your tokens like passwords and [keep them safe](https://api.slack.com/docs/oauth-safety). Your app uses tokens to post and retrieve information from Slack workspaces.
+Treat your tokens like passwords and [keep them safe](https://docs.slack.dev/authentication/best-practices-for-security). Your app uses tokens to post and retrieve information from Slack workspaces.
:::
@@ -102,7 +102,7 @@ export SLACK_APP_TOKEN=
:::warning
-Remember to keep your tokens secure. At a minimum, you should avoid checking them into public version control, and access them via environment variables as we've done above. Check out the API documentation for more on [best practices for app security](https://api.slack.com/authentication/best-practices).
+Remember to keep your tokens secure. At a minimum, you should avoid checking them into public version control, and access them via environment variables as we've done above. Check out the API documentation for more on [best practices for app security](https://docs.slack.dev/authentication/best-practices-for-security).
:::
@@ -140,9 +140,9 @@ Your app should let you know that it's up and running. 🎉
### Setting up events {#setting-up-events}
Your app behaves similarly to people on your team — it can post messages, add emoji reactions, and listen and respond to events.
-To listen for events happening in a Slack workspace (like when a message is posted or when a reaction is posted to a message) you'll use the [Events API to subscribe to event types](https://api.slack.com/events-api).
+To listen for events happening in a Slack workspace (like when a message is posted or when a reaction is posted to a message) you'll use the [Events API to subscribe to event types](https://docs.slack.dev/apis/events-api/).
-For those just starting, we recommend using [Socket Mode](https://api.slack.com/apis/socket-mode). Socket Mode allows your app to use the Events API and interactive features without exposing a public HTTP Request URL. This can be helpful during development, or if you're receiving requests from behind a firewall.
+For those just starting, we recommend using [Socket Mode](https://docs.slack.dev/apis/events-api/using-socket-mode). Socket Mode allows your app to use the Events API and interactive features without exposing a public HTTP Request URL. This can be helpful during development, or if you're receiving requests from behind a firewall.
That being said, you're welcome to set up an app with a public HTTP Request URL. HTTP is more useful for apps being deployed to hosting environments to respond within a large corporate Slack workspaces/organization, or apps intended for distribution via the Slack Marketplace.
@@ -167,11 +167,11 @@ When an event occurs, Slack will send your app some information about the event,
1. Go back to your app configuration page (click on the app [from your app management page](https://api.slack.com/apps)). Click **Event Subscriptions** on the left sidebar. Toggle the switch labeled **Enable Events**.
-2. Add your Request URL. Slack will send HTTP POST requests corresponding to events to this [Request URL](https://api.slack.com/apis/connections/events-api#the-events-api__subscribing-to-event-types__events-api-request-urls) endpoint. Bolt uses the `/slack/events` path to listen to all incoming requests (whether shortcuts, events, or interactivity payloads). When configuring your Request URL within your app configuration, you'll append `/slack/events`, e.g. `https:///slack/events`. 💡 As long as your Bolt app is still running, your URL should become verified.
+2. Add your Request URL. Slack will send HTTP POST requests corresponding to events to this [Request URL](https://docs.slack.dev/apis/events-api/#subscribing) endpoint. Bolt uses the `/slack/events` path to listen to all incoming requests (whether shortcuts, events, or interactivity payloads). When configuring your Request URL within your app configuration, you'll append `/slack/events`, e.g. `https:///slack/events`. 💡 As long as your Bolt app is still running, your URL should become verified.
:::tip
-For local development, you can use a proxy service like ngrok to create a public URL and tunnel requests to your development environment. Refer to [ngrok's getting started guide](https://ngrok.com/docs#getting-started-expose) on how to create this tunnel. And when you get to hosting your app, we've collected some of the most common hosting providers Slack developers use to host their apps [on our API site](https://api.slack.com/docs/hosting).
+For local development, you can use a proxy service like ngrok to create a public URL and tunnel requests to your development environment. Refer to [ngrok's getting started guide](https://ngrok.com/docs#getting-started-expose) on how to create this tunnel. And when you get to hosting your app, we've collected some of the most common hosting providers Slack developers use to host their apps [on our API site](https://docs.slack.dev/distribution/hosting-slack-apps/).
:::
@@ -179,10 +179,10 @@ For local development, you can use a proxy service like ngrok to create a public
Navigate to **Event Subscriptions** on the left sidebar and toggle to enable. Under **Subscribe to Bot Events**, you can add events for your bot to respond to. There are four events related to messages:
-- [`message.channels`](https://api.slack.com/events/message.channels) listens for messages in public channels that your app is added to
-- [`message.groups`](https://api.slack.com/events/message.groups) listens for messages in 🔒 private channels that your app is added to
-- [`message.im`](https://api.slack.com/events/message.im) listens for messages in your app's DMs with users
-- [`message.mpim`](https://api.slack.com/events/message.mpim) listens for messages in multi-person DMs that your app is added to
+- [`message.channels`](https://docs.slack.dev/reference/events/message.channels) listens for messages in public channels that your app is added to
+- [`message.groups`](https://docs.slack.dev/reference/events/message.groups) listens for messages in 🔒 private channels that your app is added to
+- [`message.im`](https://docs.slack.dev/reference/events/message.im) listens for messages in your app's DMs with users
+- [`message.mpim`](https://docs.slack.dev/reference/events/message.mpim) listens for messages in multi-person DMs that your app is added to
If you want your bot to listen to messages from everywhere it is added to, choose all four message events. After you’ve selected the events you want your bot to listen to, click the green **Save Changes** button.
@@ -474,8 +474,8 @@ Now that you have a basic app up and running, you can start exploring how to mak
* Read through the _Basic concepts_ to learn about the different methods and features your Bolt app has access to.
-* Explore the different events your bot can listen to with the [`app.event()`](/concepts/event-listening) method. All of the events are listed [on the API site](https://api.slack.com/events).
+* Explore the different events your bot can listen to with the [`app.event()`](/concepts/event-listening) method. All of the events are listed [on the API site](https://docs.slack.dev/reference/events).
-* Bolt allows you to [call Web API methods](/concepts/web-api) with the client attached to your app. There are [over 220 methods](https://api.slack.com/methods) on our API site.
+* Bolt allows you to [call Web API methods](/concepts/web-api) with the client attached to your app. There are [over 220 methods](https://docs.slack.dev/reference/methods) on our API site.
-* Learn more about the different token types [on our API site](https://api.slack.com/docs/token-types). Your app may need different tokens depending on the actions you want it to perform.
+* Learn more about the different token types [on our API site](https://docs.slack.dev/authentication/tokens). Your app may need different tokens depending on the actions you want it to perform.
diff --git a/docs/content/tutorial/ai-chatbot.md b/docs/content/tutorial/ai-chatbot.md
index fb0498752..7db10b722 100644
--- a/docs/content/tutorial/ai-chatbot.md
+++ b/docs/content/tutorial/ai-chatbot.md
@@ -32,7 +32,7 @@ If you'd rather skip the tutorial and just head straight to the code, you can us
Before you'll be able to successfully run the app, you'll need to first obtain and set some environment variables.
1. On the **Install App** page, copy your **Bot User OAuth Token**. You will store this in your environment as `SLACK_BOT_TOKEN` (we'll get to that next).
-2. Navigate to **Basic Information** and in the **App-Level Tokens** section , click **Generate Token and Scopes**. Add the [`connections:write`](https://api.slack.com/scopes/connections:write) scope, name the token, and click **Generate**. (For more details, refer to [understanding OAuth scopes for bots](https://api.slack.com/tutorials/tracks/understanding-oauth-scopes-bot)). Copy this token. You will store this in your environment as `SLACK_APP_TOKEN`.
+2. Navigate to **Basic Information** and in the **App-Level Tokens** section , click **Generate Token and Scopes**. Add the [`connections:write`](https://docs.slack.dev/reference/scopes/connections.write) scope, name the token, and click **Generate**. (For more details, refer to [understanding OAuth scopes for bots](https://docs.slack.dev/authentication/tokens#bot)). Copy this token. You will store this in your environment as `SLACK_APP_TOKEN`.
To store your tokens and environment variables, run the following commands in the terminal. Replace the placeholder values with your bot and app tokens collected above, as well as the key or keys for the AI provider or providers you want to use:
@@ -151,7 +151,7 @@ To test this, leave the channel you just invited Bolty to and rejoin it. This wi

-The central part of this functionality is shown in the following code snippet. Note the use of the [`user_context`](https://api.slack.com/automation/types#usercontext) object, a Slack type that represents the user who is interacting with our workflow, as well as the `history` of the channel that will be summarized, which includes the ten most recent messages.
+The central part of this functionality is shown in the following code snippet. Note the use of the [`user_context`](https://tools.slack.dev/deno-slack-sdk/reference/slack-types#usercontext) object, a Slack type that represents the user who is interacting with our workflow, as well as the `history` of the channel that will be summarized, which includes the ten most recent messages.
```python
from ai.providers import get_provider_response
@@ -198,5 +198,5 @@ You can also navigate to **Bolty** in your **Apps** list and select the **Messag
Congratulations! You've successfully integrated the power of AI into your workspace. Check out these links to take the next steps in your Bolt for Python journey.
* To learn more about Bolt for Python, refer to the [Getting started](../getting-started) documentation.
-* For more details about creating workflow steps using the Bolt SDK, refer to the [workflow steps for Bolt](https://api.slack.com/automation/functions/custom-bolt) guide.
-* To use the Bolt for Python SDK to develop on the automations platform, refer to the [Create a workflow step for Workflow Builder: Bolt for Python](https://api.slack.com/tutorials/tracks/bolt-custom-function) tutorial.
+* For more details about creating workflow steps using the Bolt SDK, refer to the [workflow steps for Bolt](https://docs.slack.dev/workflows/workflow-steps) guide.
+* To use the Bolt for Python SDK to develop on the automations platform, refer to the [Create a workflow step for Workflow Builder: Bolt for Python](/bolt-python/tutorial/custom-steps) tutorial.
diff --git a/docs/content/tutorial/custom-steps-for-jira.md b/docs/content/tutorial/custom-steps-for-jira.md
index c87328208..d0fbe0979 100644
--- a/docs/content/tutorial/custom-steps-for-jira.md
+++ b/docs/content/tutorial/custom-steps-for-jira.md
@@ -35,7 +35,7 @@ https://github.com/slack-samples/bolt-python-jira-functions/blob/main/manifest.j
Before you'll be able to successfully run the app, you'll need to obtain and set some environment variables.
1. Once you have installed the app to your workspace, copy the **Bot User OAuth Token** from the **Install App** page. You will store this in your environment as `SLACK_BOT_TOKEN` (we'll get to that next).
-2. Navigate to **Basic Information** and in the **App-Level Tokens** section , click **Generate Token and Scopes**. Add the [`connections:write`](https://api.slack.com/scopes/connections:write) scope, name the token, and click **Generate**. (For more details, refer to [understanding OAuth scopes for bots](https://api.slack.com/tutorials/tracks/understanding-oauth-scopes-bot)). Copy this token. You will store this in your environment as `SLACK_APP_TOKEN`.
+2. Navigate to **Basic Information** and in the **App-Level Tokens** section , click **Generate Token and Scopes**. Add the [`connections:write`](https://docs.slack.dev/reference/scopes/connections.write) scope, name the token, and click **Generate**. Copy this token. You will store this in your environment as `SLACK_APP_TOKEN`.
3. Follow [these instructions](https://confluence.atlassian.com/adminjiraserver0909/configure-an-incoming-link-1251415519.html) to create an external app link and to generate its redirect URL (the base of which will be stored as your APP_BASE_URL variable below), client ID, and client secret.
4. Run the following commands in your terminal to store your environment variables, client ID, and client secret.
5. You'll also need to know your team ID (found by opening your Slack instance in a web browser and copying the value within the link that starts with the letter **T**) and your app ID (found under **Basic Information**).
@@ -168,5 +168,5 @@ When finished, you can click the **Disconnect Account** button in the home tab t
Congratulations! You've successfully customized your workspace with custom steps in Workflow Builder. Check out these links to take the next steps in your journey.
* To learn more about Bolt for Python, refer to the [getting started](/getting-started) documentation.
-* For more details about creating workflow steps using the Bolt SDK, refer to the [workflow steps for Bolt](https://api.slack.com/automation/functions/custom-bolt) guide.
-* For information about custom steps dynamic options, refer to [custom steps dynamic options in Workflow Builder](https://api.slack.com/automation/runonslack/custom-steps-dynamic-options).
+* For more details about creating workflow steps using the Bolt SDK, refer to the [workflow steps for Bolt](https://docs.slack.dev/workflows/workflow-steps) guide.
+* For information about custom steps dynamic options, refer to [custom steps dynamic options in Workflow Builder](https://docs.slack.dev/workflows/creating-custom-steps-dynamic-options).
diff --git a/docs/content/tutorial/modals.md b/docs/content/tutorial/modals.md
index 07a9d394b..678d3783b 100644
--- a/docs/content/tutorial/modals.md
+++ b/docs/content/tutorial/modals.md
@@ -6,7 +6,7 @@ Let's take a look at the technologies we'll use in this tutorial:
* Glitch is a online IDE that allows you to collaboratively work on code and host your own server. Glitch should only be used for development purposes and should not be used in production.
* We'll use Python in conjunction with our [Bolt for Python](https://github.com/SlackAPI/bolt-python) SDK.
-* [Block Kit](https://api.slack.com/block-kit/building) is a UI framework for Slack apps that allows you to create beautiful, interactive messages within Slack. If you've ever seen a message in Slack with buttons or a select menu, that's Block Kit.
+* [Block Kit](https://docs.slack.dev/block-kit/) is a UI framework for Slack apps that allows you to create beautiful, interactive messages within Slack. If you've ever seen a message in Slack with buttons or a select menu, that's Block Kit.
* Modals are similar to a pop-up window that displays right in Slack. They grab the attention of the user, and are normally used to prompt users to provide some kind of information or input.
---
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/acknowledge.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/acknowledge.md
index 3e3523417..72cc39257 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/acknowledge.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/acknowledge.md
@@ -6,7 +6,7 @@ slug: /concepts/acknowledge
アクション(action)、コマンド(command)、ショートカット(shortcut)、オプション(options)、およびモーダルからのデータ送信(view_submission)の各リクエストは、**必ず** `ack()` 関数を使って確認を行う必要があります。これによってリクエストが受信されたことが Slack に認識され、Slack のユーザーインターフェイスが適切に更新されます。
-リクエストの種類によっては、確認で通知方法が異なる場合があります。例えば、外部データソースを使用する選択メニューのオプションのリクエストに対する確認では、適切な[オプション](https://api.slack.com/reference/block-kit/composition-objects#option)のリストとともに `ack()` を呼び出します。モーダルからのデータ送信に対する確認では、 `response_action` を渡すことで[モーダルの更新](/concepts/view_submissions)などを行えます。
+リクエストの種類によっては、確認で通知方法が異なる場合があります。例えば、外部データソースを使用する選択メニューのオプションのリクエストに対する確認では、適切な[オプション](https://docs.slack.dev/reference/block-kit/composition-objects/option-object)のリストとともに `ack()` を呼び出します。モーダルからのデータ送信に対する確認では、 `response_action` を渡すことで[モーダルの更新](/concepts/view_submissions)などを行えます。
確認までの猶予は 3 秒しかないため、新しいメッセージの送信やデータベースからの情報の取得といった時間のかかる処理は、`ack()` を呼び出した後で行うことをおすすめします。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/actions.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/actions.md
index 799436854..82d243e99 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/actions.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/actions.md
@@ -61,7 +61,7 @@ def approve_request(ack, say):
### respond() の利用
-`respond()` は `response_url` を使って送信するときに便利なメソッドで、これらと同じような動作をします。投稿するメッセージのペイロードには、全ての[メッセージペイロードのプロパティ](https://api.slack.com/reference/messaging/payload)とオプションのプロパティとして `response_type`(値は `"in_channel"` または `"ephemeral"`)、`replace_original`、`delete_original`、`unfurl_links`、`unfurl_media` などを指定できます。こうすることによってアプリから送信されるメッセージは、やり取りの発生元に反映されます。
+`respond()` は `response_url` を使って送信するときに便利なメソッドで、これらと同じような動作をします。投稿するメッセージのペイロードには、全ての[メッセージペイロードのプロパティ](https://docs.slack.dev/messaging/#payloads)とオプションのプロパティとして `response_type`(値は `"in_channel"` または `"ephemeral"`)、`replace_original`、`delete_original`、`unfurl_links`、`unfurl_media` などを指定できます。こうすることによってアプリから送信されるメッセージは、やり取りの発生元に反映されます。
```python
# 'user_select' という action_id を持つアクションのトリガーをリッスン
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/app-home.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/app-home.md
index 6954bb75e..2dc5fd6c0 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/app-home.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/app-home.md
@@ -4,9 +4,9 @@ lang: ja-jp
slug: /concepts/app-home
---
-ホームタブは、サイドバーや検索画面からアクセス可能なサーフェスエリアです。アプリはこのエリアを使ってユーザーごとのビューを表示することができます。アプリ設定ページで App Home の機能を有効にすると、`views.publish` API メソッドの呼び出しで `user_id` と[ビューのペイロード](https://api.slack.com/reference/block-kit/views)を指定して、ホームタブを公開・更新することができるようになります。
+ホームタブは、サイドバーや検索画面からアクセス可能なサーフェスエリアです。アプリはこのエリアを使ってユーザーごとのビューを表示することができます。アプリ設定ページで App Home の機能を有効にすると、`views.publish` API メソッドの呼び出しで `user_id` と[ビューのペイロード](https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload/#view_submission)を指定して、ホームタブを公開・更新することができるようになります。
-`app_home_opened` イベントをサブスクライブすると、ユーザーが App Home を開く操作をリッスンできます。
+`app_home_opened` イベントをサブスクライブすると、ユーザーが App Home を開く操作をリッスンできます。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください。
```python
@@ -32,7 +32,7 @@ def update_home_tab(client, event, logger):
"type": "section",
"text": {
"type": "mrkdwn",
- "text":"Learn how home tabs can be more useful and interactive ."
+ "text":"Learn how home tabs can be more useful and interactive ."
}
}
]
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/assistant.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/assistant.md
index d3b54e760..5ffcb6f10 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/assistant.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/assistant.md
@@ -4,9 +4,9 @@ lang: en
slug: /concepts/assistant
---
-このページは、Bolt を使ってエージェント・アシスタントを実装するための方法を紹介します。この機能に関する一般的な情報については、[こちらのドキュメントページ(英語)](https://api.slack.com/docs/apps/ai)を参照してください。
+このページは、Bolt を使ってエージェント・アシスタントを実装するための方法を紹介します。この機能に関する一般的な情報については、[こちらのドキュメントページ(英語)](https://docs.slack.dev/ai/)を参照してください。
-この機能を実装するためには、まず[アプリの設定画面](https://api.slack.com/apps)で **Agents & Assistants** 機能を有効にし、**OAuth & Permissions** のページで [`assistant:write`](https://api.slack.com/scopes/assistant:write)、[chat:write](https://api.slack.com/scopes/chat:write)、[`im:history`](https://api.slack.com/scopes/im:history) を**ボットの**スコープに追加し、**Event Subscriptions** のページで [`assistant_thread_started`](https://api.slack.com/events/assistant_thread_started)、[`assistant_thread_context_changed`](https://api.slack.com/events/assistant_thread_context_changed)、[`message.im`](https://api.slack.com/events/message.im) イベントを有効にしてください。
+この機能を実装するためには、まず[アプリの設定画面](https://api.slack.com/apps)で **Agents & Assistants** 機能を有効にし、**OAuth & Permissions** のページで [`assistant:write`](https://docs.slack.dev/reference/scopes/assistant.write)、[chat:write](https://docs.slack.dev/reference/scopes/chat.write)、[`im:history`](https://docs.slack.dev/reference/scopes/im.history) を**ボットの**スコープに追加し、**Event Subscriptions** のページで [`assistant_thread_started`](https://docs.slack.dev/reference/events/assistant_thread_started)、[`assistant_thread_context_changed`](https://docs.slack.dev/reference/events/assistant_thread_context_changed)、[`message.im`](https://docs.slack.dev/reference/events/message.im) イベントを有効にしてください。
また、この機能は Slack の有料プランでのみ利用可能です。もし開発用の有料プランのワークスペースをお持ちでない場合は、[Developer Program](https://api.slack.com/developer-program) に参加し、全ての有料プラン向け機能を利用可能なサンドボックス環境をつくることができます。
@@ -92,7 +92,7 @@ assistant = Assistant(thread_context_store=FileAssistantThreadContextStore())
## アシスタントスレッドでの Block Kit インタラクション
-より高度なユースケースでは、上のようなプロンプト例の提案ではなく Block Kit のボタンなどを使いたいという場合があるかもしれません。そして、後続の処理のために[構造化されたメッセージメタデータ](https://api.slack.com/metadata)を含むメッセージを送信したいという場合もあるでしょう。
+より高度なユースケースでは、上のようなプロンプト例の提案ではなく Block Kit のボタンなどを使いたいという場合があるかもしれません。そして、後続の処理のために[構造化されたメッセージメタデータ](https://docs.slack.dev/messaging/message-metadata/)を含むメッセージを送信したいという場合もあるでしょう。
例えば、アプリが最初の返信で「参照しているチャンネルを要約」のようなボタンを表示し、ユーザーがそれをクリックして、より詳細な情報(例:要約するメッセージ数・日数、要約の目的など)を送信、アプリがそれを構造化されたメータデータに整理した上でリクエスト内容をボットのメッセージとして送信するようなシナリオです。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/authenticating-oauth.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/authenticating-oauth.md
index e72f27146..82bbaf562 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/authenticating-oauth.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/authenticating-oauth.md
@@ -10,9 +10,9 @@ Bolt for Python によって `slack/oauth_redirect` という**リダイレク
Bolt for Python は `slack/install` というルートも生成します。これはアプリを直接インストールするための「**Add to Slack**」ボタンを表示するために使われます。すでにワークスペースへのアプリのインストールが済んでいる場合に追加で各ユーザーのユーザートークンなどの情報を取得する場合や、カスタムのインストール用の URL を動的に生成したい場合などは、`oauth_settings` の `authorize_url_generator` でカスタムの URL ジェネレーターを指定することができます。
-バージョン 1.1.0 以降の Bolt for Python では、[OrG 全体へのインストール](https://api.slack.com/enterprise/apps)がデフォルトでサポートされています。OrG 全体へのインストールは、アプリの設定の「**Org Level Apps**」で有効化できます。
+バージョン 1.1.0 以降の Bolt for Python では、[OrG 全体へのインストール](https://docs.slack.dev/enterprise-grid/)がデフォルトでサポートされています。OrG 全体へのインストールは、アプリの設定の「**Org Level Apps**」で有効化できます。
-Slack での OAuth を使ったインストールフローについて詳しくは、[API ドキュメントを参照してください](https://api.slack.com/authentication/oauth-v2)。
+Slack での OAuth を使ったインストールフローについて詳しくは、[API ドキュメントを参照してください](https://docs.slack.dev/authentication/installing-with-oauth)。
```python
import os
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/custom-steps.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/custom-steps.md
index bc1089d21..e022c3e38 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/custom-steps.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/custom-steps.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/custom-steps
---
-Your app can use the `function()` method to listen to incoming [custom step requests](https://api.slack.com/automation/functions/custom-bolt). Custom steps are used in Workflow Builder to build workflows. The method requires a step `callback_id` of type `str`. This `callback_id` must also be defined in your [Function](https://api.slack.com/concepts/manifests#functions) definition. Custom steps must be finalized using the `complete()` or `fail()` listener arguments to notify Slack that your app has processed the request.
+Your app can use the `function()` method to listen to incoming [custom step requests](https://docs.slack.dev/workflows/workflow-steps). Custom steps are used in Workflow Builder to build workflows. The method requires a step `callback_id` of type `str`. This `callback_id` must also be defined in your [Function](https://docs.slack.dev/reference/app-manifest#functions) definition. Custom steps must be finalized using the `complete()` or `fail()` listener arguments to notify Slack that your app has processed the request.
* `complete()` requires **one** argument: `outputs` of type `dict`. It ends your custom step **successfully** and provides a dictionary containing the outputs of your custom step as per its definition.
* `fail()` requires **one** argument: `error` of type `str`. It ends your custom step **unsuccessfully** and provides a message containing information regarding why your custom step failed.
@@ -150,4 +150,4 @@ Example app manifest definition
-Learn more about responding to interactivity, see the [Slack API documentation](https://api.slack.com/automation/functions/custom-bolt#interactivity).
+Learn more about responding to interactivity, see the [Slack API documentation](https://docs.slack.dev/interactivity/).
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/event-listening.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/event-listening.md
index e54989255..2790ad5b7 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/event-listening.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/event-listening.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/event-listening
---
-`event()` メソッドを使うと、[Events API](https://api.slack.com/events) の任意のイベントをリッスンできます。リッスンするイベントは、アプリの設定であらかじめサブスクライブしておく必要があります。これを利用することで、アプリがインストールされたワークスペースで何らかのイベント(例:ユーザーがメッセージにリアクションをつけた、ユーザーがチャンネルに参加した)が発生したときに、アプリに何らかのアクションを実行させることができます。
+`event()` メソッドを使うと、[Events API](https://docs.slack.dev/reference/events) の任意のイベントをリッスンできます。リッスンするイベントは、アプリの設定であらかじめサブスクライブしておく必要があります。これを利用することで、アプリがインストールされたワークスペースで何らかのイベント(例:ユーザーがメッセージにリアクションをつけた、ユーザーがチャンネルに参加した)が発生したときに、アプリに何らかのアクションを実行させることができます。
`event()` メソッドには `str` 型の `eventType` を指定する必要があります。
@@ -23,7 +23,7 @@ def ask_for_introduction(event, say):
`message()` リスナーは `event("message")` と等価の機能を提供します。
-`subtype` という追加のキーを指定して、イベントのサブタイプでフィルタリングすることもできます。よく使われるサブタイプには、`bot_message` や `message_replied` があります。詳しくは[メッセージイベントページ](https://api.slack.com/events/message#message_subtypes)を参照してください。サブタイプなしのイベントだけにフィルターするために明に `None` を指定することもできます。
+`subtype` という追加のキーを指定して、イベントのサブタイプでフィルタリングすることもできます。よく使われるサブタイプには、`bot_message` や `message_replied` があります。詳しくは[メッセージイベントページ](https://docs.slack.dev/reference/events/message#subtypes)を参照してください。サブタイプなしのイベントだけにフィルターするために明に `None` を指定することもできます。
```python
# 変更されたすべてのメッセージに一致
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-listening.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-listening.md
index f9ccf7d17..e7d538e69 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-listening.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-listening.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/message-listening
---
-[あなたのアプリがアクセス権限を持つ](https://api.slack.com/messaging/retrieving#permissions)メッセージの投稿イベントをリッスンするには `message()` メソッドを利用します。このメソッドは `type` が `message` ではないイベントを処理対象から除外します。
+[あなたのアプリがアクセス権限を持つ](https://docs.slack.dev/messaging/retrieving-messages)メッセージの投稿イベントをリッスンするには `message()` メソッドを利用します。このメソッドは `type` が `message` ではないイベントを処理対象から除外します。
`message()` の引数には `str` 型または `re.Pattern` オブジェクトを指定できます。この条件のパターンに一致しないメッセージは除外されます。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-sending.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-sending.md
index e109a0f4d..fbcf0ac6b 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-sending.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/message-sending.md
@@ -20,7 +20,7 @@ def ask_who(message, say):
`say()` は、より複雑なメッセージペイロードを受け付けるので、メッセージに機能やリッチな構造を与えることが容易です。
-リッチなメッセージレイアウトをアプリに追加する方法については、[API サイトのガイド](https://api.slack.com/messaging/composing/layouts)を参照してください。また、[Block Kit ビルダー](https://api.slack.com/tools/block-kit-builder?template=1)の一般的なアプリフローのテンプレートも見てみてください。
+リッチなメッセージレイアウトをアプリに追加する方法については、[API サイトのガイド](https://docs.slack.dev/messaging/#structure)を参照してください。また、[Block Kit ビルダー](https://api.slack.com/tools/block-kit-builder?template=1)の一般的なアプリフローのテンプレートも見てみてください。
```python
# ユーザーが 📅 のリアクションをつけたら、日付ピッカーのついた section ブロックを送信
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/opening-modals.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/opening-modals.md
index f2bc654a7..a954a658b 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/opening-modals.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/opening-modals.md
@@ -4,11 +4,11 @@ lang: ja-jp
slug: /concepts/opening-modals
---
-モーダルは、ユーザーからのデータの入力を受け付けたり、動的な情報を表示したりするためのインターフェイスです。組み込みの APIクライアントの `views.open` メソッドに、有効な `trigger_id` とビューのペイロードを指定してモーダルを開始します。
+モーダルは、ユーザーからのデータの入力を受け付けたり、動的な情報を表示したりするためのインターフェイスです。組み込みの APIクライアントの `views.open` メソッドに、有効な `trigger_id` とビューのペイロードを指定してモーダルを開始します。
ショートカットの実行、ボタンを押下、選択メニューの操作などの操作の場合、Request URL に送信されるペイロードには `trigger_id` が含まれます。
-モーダルの生成方法についての詳細は、API ドキュメントを参照してください。
+モーダルの生成方法についての詳細は、API ドキュメントを参照してください。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/select-menu-options.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/select-menu-options.md
index 78f7dcdb4..598fb1cc6 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/select-menu-options.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/select-menu-options.md
@@ -10,7 +10,7 @@ slug: /concepts/options
`external_select` メニューでは `action_id` を指定することをおすすめしています。ただし、ダイアログを利用している場合、ダイアログが Block Kit に対応していないため、`callback_id` をフィルタリングするための制約オブジェクトを使用する必要があります。
-オプションのリクエストに応答するときは、有効なオプションを含む `options` または `option_groups` のリストとともに `ack()` を呼び出す必要があります。API サイトにある[外部データを使用する選択メニューに応答するサンプル例](https://api.slack.com/reference/messaging/block-elements#external-select)と、[ダイアログでの応答例](https://api.slack.com/dialogs#dynamic_select_elements_external)を参考にしてください。
+オプションのリクエストに応答するときは、有効なオプションを含む `options` または `option_groups` のリストとともに `ack()` を呼び出す必要があります。API サイトにある[外部データを使用する選択メニューに応答するサンプル例](https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select)と、[ダイアログでの応答例](https://docs.slack.dev/legacy/legacy-dialogs/#dynamic_select_elements_external)を参考にしてください。
さらに、ユーザーが入力したキーワードに基づいたオプションを返すようフィルタリングロジックを適用することもできます。 これは `payload` という引数の ` value` の値に基づいて、それぞれのパターンで異なるオプションの一覧を返すように実装することができます。 Bolt for Python のすべてのリスナーやミドルウェアでは、[多くの有用な引数](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html)にアクセスすることができますので、チェックしてみてください。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/shortcuts.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/shortcuts.md
index e12b576ca..995b6e0d7 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/shortcuts.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/shortcuts.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/shortcuts
---
-`shortcut()` メソッドは、[グローバルショートカット](https://api.slack.com/interactivity/shortcuts/using#global_shortcuts)と[メッセージショートカット](https://api.slack.com/interactivity/shortcuts/using#message_shortcuts)の 2 つをサポートしています。
+`shortcut()` メソッドは、[グローバルショートカット](https://docs.slack.dev/interactivity/implementing-shortcuts#global)と[メッセージショートカット](https://docs.slack.dev/interactivity/implementing-shortcuts#messages)の 2 つをサポートしています。
ショートカットは、いつでも呼び出せるアプリのエントリーポイントを提供するものです。グローバルショートカットは Slack のテキスト入力エリアや検索ウィンドウからアクセスできます。メッセージショートカットはメッセージのコンテキストメニューからアクセスできます。アプリは、ショートカットリクエストをリッスンするために `shortcut()` メソッドを使用します。このメソッドには `str` 型または `re.Pattern` 型の `callback_id` パラメーターを指定します。
@@ -14,7 +14,7 @@ slug: /concepts/shortcuts
アプリの設定でショートカットを登録する際は、他の URL と同じように、リクエスト URL の末尾に `/slack/events` をつけます。
-⚠️ グローバルショートカットのペイロードにはチャンネル ID が **含まれません**。アプリでチャンネル ID を取得する必要がある場合は、モーダル内に [`conversations_select`](https://api.slack.com/reference/block-kit/block-elements#conversation_select) エレメントを配置します。メッセージショートカットにはチャンネル ID が含まれます。
+⚠️ グローバルショートカットのペイロードにはチャンネル ID が **含まれません**。アプリでチャンネル ID を取得する必要がある場合は、モーダル内に [`conversations_select`](https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#conversation_multi_select) エレメントを配置します。メッセージショートカットにはチャンネル ID が含まれます。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください。
```python
@@ -36,7 +36,7 @@ def open_modal(ack, shortcut, client):
"type": "section",
"text": {
"type": "mrkdwn",
- "text":"About the simplest modal you could conceive of :smile:\n\nMaybe or ."
+ "text":"About the simplest modal you could conceive of :smile:\n\nMaybe or ."
}
},
{
@@ -76,7 +76,7 @@ def open_modal(ack, shortcut, client):
"type": "section",
"text": {
"type": "mrkdwn",
- "text":"About the simplest modal you could conceive of :smile:\n\nMaybe or ."
+ "text":"About the simplest modal you could conceive of :smile:\n\nMaybe or ."
}
},
{
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/socket-mode.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/socket-mode.md
index ad4f6c8f0..061daf853 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/socket-mode.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/socket-mode.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/socket-mode
---
-[ソケットモード](https://api.slack.com/apis/connections/socket)は、アプリに WebSocket での接続と、そのコネクション経由でのデータ受信を可能とします。Bolt for Python は、バージョン 1.2.0 からこれに対応しています。
+[ソケットモード](https://docs.slack.dev/apis/events-api/using-socket-mode)は、アプリに WebSocket での接続と、そのコネクション経由でのデータ受信を可能とします。Bolt for Python は、バージョン 1.2.0 からこれに対応しています。
ソケットモードでは、Slack からのペイロード送信を受け付けるエンドポイントをホストする HTTP サーバーを起動する代わりに WebSocket で Slack に接続し、そのコネクション経由でデータを受信します。ソケットモードを使う前に、アプリの管理画面でソケットモードの機能が有効になっていることを確認しておいてください。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/token-rotation.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/token-rotation.md
index 456083832..bc622fe98 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/token-rotation.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/token-rotation.md
@@ -10,4 +10,4 @@ Bolt for Python [v1.7.0](https://github.com/slackapi/bolt-python/releases/tag/v1
[Bolt for Python の組み込みの OAuth 機能](/concepts/authenticating-oauth) を使用していれば、Bolt for Python が自動的にトークンローテーションの処理をハンドリングします。
-トークンローテーションに関する詳細は [API ドキュメント](https://api.slack.com/authentication/rotation)を参照してください。
\ No newline at end of file
+トークンローテーションに関する詳細は [API ドキュメント](https://docs.slack.dev/authentication/using-token-rotation)を参照してください。
\ No newline at end of file
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/updating-pushing-views.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/updating-pushing-views.md
index 2948f978f..42c89157e 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/updating-pushing-views.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/updating-pushing-views.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/updating-pushing-views
---
-モーダル内では、複数のモーダルをスタックのように重ねることができます。`views_open` という APIを呼び出すと、親となるとなるモーダルビューが追加されます。この最初の呼び出しの後、`views_update` を呼び出すことでそのビューを更新することができます。また、`views_push` を呼び出すと、親のモーダルの上にさらに新しいモーダルビューを重ねることもできます。
+モーダル内では、複数のモーダルをスタックのように重ねることができます。`views_open` という APIを呼び出すと、親となるとなるモーダルビューが追加されます。この最初の呼び出しの後、`views_update` を呼び出すことでそのビューを更新することができます。また、`views_push` を呼び出すと、親のモーダルの上にさらに新しいモーダルビューを重ねることもできます。
**`views_update`**
@@ -12,9 +12,9 @@ slug: /concepts/updating-pushing-views
**`views_push`**
-既存のモーダルの上に新しいモーダルをスタックのように追加する場合は、組み込みのクライアントで `views_push` API を呼び出します。この API 呼び出しでは、有効な `trigger_id` と新しいビューのペイロードを指定します。`views_push` の引数は モーダルの開始 と同じです。モーダルを開いた後、このモーダルのスタックに追加できるモーダルビューは 2 つまでです。
+既存のモーダルの上に新しいモーダルをスタックのように追加する場合は、組み込みのクライアントで `views_push` API を呼び出します。この API 呼び出しでは、有効な `trigger_id` と新しいビューのペイロードを指定します。`views_push` の引数は モーダルの開始 と同じです。モーダルを開いた後、このモーダルのスタックに追加できるモーダルビューは 2 つまでです。
-モーダルの更新と多重表示に関する詳細は、API ドキュメントを参照してください。
+モーダルの更新と多重表示に関する詳細は、API ドキュメントを参照してください。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/view-submissions.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/view-submissions.md
index 9e6d74058..7ad6637bb 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/view-submissions.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/view-submissions.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/view_submissions
---
-モーダルのペイロードに `input` ブロックを含める場合、その入力値を受け取るために`view_submission` リクエストをリッスンする必要があります。`view_submission` リクエストのリッスンには、組み込みの`view()` メソッドを利用することができます。`view()` の引数には、`str` 型または `re.Pattern` 型の `callback_id` を指定します。
+モーダルのペイロードに `input` ブロックを含める場合、その入力値を受け取るために`view_submission` リクエストをリッスンする必要があります。`view_submission` リクエストのリッスンには、組み込みの`view()` メソッドを利用することができます。`view()` の引数には、`str` 型または `re.Pattern` 型の `callback_id` を指定します。
`input` ブロックの値にアクセスするには `state` オブジェクトを参照します。`state` 内には `values` というオブジェクトがあり、`block_id` と一意の `action_id` に紐づける形で入力値を保持しています。
@@ -23,9 +23,9 @@ def handle_submission(ack, body):
# https://app.slack.com/block-kit-builder/#%7B%22type%22:%22modal%22,%22callback_id%22:%22view_1%22,%22title%22:%7B%22type%22:%22plain_text%22,%22text%22:%22My%20App%22,%22emoji%22:true%7D,%22blocks%22:%5B%5D%7D
ack(response_action="update", view=build_new_view(body))
```
-この例と同様に、モーダルでの送信リクエストに対して、エラーを表示するためのオプションもあります。
+この例と同様に、モーダルでの送信リクエストに対して、エラーを表示するためのオプションもあります。
-モーダルの送信について詳しくは、API ドキュメントを参照してください。
+モーダルの送信について詳しくは、API ドキュメントを参照してください。
---
@@ -33,7 +33,7 @@ def handle_submission(ack, body):
`view_closed` リクエストをリッスンするためには `callback_id` を指定して、かつ `notify_on_close` 属性をモーダルのビューに設定する必要があります。以下のコード例をご覧ください。
-よく詳しい情報は、API ドキュメントを参照してください。
+よく詳しい情報は、API ドキュメントを参照してください。
```python
client.views_open(
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/web-api.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/web-api.md
index 0070ed0fb..75953b5bd 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/web-api.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/concepts/web-api.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/web-api
---
-`app.client`、またはミドルウェア・リスナーの引数 `client` として Bolt アプリに提供されている [`WebClient`](https://tools.slack.dev/python-slack-sdk/basic_usage.html) は必要な権限を付与されており、これを利用することで[あらゆる Web API メソッド](https://api.slack.com/methods)を呼び出すことができます。このクライアントのメソッドを呼び出すと `SlackResponse` という Slack からの応答情報を含むオブジェクトが返されます。
+`app.client`、またはミドルウェア・リスナーの引数 `client` として Bolt アプリに提供されている [`WebClient`](https://tools.slack.dev/python-slack-sdk/basic_usage.html) は必要な権限を付与されており、これを利用することで[あらゆる Web API メソッド](https://docs.slack.dev/reference/methods)を呼び出すことができます。このクライアントのメソッドを呼び出すと `SlackResponse` という Slack からの応答情報を含むオブジェクトが返されます。
Bolt の初期化に使用するトークンは `context` オブジェクトに設定されます。このトークンは、多くの Web API メソッドを呼び出す際に必要となります。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/getting-started.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/getting-started.md
index 7e50fbcf2..b29deaef8 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/getting-started.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/getting-started.md
@@ -33,18 +33,18 @@ lang: ja-jp
---
### トークンとアプリのインストール {#tokens-and-installing-apps}
-Slack アプリでは、[Slack API へのアクセスの管理に OAuth を使用します](https://api.slack.com/docs/oauth)。アプリがインストールされると、トークンが発行されます。アプリはそのトークンを使って API メソッドを呼び出すことができます。
+Slack アプリでは、[Slack API へのアクセスの管理に OAuth を使用します](https://docs.slack.dev/authentication/installing-with-oauth)。アプリがインストールされると、トークンが発行されます。アプリはそのトークンを使って API メソッドを呼び出すことができます。
Slack アプリで使用できるトークンには、ユーザートークン(`xoxp`)とボットトークン(`xoxb`)、アプリレベルトークン(`xapp`)の 3 種類があります。
-- [ユーザートークン](https://api.slack.com/authentication/token-types#user) を使用すると、アプリをインストールまたは認証したユーザーに成り代わって API メソッドを呼び出すことができます。1 つのワークスペースに複数のユーザートークンが存在する可能性があります。
-- [ボットトークン](https://api.slack.com/authentication/token-types#bot) はボットユーザーに関連づけられ、1 つのワークスペースでは最初に誰かがそのアプリをインストールした際に一度だけ発行されます。どのユーザーがインストールを実行しても、アプリが使用するボットトークンは同じになります。_ほとんど_のアプリで使用されるのは、ボットトークンです。
-- [アプリレベルトークン](https://api.slack.com/authentication/token-types#app) は、全ての組織(とその配下のワークスペースでの個々のユーザーによるインストール)を横断して、あなたのアプリを代理するものです。アプリレベルトークンは、アプリの WebSocket コネクションを確立するためによく使われます。
+- [ユーザートークン](https://docs.slack.dev/authentication/tokens#user) を使用すると、アプリをインストールまたは認証したユーザーに成り代わって API メソッドを呼び出すことができます。1 つのワークスペースに複数のユーザートークンが存在する可能性があります。
+- [ボットトークン](https://docs.slack.dev/authentication/tokens#bot) はボットユーザーに関連づけられ、1 つのワークスペースでは最初に誰かがそのアプリをインストールした際に一度だけ発行されます。どのユーザーがインストールを実行しても、アプリが使用するボットトークンは同じになります。_ほとんど_のアプリで使用されるのは、ボットトークンです。
+- [アプリレベルトークン](https://docs.slack.dev/authentication/tokens#app-level) は、全ての組織(とその配下のワークスペースでの個々のユーザーによるインストール)を横断して、あなたのアプリを代理するものです。アプリレベルトークンは、アプリの WebSocket コネクションを確立するためによく使われます。
このガイドではボットトークンとアプリレベルトークンを使用します。
1. 左サイドバーの「**OAuth & Permissions**」をクリックし、「**Bot Token Scopes**」セクションまで下にスクロールします。「**Add an OAuth Scope**」をクリックします。
-2. ここでは [`chat:write`](https://api.slack.com/scopes/chat:write) というスコープのみを追加します。このスコープはアプリが参加しているチャンネルにメッセージを投稿することを許可します。
+2. ここでは [`chat:write`](https://docs.slack.dev/reference/scopes/chat.write) というスコープのみを追加します。このスコープはアプリが参加しているチャンネルにメッセージを投稿することを許可します。
3. OAuth & Permissions ページの一番上までスクロールし、「**Install App to Workspace**」をクリックします。Slack の OAuth 確認画面 が表示されます。この画面で開発用ワークスペースへのアプリのインストールを承認します。
@@ -58,7 +58,7 @@ Slack アプリで使用できるトークンには、ユーザートークン
:::tip
-トークンはパスワードと同様に取り扱い、[安全な方法で保管してください](https://api.slack.com/docs/oauth-safety)。アプリはこのトークンを使って Slack ワークスペースで投稿をしたり、情報の取得をしたりします。
+トークンはパスワードと同様に取り扱い、[安全な方法で保管してください](https://docs.slack.dev/authentication/best-practices-for-security)。アプリはこのトークンを使って Slack ワークスペースで投稿をしたり、情報の取得をしたりします。
:::
@@ -101,7 +101,7 @@ export SLACK_APP_TOKEN=<アプリレベルトークン>
```
:::warning
-🔒 全てのトークンは安全に保管してください。少なくともパブリックなバージョン管理にチェックインするようなことは避けるべきでしょう。また、上にあった例のように環境変数を介してアクセスするようにしてください。詳細な情報は [アプリのセキュリティのベストプラクティス](https://api.slack.com/authentication/best-practices)のドキュメントを参照してください。
+🔒 全てのトークンは安全に保管してください。少なくともパブリックなバージョン管理にチェックインするようなことは避けるべきでしょう。また、上にあった例のように環境変数を介してアクセスするようにしてください。詳細な情報は [アプリのセキュリティのベストプラクティス](https://docs.slack.dev/authentication/best-practices-for-security)のドキュメントを参照してください。
:::
@@ -139,7 +139,7 @@ python3 app.py
### イベントを設定する {#setting-up-events}
アプリはワークスペース内の他のメンバーと同じように振る舞い、メッセージを投稿したり、絵文字リアクションを追加したり、イベントをリッスンして返答したりできます。
-Slack ワークスペースで発生するイベント(メッセージが投稿されたときや、メッセージに対するリアクションがつけられたときなど)をリッスンするには、[Events API を使って特定の種類のイベントをサブスクライブします](https://api.slack.com/events-api)。
+Slack ワークスペースで発生するイベント(メッセージが投稿されたときや、メッセージに対するリアクションがつけられたときなど)をリッスンするには、[Events API を使って特定の種類のイベントをサブスクライブします](https://docs.slack.dev/apis/events-api/)。
このチュートリアルの序盤でソケットモードを有効にしました。ソケットモードを使うことで、アプリが公開された HTTP エンドポイントを公開せずに Events API やインタラクティブコンポーネントを利用できるようになります。このことは、開発時やファイヤーウォールの裏からのリクエストを受ける際に便利です。HTTP での方式は、ホスティング環境にデプロイするアプリや Slack App Directory で配布されるアプリの開発・運用に適しています。
@@ -164,11 +164,11 @@ import TabItem from '@theme/TabItem';
1. アプリ構成ページに戻ります ([アプリ管理ページから](https://api.slack.com/apps) アプリをクリックします)。左側のサイドバーで [**イベント サブスクリプション**] をクリックします。 **イベントを有効にする**というラベルの付いたスイッチを切り替えます。
-2. リクエスト URL を追加します。 Slack は、イベントに対応する HTTP POST リクエストをこの [リクエスト URL](https://api.slack.com/apis/connections/events-api#the-events-api__subscribing-to-event-types__events-api-request-) に送信します。 Bolt は、`/slack/events` パスを使用して、すべての受信リクエスト (ショートカット、イベント、対話性ペイロードなど) をリッスンします。アプリ構成内でリクエスト URL を構成する場合は、`/slack/events` を追加します。 「https://あなたのドメイン/slack/events」。 💡 Bolt アプリが実行されている限り、URL は検証されるはずです。
+2. リクエスト URL を追加します。 Slack は、イベントに対応する HTTP POST リクエストをこの [リクエスト URL](https://docs.slack.dev/apis/events-api/#subscribing) に送信します。 Bolt は、`/slack/events` パスを使用して、すべての受信リクエスト (ショートカット、イベント、対話性ペイロードなど) をリッスンします。アプリ構成内でリクエスト URL を構成する場合は、`/slack/events` を追加します。 「https://あなたのドメイン/slack/events」。 💡 Bolt アプリが実行されている限り、URL は検証されるはずです。
:::tip
-ローカル開発の場合、ngrok などのプロキシ サービスを使用してパブリック URL を作成し、リクエストを開発環境にトンネリングできます。このトンネルの作成方法については、[ngrok のスタート ガイド](https://ngrok.com/docs#getting-started-expose) を参照してください。アプリをホスティングする際には、Slack 開発者がアプリをホストするために使用する最も一般的なホスティング プロバイダーを [API サイト](https://api.slack.com/docs/hosting) に集めました。
+ローカル開発の場合、ngrok などのプロキシ サービスを使用してパブリック URL を作成し、リクエストを開発環境にトンネリングできます。このトンネルの作成方法については、[ngrok のスタート ガイド](https://ngrok.com/docs#getting-started-expose) を参照してください。アプリをホスティングする際には、Slack 開発者がアプリをホストするために使用する最も一般的なホスティング プロバイダーを [API サイト](https://docs.slack.dev/distribution/hosting-slack-apps/) に集めました。
:::
@@ -176,10 +176,10 @@ import TabItem from '@theme/TabItem';
左側のサイドバーから **Event Subscriptions** にアクセスして、機能を有効にしてください。 **Subscribe to Bot Events** 配下で、ボットが受け取れるイベントを追加することができます。4つのメッセージに関するイベントがあります。
-- [`message.channels`](https://api.slack.com/events/message.channels) アプリが参加しているパブリックチャンネルのメッセージをリッスン
-- [`message.groups`](https://api.slack.com/events/message.groups) アプリが参加しているプライベートチャンネルのメッセージをリッスン
-- [`message.im`](https://api.slack.com/events/message.im) あなたのアプリとユーザーのダイレクトメッセージをリッスン
-- [`message.mpim`](https://api.slack.com/events/message.mpim) あなたのアプリが追加されているグループ DM をリッスン
+- [`message.channels`](https://docs.slack.dev/reference/events/message.channels) アプリが参加しているパブリックチャンネルのメッセージをリッスン
+- [`message.groups`](https://docs.slack.dev/reference/events/message.groups) アプリが参加しているプライベートチャンネルのメッセージをリッスン
+- [`message.im`](https://docs.slack.dev/reference/events/message.im) あなたのアプリとユーザーのダイレクトメッセージをリッスン
+- [`message.mpim`](https://docs.slack.dev/reference/events/message.mpim) あなたのアプリが追加されているグループ DM をリッスン
ボットが参加するすべての場所のメッセージをリッスンさせるには、これら 4 つのメッセージイベントをすべて選択します。ボットにリッスンさせるメッセージイベントの種類を選択したら、「**Save Changes**」ボタンをクリックします。
@@ -468,6 +468,6 @@ if __name__ == "__main__":
ここまでで基本的なアプリをセットアップして実行することはできたので、次は自分だけの Bolt アプリを作る方法について調べてみてください。参考になりそうなリソースをいくつかご紹介します。
* 基本的な概念について読んでみてください。Bolt アプリがアクセスできるさまざまメソッドや機能について知ることができます。
-* [`app.event()` メソッド](/concepts/event-listening)でボットがリッスンできるイベントをほかにも試してみましょう。すべてのイベントの一覧は [API サイト](https://api.slack.com/events)で確認できます。
-* Bolt では、アプリにアタッチされたクライアントから [Web API メソッドを呼び出す](/concepts/web-api)ことができます。API サイトに [220 以上のメソッド](https://api.slack.com/methods)を一覧しています。
-* [API サイト](https://api.slack.com/docs/token-types)でほかのタイプのトークンを確認してみてください。アプリで実行したいアクションによって、異なるトークンが必要になる場合があります。
+* [`app.event()` メソッド](/concepts/event-listening)でボットがリッスンできるイベントをほかにも試してみましょう。すべてのイベントの一覧は [API サイト](https://docs.slack.dev/reference/events)で確認できます。
+* Bolt では、アプリにアタッチされたクライアントから [Web API メソッドを呼び出す](/concepts/web-api)ことができます。API サイトに [220 以上のメソッド](https://docs.slack.dev/reference/methods)を一覧しています。
+* [API サイト](https://docs.slack.dev/authentication/tokens)でほかのタイプのトークンを確認してみてください。アプリで実行したいアクションによって、異なるトークンが必要になる場合があります。
diff --git a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/legacy/steps-from-apps.md b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/legacy/steps-from-apps.md
index 4717de480..554b2a1f4 100644
--- a/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/legacy/steps-from-apps.md
+++ b/docs/i18n/ja-jp/docusaurus-plugin-content-docs/current/legacy/steps-from-apps.md
@@ -4,7 +4,7 @@ lang: ja-jp
slug: /concepts/steps-from-apps
---
-(アプリによる)ワークフローステップでは、処理をアプリ側で行うカスタムのワークフローステップを提供することができます。ユーザーは[ワークフロービルダー](https://api.slack.com/workflows)を使ってこれらのステップをワークフローに追加できます。
+(アプリによる)ワークフローステップでは、処理をアプリ側で行うカスタムのワークフローステップを提供することができます。ユーザーは[ワークフロービルダー](https://docs.slack.dev/workflows/workflow-builder)を使ってこれらのステップをワークフローに追加できます。
ワークフローステップは、次の 3 つのユーザーイベントで構成されます。
@@ -14,7 +14,7 @@ slug: /concepts/steps-from-apps
ワークフローステップを機能させるためには、これら 3 つのイベントすべてに対応する必要があります。
-アプリを使ったワークフローステップに関する詳細は、[API ドキュメント](https://api.slack.com/workflows/steps)を参照してください。
+アプリを使ったワークフローステップに関する詳細は、[API ドキュメント](https://docs.slack.dev/legacy/legacy-steps-from-apps/)を参照してください。
## ステップの定義
@@ -63,13 +63,13 @@ app.step(ws)
## ステップの追加・編集
-作成したワークフローステップがワークフローに追加またはその設定を変更されるタイミングで、[`workflow_step_edit` イベントがアプリに送信されます](https://api.slack.com/reference/workflows/workflow_step_edit)。このイベントがアプリに届くと、`WorkflowStep` で設定した `edit` コールバックが実行されます。
+作成したワークフローステップがワークフローに追加またはその設定を変更されるタイミングで、[`workflow_step_edit` イベントがアプリに送信されます](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-workflow_step_edit-payload)。このイベントがアプリに届くと、`WorkflowStep` で設定した `edit` コールバックが実行されます。
-ステップの追加と編集のどちらが行われるときも、[ワークフローステップの設定モーダル](https://api.slack.com/reference/workflows/configuration-view)をビルダーに送信する必要があります。このモーダルは、そのステップ独自の設定を選択するための場所です。通常のモーダルより制限が強く、例えば `title`、`submit`、`close` のプロパティを含めることができません。設定モーダルの `callback_id` は、デフォルトではワークフローステップと同じものになります。
+ステップの追加と編集のどちらが行われるときも、[ワークフローステップの設定モーダル](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-configuration-view-object)をビルダーに送信する必要があります。このモーダルは、そのステップ独自の設定を選択するための場所です。通常のモーダルより制限が強く、例えば `title`、`submit`、`close` のプロパティを含めることができません。設定モーダルの `callback_id` は、デフォルトではワークフローステップと同じものになります。
`edit` コールバック内で `configure()` ユーティリティを使用すると、対応する `blocks` 引数にビューのblocks 部分だけを渡して、ステップの設定モーダルを簡単に表示させることができます。必要な入力内容が揃うまで設定の保存を無効にするには、`True` の値をセットした `submit_disabled` を渡します。
-設定モーダルの開き方に関する詳細は、[こちらのドキュメント](https://api.slack.com/workflows/steps#handle_config_view)を参照してください。
+設定モーダルの開き方に関する詳細は、[こちらのドキュメント](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-configuration-view-object)を参照してください。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください(共通 / ステップ用
@@ -121,7 +121,7 @@ app.step(ws)
- `step_name` : ステップのデフォルトの名前をオーバーライドします。
- `step_image_url` : ステップのデフォルトの画像をオーバーライドします。
-これらのパラメータの構成方法に関する詳細は、[こちらのドキュメント](https://api.slack.com/reference/workflows/workflow_step)を参照してください。
+これらのパラメータの構成方法に関する詳細は、[こちらのドキュメント](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-workflow_step-object)を参照してください。
指定可能な引数の一覧はモジュールドキュメントを参考にしてください(共通 / ステップ用
@@ -162,7 +162,7 @@ app.step(ws)
## ステップの実行
-エンドユーザーがワークフローステップを実行すると、アプリに [`workflow_step_execute` イベントが送信されます](https://api.slack.com/events/workflow_step_execute)。このイベントがアプリに届くと、`WorkflowStep` で設定した `execute` コールバックが実行されます。
+エンドユーザーがワークフローステップを実行すると、アプリに [`workflow_step_execute` イベントが送信されます](https://docs.slack.dev/legacy/legacy-steps-from-apps/legacy-steps-from-apps-workflow_step-object)。このイベントがアプリに届くと、`WorkflowStep` で設定した `execute` コールバックが実行されます。
`save` コールバックで取り出した `inputs` を使って、サードパーティの API を呼び出す、情報をデータベースに保存する、ユーザーのホームタブを更新するといった処理を実行することができます。また、ワークフローの後続のステップで利用する出力値を `outputs` オブジェクトに設定します。
diff --git a/docs/navbarConfig.js b/docs/navbarConfig.js
index 122867f08..b243299f1 100644
--- a/docs/navbarConfig.js
+++ b/docs/navbarConfig.js
@@ -61,7 +61,7 @@ const navbar = {
target: '_self',
},
{
- to: 'https://api.slack.com',
+ to: 'https://docs.slack.dev/',
label: 'API Docs',
position: 'right',
target: '_self',
diff --git a/docs/src/css/custom.css b/docs/src/css/custom.css
index 65b7c372b..8a0fa6ca2 100644
--- a/docs/src/css/custom.css
+++ b/docs/src/css/custom.css
@@ -338,7 +338,7 @@ a code {
color: var(--code-link-text);
}
-a[href^="https://api.slack.com/methods"] > code
+a[href^="https://docs.slack.dev/reference/methods"] > code
{
background-color: var(--method-link-background);
color: var(--method-link-text);
@@ -350,7 +350,7 @@ a[href^="/reference/methods"] > code
color: var(--method-link-text);
}
-a[href^="https://api.slack.com/scopes"] > code
+a[href^="https://docs.slack.dev/reference/scopes"] > code
{
background-color: var(--scope-link-background);
color: var(--scope-link-text);
@@ -362,7 +362,7 @@ a[href^="/reference/scopes"] > code
color: var(--scope-link-text);
}
-a[href^="https://api.slack.com/events"] > code
+a[href^="https://docs.slack.dev/reference/events"] > code
{
background-color: var(--event-link-background);
color: var(--event-link-text);
diff --git a/docs/static/api-docs/slack_bolt/app/app.html b/docs/static/api-docs/slack_bolt/app/app.html
index 5b1544bf7..02fc5b036 100644
--- a/docs/static/api-docs/slack_bolt/app/app.html
+++ b/docs/static/api-docs/slack_bolt/app/app.html
@@ -675,7 +675,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -693,7 +693,7 @@
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -710,7 +710,7 @@
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -787,7 +787,7 @@
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -825,7 +825,7 @@
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -931,7 +931,7 @@
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -978,7 +978,7 @@
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1046,9 +1046,9 @@
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1074,7 +1074,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1091,7 +1091,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1107,7 +1107,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1123,7 +1123,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1164,7 +1164,7 @@
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1190,7 +1190,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1206,7 +1206,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1247,8 +1247,7 @@
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1288,7 +1287,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1630,9 +1629,9 @@ Methods
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1661,9 +1660,9 @@ Methods
app.action("approve_button")(update_message)
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -1706,7 +1705,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1716,7 +1715,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details.
def block_action(self,
constraints: str | Pattern | Dict[str, str | Pattern],
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1733,7 +1732,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1744,7 +1743,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
def block_suggestion(self,
action_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1798,7 +1797,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1829,7 +1828,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
-Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -1892,7 +1891,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1902,7 +1901,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_submission(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1919,7 +1918,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1929,7 +1928,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_suggestion(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1946,7 +1945,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1956,7 +1955,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dispatch(self,
req: BoltRequest) ‑> BoltResponse
@@ -2182,7 +2181,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2214,7 +2213,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
-Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2361,7 +2360,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2412,7 +2411,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
-Refer to https://api.slack.com/events/message for details of message events.
+Refer to https://docs.slack.dev/reference/events/message for details of message events.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2555,8 +2554,7 @@ Args
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2596,8 +2594,7 @@ Args
Refer to the following documents for details:
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2643,7 +2640,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2680,7 +2677,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
-Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2766,7 +2763,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -2784,7 +2781,7 @@ Args
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2801,7 +2798,7 @@ Args
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -2823,7 +2820,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
Unlike others, this method doesn't behave as a decorator.
If you want to register a step from app by a decorator, use WorkflowStepBuilder's methods.
@@ -2838,7 +2835,7 @@
Args
# Pass Step to set up listeners
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
For further information about WorkflowStep specific function arguments
such as configure, update, complete, and fail,
@@ -2909,7 +2906,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2950,7 +2947,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
-
Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2979,7 +2976,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2989,7 +2986,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details.
def view_submission(self,
constraints: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -3006,7 +3003,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3016,7 +3013,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details.
diff --git a/docs/static/api-docs/slack_bolt/app/async_app.html b/docs/static/api-docs/slack_bolt/app/async_app.html
index e5d22cfa3..66af8f038 100644
--- a/docs/static/api-docs/slack_bolt/app/async_app.html
+++ b/docs/static/api-docs/slack_bolt/app/async_app.html
@@ -687,7 +687,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -705,7 +705,7 @@
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
For further information about AsyncWorkflowStep specific function arguments
@@ -721,7 +721,7 @@
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -803,7 +803,7 @@
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -841,7 +841,7 @@
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -952,7 +952,7 @@
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -999,7 +999,7 @@
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1067,9 +1067,9 @@
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1095,7 +1095,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1112,7 +1112,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1128,7 +1128,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1144,7 +1144,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1185,7 +1185,7 @@
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1211,7 +1211,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1227,7 +1227,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1268,8 +1268,7 @@
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1309,7 +1308,7 @@
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1663,9 +1662,9 @@ Methods
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1694,9 +1693,9 @@ Methods
app.action("approve_button")(update_message)
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -1867,7 +1866,7 @@ Returns
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1877,7 +1876,7 @@ Returns
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details.
def block_action(self,
constraints: str | Pattern | Dict[str, str | Pattern],
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -1894,7 +1893,7 @@ Returns
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1905,7 +1904,7 @@ Returns
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
def block_suggestion(self,
action_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -1959,7 +1958,7 @@ Returns
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1990,7 +1989,7 @@ Returns
# Pass a function to this method
app.command("/echo")(repeat_text)
-Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2053,7 +2052,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2063,7 +2062,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_submission(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -2080,7 +2079,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2090,7 +2089,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_suggestion(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -2107,7 +2106,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2117,7 +2116,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def enable_token_revocation_listeners(self) ‑> None
@@ -2223,7 +2222,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2255,7 +2254,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
-Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2404,7 +2403,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2458,7 +2457,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
-Refer to https://api.slack.com/events/message for details of message events.
+Refer to https://docs.slack.dev/reference/events/message for details of message events.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2598,8 +2597,7 @@ Args
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2639,8 +2637,7 @@ Args
Refer to the following documents for details:
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2729,7 +2726,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2766,7 +2763,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
-Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2829,7 +2826,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -2847,7 +2844,7 @@ Args
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
For further information about AsyncWorkflowStep specific function arguments
@@ -2863,7 +2860,7 @@ Args
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -2885,7 +2882,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
Unlike others, this method doesn't behave as a decorator.
If you want to register a step from app by a decorator, use AsyncWorkflowStepBuilder's methods.
@@ -2900,7 +2897,7 @@
Args
# Pass Step to set up listeners
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
For further information about AsyncWorkflowStep specific function arguments
such as configure, update, complete, and fail,
@@ -2968,7 +2965,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -3009,7 +3006,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
-
Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -3038,7 +3035,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3048,7 +3045,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details.
def view_submission(self,
constraints: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -3065,7 +3062,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3075,7 +3072,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details.
def web_app(self, path: str = '/slack/events', port: int = 3000) ‑> aiohttp.web_app.Application
diff --git a/docs/static/api-docs/slack_bolt/app/index.html b/docs/static/api-docs/slack_bolt/app/index.html
index 3c2b519b2..f1a7e9655 100644
--- a/docs/static/api-docs/slack_bolt/app/index.html
+++ b/docs/static/api-docs/slack_bolt/app/index.html
@@ -694,7 +694,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -712,7 +712,7 @@
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -729,7 +729,7 @@
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -806,7 +806,7 @@
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -844,7 +844,7 @@
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -950,7 +950,7 @@
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -997,7 +997,7 @@
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1065,9 +1065,9 @@
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1093,7 +1093,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1110,7 +1110,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1126,7 +1126,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1142,7 +1142,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1183,7 +1183,7 @@
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1209,7 +1209,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1225,7 +1225,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1266,8 +1266,7 @@
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1307,7 +1306,7 @@
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1649,9 +1648,9 @@ Methods
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1680,9 +1679,9 @@ Methods
app.action("approve_button")(update_message)
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -1725,7 +1724,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1735,7 +1734,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details.
def block_action(self,
constraints: str | Pattern | Dict[str, str | Pattern],
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1752,7 +1751,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1763,7 +1762,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
def block_suggestion(self,
action_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1817,7 +1816,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1848,7 +1847,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
-Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -1911,7 +1910,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1921,7 +1920,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_submission(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1938,7 +1937,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1948,7 +1947,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_suggestion(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1965,7 +1964,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1975,7 +1974,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dispatch(self,
req: BoltRequest) ‑> BoltResponse
@@ -2201,7 +2200,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2233,7 +2232,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
-Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2380,7 +2379,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2431,7 +2430,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
-Refer to https://api.slack.com/events/message for details of message events.
+Refer to https://docs.slack.dev/reference/events/message for details of message events.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2574,8 +2573,7 @@ Args
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2615,8 +2613,7 @@ Args
Refer to the following documents for details:
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2662,7 +2659,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2699,7 +2696,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
-Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2785,7 +2782,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -2803,7 +2800,7 @@ Args
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2820,7 +2817,7 @@ Args
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -2842,7 +2839,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
Unlike others, this method doesn't behave as a decorator.
If you want to register a step from app by a decorator, use WorkflowStepBuilder's methods.
@@ -2857,7 +2854,7 @@
Args
# Pass Step to set up listeners
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
For further information about WorkflowStep specific function arguments
such as configure, update, complete, and fail,
@@ -2928,7 +2925,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2969,7 +2966,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
-
Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2998,7 +2995,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3008,7 +3005,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details.
def view_submission(self,
constraints: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -3025,7 +3022,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3035,7 +3032,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details.
diff --git a/docs/static/api-docs/slack_bolt/async_app.html b/docs/static/api-docs/slack_bolt/async_app.html
index cb1e5c545..c067aeb5e 100644
--- a/docs/static/api-docs/slack_bolt/async_app.html
+++ b/docs/static/api-docs/slack_bolt/async_app.html
@@ -778,7 +778,7 @@ Class variables
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -796,7 +796,7 @@ Class variables
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
For further information about AsyncWorkflowStep specific function arguments
@@ -812,7 +812,7 @@ Class variables
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -894,7 +894,7 @@ Class variables
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -932,7 +932,7 @@ Class variables
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1043,7 +1043,7 @@ Class variables
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1090,7 +1090,7 @@ Class variables
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1158,9 +1158,9 @@ Class variables
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1186,7 +1186,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1203,7 +1203,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1219,7 +1219,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1235,7 +1235,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1276,7 +1276,7 @@ Class variables
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1302,7 +1302,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1318,7 +1318,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1359,8 +1359,7 @@ Class variables
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1400,7 +1399,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1754,9 +1753,9 @@ Methods
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -1785,9 +1784,9 @@ Methods
app.action("approve_button")(update_message)
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -1958,7 +1957,7 @@ Returns
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1968,7 +1967,7 @@ Returns
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details.
def block_action(self,
constraints: str | Pattern | Dict[str, str | Pattern],
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -1985,7 +1984,7 @@ Returns
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1996,7 +1995,7 @@ Returns
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
def block_suggestion(self,
action_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -2050,7 +2049,7 @@ Returns
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2081,7 +2080,7 @@ Returns
# Pass a function to this method
app.command("/echo")(repeat_text)
-Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2144,7 +2143,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2154,7 +2153,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_submission(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -2171,7 +2170,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2181,7 +2180,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_suggestion(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -2198,7 +2197,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2208,7 +2207,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def enable_token_revocation_listeners(self) ‑> None
@@ -2314,7 +2313,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2346,7 +2345,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
-Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2495,7 +2494,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2549,7 +2548,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
-Refer to https://api.slack.com/events/message for details of message events.
+Refer to https://docs.slack.dev/reference/events/message for details of message events.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2689,8 +2688,7 @@ Args
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2730,8 +2728,7 @@ Args
Refer to the following documents for details:
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2820,7 +2817,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -2857,7 +2854,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
-Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -2920,7 +2917,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -2938,7 +2935,7 @@ Args
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
For further information about AsyncWorkflowStep specific function arguments
@@ -2954,7 +2951,7 @@ Args
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -2976,7 +2973,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
Unlike others, this method doesn't behave as a decorator.
If you want to register a step from app by a decorator, use AsyncWorkflowStepBuilder's methods.
@@ -2991,7 +2988,7 @@
Args
# Pass Step to set up listeners
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
For further information about AsyncWorkflowStep specific function arguments
such as configure, update, complete, and fail,
@@ -3059,7 +3056,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.async_args`'s API document.
@@ -3100,7 +3097,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
-
Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.async_args's API document.
Args
@@ -3129,7 +3126,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3139,7 +3136,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details.
def view_submission(self,
constraints: str | Pattern,
matchers: Sequence[Callable[..., Awaitable[bool]]] | None = None,
middleware: Sequence[Callable | AsyncMiddleware] | None = None) ‑> Callable[..., Callable[..., Awaitable[BoltResponse | None]] | None]
@@ -3156,7 +3153,7 @@ Args
middleware: Optional[Sequence[Union[Callable, AsyncMiddleware]]] = None,
) -> Callable[..., Optional[Callable[..., Awaitable[Optional[BoltResponse]]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3166,7 +3163,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details.
def web_app(self, path: str = '/slack/events', port: int = 3000) ‑> aiohttp.web_app.Application
diff --git a/docs/static/api-docs/slack_bolt/index.html b/docs/static/api-docs/slack_bolt/index.html
index b5da1cb4a..6aae1d55a 100644
--- a/docs/static/api-docs/slack_bolt/index.html
+++ b/docs/static/api-docs/slack_bolt/index.html
@@ -815,7 +815,7 @@ Class variables
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -833,7 +833,7 @@ Class variables
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -850,7 +850,7 @@ Class variables
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -927,7 +927,7 @@ Class variables
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -965,7 +965,7 @@ Class variables
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1071,7 +1071,7 @@ Class variables
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1118,7 +1118,7 @@ Class variables
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1186,9 +1186,9 @@ Class variables
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1214,7 +1214,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1231,7 +1231,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1247,7 +1247,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1263,7 +1263,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1304,7 +1304,7 @@ Class variables
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1330,7 +1330,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1346,7 +1346,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1387,8 +1387,7 @@ Class variables
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1428,7 +1427,7 @@ Class variables
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1770,9 +1769,9 @@ Methods
# Pass a function to this method
app.action("approve_button")(update_message)
- * Refer to https://api.slack.com/reference/interaction-payloads/block-actions for actions in `blocks`.
- * Refer to https://api.slack.com/legacy/message-buttons for actions in `attachments`.
- * Refer to https://api.slack.com/dialogs for actions in dialogs.
+ * Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for actions in `blocks`.
+ * Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for actions in `attachments`.
+ * Refer to https://docs.slack.dev/legacy/legacy-dialogs for actions in dialogs.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1801,9 +1800,9 @@ Methods
app.action("approve_button")(update_message)
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -1846,7 +1845,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `interactive_message` action listener.
- Refer to https://api.slack.com/legacy/message-buttons for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -1856,7 +1855,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-messaging/legacy-message-buttons for details.
def block_action(self,
constraints: str | Pattern | Dict[str, str | Pattern],
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1873,7 +1872,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `block_actions` action listener.
- Refer to https://api.slack.com/reference/interaction-payloads/block-actions for details.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
"""
def __call__(*args, **kwargs):
@@ -1884,7 +1883,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/block_actions-payload for details.
def block_suggestion(self,
action_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -1938,7 +1937,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
- Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -1969,7 +1968,7 @@ Args
# Pass a function to this method
app.command("/echo")(repeat_text)
-Refer to https://api.slack.com/interactivity/slash-commands for details of Slash Commands.
+Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details of Slash Commands.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2032,7 +2031,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_cancellation` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2042,7 +2041,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_submission(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -2059,7 +2058,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_submission` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2069,7 +2068,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dialog_suggestion(self,
callback_id: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -2086,7 +2085,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `dialog_suggestion` listener.
- Refer to https://api.slack.com/dialogs for details."""
+ Refer to https://docs.slack.dev/legacy/legacy-dialogs for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -2096,7 +2095,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/legacy/legacy-dialogs for details.
def dispatch(self,
req: BoltRequest) ‑> BoltResponse
@@ -2322,7 +2321,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
- Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+ Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2354,7 +2353,7 @@ Args
# Pass a function to this method
app.event("team_join")(ask_for_introduction)
-Refer to https://api.slack.com/apis/connections/events-api for details of Events API.
+Refer to https://docs.slack.dev/apis/events-api/ for details of Events API.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2501,7 +2500,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
- Refer to https://api.slack.com/events/message for details of `message` events.
+ Refer to https://docs.slack.dev/reference/events/message for details of `message` events.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2552,7 +2551,7 @@ Args
# Pass a function to this method
app.message(":wave:")(say_hello)
-Refer to https://api.slack.com/events/message for details of message events.
+Refer to https://docs.slack.dev/reference/events/message for details of message events.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2695,8 +2694,7 @@ Args
Refer to the following documents for details:
- * https://api.slack.com/reference/block-kit/block-elements#external_select
- * https://api.slack.com/reference/block-kit/block-elements#external_multi_select
+ * https://docs.slack.dev/reference/block-kit/block-elements/multi-select-menu-element#external_multi_select
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2736,8 +2734,7 @@ Args
Refer to the following documents for details:
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2783,7 +2780,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
- Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+ Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2820,7 +2817,7 @@ Args
# Pass a function to this method
app.shortcut("open_modal")(open_modal)
-Refer to https://api.slack.com/interactivity/shortcuts for details about Shortcuts.
+Refer to https://docs.slack.dev/interactivity/implementing-shortcuts for details about Shortcuts.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -2906,7 +2903,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
@@ -2924,7 +2921,7 @@ Args
# Pass Step to set up listeners
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -2941,7 +2938,7 @@ Args
warnings.warn(
(
"Steps from apps for legacy workflows are now deprecated. "
- "Use new custom steps: https://api.slack.com/automation/functions/custom-bolt"
+ "Use new custom steps: https://docs.slack.dev/workflows/workflow-steps"
),
category=DeprecationWarning,
)
@@ -2963,7 +2960,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new step from app listener.
Unlike others, this method doesn't behave as a decorator.
If you want to register a step from app by a decorator, use WorkflowStepBuilder's methods.
@@ -2978,7 +2975,7 @@
Args
# Pass Step to set up listeners
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details of steps from apps.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details of steps from apps.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
For further information about WorkflowStep specific function arguments
such as configure, update, complete, and fail,
@@ -3049,7 +3046,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
- Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see `slack_bolt.kwargs_injection.args`'s API document.
@@ -3090,7 +3087,7 @@
Args
# Pass a function to this method
app.view("view_1")(handle_submission)
-
Refer to https://api.slack.com/reference/interaction-payloads/views for details of payloads.
+
Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload for details of payloads.
To learn available arguments for middleware/listeners, see slack_bolt.kwargs_injection.args's API document.
Args
@@ -3119,7 +3116,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_closed` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_closed for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3129,7 +3126,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_closed for details.
def view_submission(self,
constraints: str | Pattern,
matchers: Sequence[Callable[..., bool]] | None = None,
middleware: Sequence[Callable | Middleware] | None = None) ‑> Callable[..., Callable[..., BoltResponse | None] | None]
@@ -3146,7 +3143,7 @@ Args
middleware: Optional[Sequence[Union[Callable, Middleware]]] = None,
) -> Callable[..., Optional[Callable[..., Optional[BoltResponse]]]]:
"""Registers a new `view_submission` listener.
- Refer to https://api.slack.com/reference/interaction-payloads/views#view_submission for details."""
+ Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details."""
def __call__(*args, **kwargs):
functions = self._to_listener_functions(kwargs) if kwargs else list(args)
@@ -3156,7 +3153,7 @@ Args
return __call__
+Refer to https://docs.slack.dev/reference/interaction-payloads/view-interactions-payload#view_submission for details.
diff --git a/docs/static/api-docs/slack_bolt/listener_matcher/builtins.html b/docs/static/api-docs/slack_bolt/listener_matcher/builtins.html
index 1f9e3e677..29af67f6c 100644
--- a/docs/static/api-docs/slack_bolt/listener_matcher/builtins.html
+++ b/docs/static/api-docs/slack_bolt/listener_matcher/builtins.html
@@ -80,7 +80,7 @@
return dialog_submission(constraints["callback_id"], asyncio)
if action_type == "dialog_cancellation":
return dialog_cancellation(constraints["callback_id"], asyncio)
- # https://api.slack.com/workflows/steps
+ # https://docs.slack.dev/legacy/legacy-steps-from-apps/
if action_type == "workflow_step_edit":
return workflow_step_edit(constraints["callback_id"], asyncio)
diff --git a/docs/static/api-docs/slack_bolt/middleware/async_builtins.html b/docs/static/api-docs/slack_bolt/middleware/async_builtins.html
index d25d27a92..eb46581bb 100644
--- a/docs/static/api-docs/slack_bolt/middleware/async_builtins.html
+++ b/docs/static/api-docs/slack_bolt/middleware/async_builtins.html
@@ -205,7 +205,7 @@ Inherited members
"""Verifies an incoming request by checking the validity of
`x-slack-signature`, `x-slack-request-timestamp`, and its body data.
- Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+ Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
"""
async def async_process(
@@ -232,10 +232,10 @@ Inherited members
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args
signing_secret
@@ -293,12 +293,12 @@ Inherited members
@@ -352,7 +352,7 @@ Inherited members
A middleware can process request data before other middleware and listener functions.
Handles url_verification requests.
-
Refer to https://api.slack.com/events/url_verification for details.
+
Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args
base_logger
diff --git a/docs/static/api-docs/slack_bolt/middleware/index.html b/docs/static/api-docs/slack_bolt/middleware/index.html
index abbaa52df..7c8daecd1 100644
--- a/docs/static/api-docs/slack_bolt/middleware/index.html
+++ b/docs/static/api-docs/slack_bolt/middleware/index.html
@@ -639,7 +639,7 @@ Inherited members
"""Verifies an incoming request by checking the validity of
`x-slack-signature`, `x-slack-request-timestamp`, and its body data.
- Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+ Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args:
signing_secret: The signing secret
@@ -688,7 +688,7 @@ Inherited members
A middleware can process request data before other middleware and listener functions.
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args
signing_secret
@@ -834,11 +834,11 @@ Inherited members
base_logger: Optional[Logger] = None,
):
"""Handles `ssl_check` requests.
- Refer to https://api.slack.com/interactivity/slash-commands for details.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details.
Args:
verification_token: The verification token to check
- (optional as it's already deprecated - https://api.slack.com/authentication/verifying-requests-from-slack#verification_token_deprecation)
+ (optional as it's already deprecated - https://docs.slack.dev/authentication/verifying-requests-from-slack#verification_token_deprecation)
base_logger: The base logger
""" # noqa: E501
self.verification_token = verification_token
@@ -880,12 +880,12 @@ Inherited members
@@ -931,7 +931,7 @@ Inherited members
def __init__(self, base_logger: Optional[Logger] = None):
"""Handles url_verification requests.
- Refer to https://api.slack.com/events/url_verification for details.
+ Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args:
base_logger: The base logger
@@ -965,7 +965,7 @@ Inherited members
A middleware can process request data before other middleware and listener functions.
Handles url_verification requests.
-
Refer to https://api.slack.com/events/url_verification for details.
+
Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args
base_logger
diff --git a/docs/static/api-docs/slack_bolt/middleware/request_verification/async_request_verification.html b/docs/static/api-docs/slack_bolt/middleware/request_verification/async_request_verification.html
index e5d368b8b..dfa1b22bf 100644
--- a/docs/static/api-docs/slack_bolt/middleware/request_verification/async_request_verification.html
+++ b/docs/static/api-docs/slack_bolt/middleware/request_verification/async_request_verification.html
@@ -59,7 +59,7 @@
"""Verifies an incoming request by checking the validity of
`x-slack-signature`, `x-slack-request-timestamp`, and its body data.
- Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+ Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
"""
async def async_process(
@@ -86,10 +86,10 @@
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args
signing_secret
diff --git a/docs/static/api-docs/slack_bolt/middleware/request_verification/index.html b/docs/static/api-docs/slack_bolt/middleware/request_verification/index.html
index 228076e0d..c841a74dc 100644
--- a/docs/static/api-docs/slack_bolt/middleware/request_verification/index.html
+++ b/docs/static/api-docs/slack_bolt/middleware/request_verification/index.html
@@ -71,7 +71,7 @@
"""Verifies an incoming request by checking the validity of
`x-slack-signature`, `x-slack-request-timestamp`, and its body data.
- Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+ Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args:
signing_secret: The signing secret
@@ -120,7 +120,7 @@
A middleware can process request data before other middleware and listener functions.
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args
signing_secret
diff --git a/docs/static/api-docs/slack_bolt/middleware/request_verification/request_verification.html b/docs/static/api-docs/slack_bolt/middleware/request_verification/request_verification.html
index 675aa4cdd..4c778807a 100644
--- a/docs/static/api-docs/slack_bolt/middleware/request_verification/request_verification.html
+++ b/docs/static/api-docs/slack_bolt/middleware/request_verification/request_verification.html
@@ -60,7 +60,7 @@
"""Verifies an incoming request by checking the validity of
`x-slack-signature`, `x-slack-request-timestamp`, and its body data.
- Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+ Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args:
signing_secret: The signing secret
@@ -109,7 +109,7 @@
A middleware can process request data before other middleware and listener functions.
Verifies an incoming request by checking the validity of
x-slack-signature, x-slack-request-timestamp, and its body data.
-
Refer to https://api.slack.com/authentication/verifying-requests-from-slack for details.
+
Refer to https://docs.slack.dev/authentication/verifying-requests-from-slack for details.
Args
signing_secret
diff --git a/docs/static/api-docs/slack_bolt/middleware/ssl_check/async_ssl_check.html b/docs/static/api-docs/slack_bolt/middleware/ssl_check/async_ssl_check.html
index d19f77eba..a8d6bbfcd 100644
--- a/docs/static/api-docs/slack_bolt/middleware/ssl_check/async_ssl_check.html
+++ b/docs/static/api-docs/slack_bolt/middleware/ssl_check/async_ssl_check.html
@@ -75,12 +75,12 @@
diff --git a/docs/static/api-docs/slack_bolt/middleware/ssl_check/index.html b/docs/static/api-docs/slack_bolt/middleware/ssl_check/index.html
index e2d67d334..fd800326a 100644
--- a/docs/static/api-docs/slack_bolt/middleware/ssl_check/index.html
+++ b/docs/static/api-docs/slack_bolt/middleware/ssl_check/index.html
@@ -76,11 +76,11 @@
base_logger: Optional[Logger] = None,
):
"""Handles `ssl_check` requests.
- Refer to https://api.slack.com/interactivity/slash-commands for details.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details.
Args:
verification_token: The verification token to check
- (optional as it's already deprecated - https://api.slack.com/authentication/verifying-requests-from-slack#verification_token_deprecation)
+ (optional as it's already deprecated - https://docs.slack.dev/authentication/verifying-requests-from-slack#verification_token_deprecation)
base_logger: The base logger
""" # noqa: E501
self.verification_token = verification_token
@@ -122,12 +122,12 @@
diff --git a/docs/static/api-docs/slack_bolt/middleware/ssl_check/ssl_check.html b/docs/static/api-docs/slack_bolt/middleware/ssl_check/ssl_check.html
index d8985697f..5d34eb280 100644
--- a/docs/static/api-docs/slack_bolt/middleware/ssl_check/ssl_check.html
+++ b/docs/static/api-docs/slack_bolt/middleware/ssl_check/ssl_check.html
@@ -65,11 +65,11 @@
base_logger: Optional[Logger] = None,
):
"""Handles `ssl_check` requests.
- Refer to https://api.slack.com/interactivity/slash-commands for details.
+ Refer to https://docs.slack.dev/interactivity/implementing-slash-commands for details.
Args:
verification_token: The verification token to check
- (optional as it's already deprecated - https://api.slack.com/authentication/verifying-requests-from-slack#verification_token_deprecation)
+ (optional as it's already deprecated - https://docs.slack.dev/authentication/verifying-requests-from-slack#verification_token_deprecation)
base_logger: The base logger
""" # noqa: E501
self.verification_token = verification_token
@@ -111,12 +111,12 @@
diff --git a/docs/static/api-docs/slack_bolt/middleware/url_verification/async_url_verification.html b/docs/static/api-docs/slack_bolt/middleware/url_verification/async_url_verification.html
index 44bcaee1f..460aecf4d 100644
--- a/docs/static/api-docs/slack_bolt/middleware/url_verification/async_url_verification.html
+++ b/docs/static/api-docs/slack_bolt/middleware/url_verification/async_url_verification.html
@@ -73,7 +73,7 @@
A middleware can process request data before other middleware and listener functions.
Handles url_verification requests.
-
Refer to https://api.slack.com/events/url_verification for details.
+
Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args
base_logger
diff --git a/docs/static/api-docs/slack_bolt/middleware/url_verification/index.html b/docs/static/api-docs/slack_bolt/middleware/url_verification/index.html
index ff0720cf8..e3e98f95f 100644
--- a/docs/static/api-docs/slack_bolt/middleware/url_verification/index.html
+++ b/docs/static/api-docs/slack_bolt/middleware/url_verification/index.html
@@ -70,7 +70,7 @@
def __init__(self, base_logger: Optional[Logger] = None):
"""Handles url_verification requests.
- Refer to https://api.slack.com/events/url_verification for details.
+ Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args:
base_logger: The base logger
@@ -104,7 +104,7 @@
A middleware can process request data before other middleware and listener functions.
Handles url_verification requests.
-
Refer to https://api.slack.com/events/url_verification for details.
+
Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args
base_logger
diff --git a/docs/static/api-docs/slack_bolt/middleware/url_verification/url_verification.html b/docs/static/api-docs/slack_bolt/middleware/url_verification/url_verification.html
index 04ad520e6..32dc64d49 100644
--- a/docs/static/api-docs/slack_bolt/middleware/url_verification/url_verification.html
+++ b/docs/static/api-docs/slack_bolt/middleware/url_verification/url_verification.html
@@ -59,7 +59,7 @@
def __init__(self, base_logger: Optional[Logger] = None):
"""Handles url_verification requests.
- Refer to https://api.slack.com/events/url_verification for details.
+ Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args:
base_logger: The base logger
@@ -93,7 +93,7 @@
A middleware can process request data before other middleware and listener functions.
Handles url_verification requests.
-
Refer to https://api.slack.com/events/url_verification for details.
+
Refer to https://docs.slack.dev/reference/events/url_verification for details.
Args
base_logger
diff --git a/docs/static/api-docs/slack_bolt/request/index.html b/docs/static/api-docs/slack_bolt/request/index.html
index 8e00109c1..61908105d 100644
--- a/docs/static/api-docs/slack_bolt/request/index.html
+++ b/docs/static/api-docs/slack_bolt/request/index.html
@@ -37,7 +37,7 @@ Module slack_bolt.request
diff --git a/docs/static/api-docs/slack_bolt/response/index.html b/docs/static/api-docs/slack_bolt/response/index.html
index 01c05fc01..bc86a6770 100644
--- a/docs/static/api-docs/slack_bolt/response/index.html
+++ b/docs/static/api-docs/slack_bolt/response/index.html
@@ -39,7 +39,7 @@ Module slack_bolt.response
This interface represents Bolt's synchronous response to Slack.
In Socket Mode, the response data can be transformed to a WebSocket message. In the HTTP endpoint mode,
the response data becomes an HTTP response data.
-Refer to https://api.slack.com/apis/connections for the two types of connections.
+Refer to https://docs.slack.dev/apis/events-api/ for the two types of connections.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/async_step.html b/docs/static/api-docs/slack_bolt/workflows/step/async_step.html
index d0b91fb53..0c08a9707 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/async_step.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/async_step.html
@@ -78,7 +78,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Args:
callback_id: The callback_id for this step from app
@@ -124,7 +124,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
"""
return AsyncWorkflowStepBuilder(callback_id, base_logger=base_logger)
@@ -200,7 +200,7 @@
@@ -267,7 +267,7 @@
Static methods
class AsyncWorkflowStepBuilder:
"""Steps from apps
- Refer to https://api.slack.com/workflows/steps for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
callback_id: Union[str, Pattern]
@@ -285,7 +285,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
This builder is supposed to be used as decorator.
@@ -327,7 +327,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
@@ -380,7 +380,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
@@ -433,7 +433,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
@@ -480,7 +480,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
@@ -555,10 +555,10 @@ Static methods
return _middleware
Steps from apps
-Refer to https://api.slack.com/workflows/steps for details.
+Refer to
https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
This builder is supposed to be used as decorator.
my_step = AsyncWorkflowStep.builder("my_step")
@my_step.edit
@@ -659,7 +659,7 @@ Methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
@@ -685,7 +685,7 @@ Methods
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
Returns
@@ -709,7 +709,7 @@
Returns
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
@@ -754,7 +754,7 @@
Returns
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
You can use this method as decorator as well.
@my_step.edit
@@ -799,7 +799,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
@@ -844,7 +844,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
You can use this method as decorator as well.
@my_step.execute
@@ -889,7 +889,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
@@ -934,7 +934,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
You can use this method as decorator as well.
@my_step.save
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/index.html b/docs/static/api-docs/slack_bolt/workflows/step/index.html
index bc15d5a1f..ce29a210f 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/index.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/index.html
@@ -103,7 +103,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
- Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -135,7 +135,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
-Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
class Configure
@@ -174,7 +174,7 @@
)
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, callback_id: str, client: WebClient, body: dict):
@@ -219,7 +219,7 @@
)
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
class Fail
@@ -248,7 +248,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -281,7 +281,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+Refer to
https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
class Update
@@ -329,7 +329,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.updateStep for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -377,7 +377,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.updateStep for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
class WorkflowStep
@@ -411,7 +411,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Args:
callback_id: The callback_id for this step from app
@@ -453,7 +453,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
"""
return WorkflowStepBuilder(
callback_id,
@@ -546,7 +546,7 @@
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/step.html b/docs/static/api-docs/slack_bolt/workflows/step/step.html
index c1500beaf..efaaad899 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/step.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/step.html
@@ -78,7 +78,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Args:
callback_id: The callback_id for this step from app
@@ -120,7 +120,7 @@
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
"""
return WorkflowStepBuilder(
callback_id,
@@ -213,7 +213,7 @@
@@ -280,7 +280,7 @@
Static methods
class WorkflowStepBuilder:
"""Steps from apps
- Refer to https://api.slack.com/workflows/steps for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
callback_id: Union[str, Pattern]
@@ -298,7 +298,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
This builder is supposed to be used as decorator.
@@ -340,7 +340,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
@@ -394,7 +394,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
@@ -447,7 +447,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
@@ -494,7 +494,7 @@ Static methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
@@ -584,10 +584,10 @@ Static methods
return _middleware
Steps from apps
-Refer to https://api.slack.com/workflows/steps for details.
+Refer to
https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
This builder is supposed to be used as decorator.
my_step = WorkflowStep.builder("my_step")
@my_step.edit
@@ -703,7 +703,7 @@ Methods
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
@@ -729,7 +729,7 @@ Methods
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Constructs a WorkflowStep object. This method may raise an exception
if the builder doesn't have enough configurations to build the object.
Returns
@@ -753,7 +753,7 @@
Returns
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
@@ -799,7 +799,7 @@
Returns
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new edit listener with details.
You can use this method as decorator as well.
@my_step.edit
@@ -844,7 +844,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
@@ -889,7 +889,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new execute listener with details.
You can use this method as decorator as well.
@my_step.execute
@@ -934,7 +934,7 @@ Args
"""
Deprecated:
Steps from apps for legacy workflows are now deprecated.
- Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+ Use new custom steps: https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
@@ -979,7 +979,7 @@ Args
Deprecated
Steps from apps for legacy workflows are now deprecated.
-Use new custom steps: https://api.slack.com/automation/functions/custom-bolt
+Use new custom steps:
https://docs.slack.dev/workflows/workflow-steps
Registers a new save listener with details.
You can use this method as decorator as well.
@my_step.save
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_complete.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_complete.html
index 7dc7744a7..8a8790900 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_complete.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_complete.html
@@ -76,7 +76,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
- Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: AsyncWebClient, body: dict):
@@ -108,7 +108,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
-Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_configure.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_configure.html
index 1e0395e92..3151e71bd 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_configure.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_configure.html
@@ -83,7 +83,7 @@
)
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, callback_id: str, client: AsyncWebClient, body: dict):
@@ -131,7 +131,7 @@
)
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details.
+
Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_fail.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_fail.html
index 683174686..1206c45a6 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_fail.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_fail.html
@@ -73,7 +73,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: AsyncWebClient, body: dict):
@@ -106,7 +106,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+Refer to
https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_update.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_update.html
index 8b8282fae..0d1cad162 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_update.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/async_update.html
@@ -92,7 +92,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.updateStep for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: AsyncWebClient, body: dict):
@@ -140,7 +140,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.updateStep for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/complete.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/complete.html
index 685a3bd63..c15d51e9c 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/complete.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/complete.html
@@ -76,7 +76,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
- Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -108,7 +108,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepCompleted API method.
-Refer to https://api.slack.com/methods/workflows.stepCompleted for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/configure.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/configure.html
index 8199f9ea4..2c1aeadbf 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/configure.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/configure.html
@@ -83,7 +83,7 @@
)
app.step(ws)
- Refer to https://api.slack.com/workflows/steps for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, callback_id: str, client: WebClient, body: dict):
@@ -128,7 +128,7 @@
)
app.step(ws)
-
Refer to https://api.slack.com/workflows/steps for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/fail.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/fail.html
index 071bbbfed..4c4091fd5 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/fail.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/fail.html
@@ -73,7 +73,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -106,7 +106,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.stepFailed for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
diff --git a/docs/static/api-docs/slack_bolt/workflows/step/utilities/update.html b/docs/static/api-docs/slack_bolt/workflows/step/utilities/update.html
index f24c07836..c93fc7f21 100644
--- a/docs/static/api-docs/slack_bolt/workflows/step/utilities/update.html
+++ b/docs/static/api-docs/slack_bolt/workflows/step/utilities/update.html
@@ -92,7 +92,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
- Refer to https://api.slack.com/methods/workflows.updateStep for details.
+ Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.
"""
def __init__(self, *, client: WebClient, body: dict):
@@ -140,7 +140,7 @@
app.step(ws)
This utility is a thin wrapper of workflows.stepFailed API method.
-Refer to https://api.slack.com/methods/workflows.updateStep for details.
+Refer to https://docs.slack.dev/legacy/legacy-steps-from-apps/ for details.