Skip to content

Commit 7633725

Browse files
docs: changes URL (#1160)
1 parent bf64edf commit 7633725

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+71
-71
lines changed

README.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010
<br>
1111
<a href="https://pypi.org/project/slack-bolt/">
1212
<img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/slack-bolt.svg"></a>
13-
<a href="https://slack.dev/bolt-python/">
13+
<a href="https://tools.slack.dev/bolt-python/">
1414
<img alt="Documentation" src="https://img.shields.io/badge/dev-docs-yellow"></a>
1515
</p>
1616

17-
A Python framework to build Slack apps in a flash with the latest platform features. Read the [getting started guide](https://slack.dev/bolt-python/getting-started) and look at our [code examples](https://github.com/slackapi/bolt-python/tree/main/examples) to learn how to build apps using Bolt. The Python module documents are available [here](https://slack.dev/bolt-python/api-docs/slack_bolt/).
17+
A Python framework to build Slack apps in a flash with the latest platform features. Read the [getting started guide](https://tools.slack.dev/bolt-python/getting-started) and look at our [code examples](https://github.com/slackapi/bolt-python/tree/main/examples) to learn how to build apps using Bolt. The Python module documents are available [here](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/).
1818

1919
## Setup
2020

@@ -140,10 +140,10 @@ Most of the app's functionality will be inside listener functions (the `fn` para
140140
| `body` | Dictionary that contains the entire body of the request (superset of `payload`). Some accessory data is only available outside of the payload (such as `trigger_id` and `authorizations`).
141141
| `payload` | Contents of the incoming event. The payload structure depends on the listener. For example, for an Events API event, `payload` will be the [event type structure](https://api.slack.com/events-api#event_type_structure). For a block action, it will be the action from within the `actions` list. The `payload` dictionary is also accessible via the alias corresponding to the listener (`message`, `event`, `action`, `shortcut`, `view`, `command`, or `options`). For example, if you were building a `message()` listener, you could use the `payload` and `message` arguments interchangably. **An easy way to understand what's in a payload is to log it**. |
142142
| `context` | Event context. This dictionary contains data about the event and app, such as the `botId`. Middleware can add additional context before the event is passed to listeners.
143-
| `ack` | Function that **must** be called to acknowledge that your app received the incoming event. `ack` exists for all actions, shortcuts, view submissions, slash command and options requests. `ack` returns a promise that resolves when complete. Read more in [Acknowledging events](https://slack.dev/bolt-python/concepts/acknowledge).
143+
| `ack` | Function that **must** be called to acknowledge that your app received the incoming event. `ack` exists for all actions, shortcuts, view submissions, slash command and options requests. `ack` returns a promise that resolves when complete. Read more in [Acknowledging events](https://tools.slack.dev/bolt-python/concepts/acknowledge).
144144
| `respond` | Utility function that responds to incoming events **if** it contains a `response_url` (shortcuts, actions, and slash commands).
145145
| `say` | Utility function to send a message to the channel associated with the incoming event. This argument is only available when the listener is triggered for events that contain a `channel_id` (the most common being `message` events). `say` accepts simple strings (for plain-text messages) and dictionaries (for messages containing blocks).
146-
| `client` | Web API client that uses the token associated with the event. For single-workspace installations, the token is provided to the constructor. For multi-workspace installations, the token is returned by using [the OAuth library](https://slack.dev/bolt-python/concepts/authenticating-oauth), or manually using the `authorize` function.
146+
| `client` | Web API client that uses the token associated with the event. For single-workspace installations, the token is provided to the constructor. For multi-workspace installations, the token is returned by using [the OAuth library](https://tools.slack.dev/bolt-python/concepts/authenticating-oauth), or manually using the `authorize` function.
147147
| `logger` | The built-in [`logging.Logger`](https://docs.python.org/3/library/logging.html) instance you can use in middleware/listeners.
148148
| `complete` | Utility function used to signal the successful completion of a custom step execution. This tells Slack to proceed with the next steps in the workflow. This argument is only available with the `.function` and `.action` listener when handling custom workflow step executions.
149149
| `fail` | Utility function used to signal that a custom step failed to complete. This tells Slack to stop the workflow execution. This argument is only available with the `.function` and `.action` listener when handling custom workflow step executions.
@@ -192,7 +192,7 @@ Apps can be run the same way as the syncronous example above. If you'd prefer an
192192

193193
## Getting Help
194194

195-
[The documentation](https://slack.dev/bolt-python) has more information on basic and advanced concepts for Bolt for Python. Also, all the Python module documents of this library are available [here](https://slack.dev/bolt-python/api-docs/slack_bolt/).
195+
[The documentation](https://tools.slack.dev/bolt-python) has more information on basic and advanced concepts for Bolt for Python. Also, all the Python module documents of this library are available [here](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/).
196196

197197
If you otherwise get stuck, we're here to help. The following are the best ways to get assistance working through your issue:
198198

docs/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# slack.dev/bolt-python
1+
# tools.slack.dev/bolt-python
22

33
This website is built using [Docusaurus](https://docusaurus.io/). 'Tis cool.
44

docs/content/advanced/global-middleware.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Both global and listener middleware must call `next()` to pass control of the ex
1111

1212

1313

14-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
14+
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.
1515
```python
1616
@app.use
1717
def auth_acme(client, context, logger, payload, next):

docs/content/advanced/listener-middleware.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Listener middleware is only run for the listener in which it's passed. You can p
88

99
If your listener middleware is a quite simple one, you can use a listener matcher, which returns `bool` value (`True` for proceeding) instead of requiring `next()` method call.
1010

11-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
11+
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.
1212

1313
```python
1414
# Listener middleware which filters out messages with "bot_message" subtype

docs/content/basic/acknowledge.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ When working in a FaaS / serverless environment, our guidelines for when to `ack
1616

1717
:::
1818

19-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
19+
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.
2020
```python
2121
# Example of responding to an external_select options request
2222
@app.options("menu_selection")

docs/content/basic/action-listening.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Actions can be filtered on an `action_id` of type `str` or `re.Pattern`. `action
1010

1111
You'll notice in all `action()` examples, `ack()` is used. It is required to call the `ack()` function within an action listener to acknowledge that the request was received from Slack. This is discussed in the [acknowledging requests section](/concepts/acknowledge).
1212

13-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
13+
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.
1414
```python
1515
# Your listener will be called every time a block element with the action_id "approve_button" is triggered
1616
@app.action("approve_button")

docs/content/basic/action-respond.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ There are two main ways to respond to actions. The first (and most common) way i
88

99
The second way to respond to actions is using `respond()`, which is a utility to use the `response_url` associated with the action.
1010

11-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
11+
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.
1212
```python
1313
# Your listener will be called every time an interactive component with the action_id “approve_button” is triggered
1414
@app.action("approve_button")

docs/content/basic/app-home.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ slug: /concepts/app-home
88

99
You can subscribe to the <a href="https://api.slack.com/events/app_home_opened">`app_home_opened`</a> event to listen for when users open your App Home.
1010

11-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
11+
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.
1212
```python
1313
@app.event("app_home_opened")
1414
def update_home_tab(client, event, logger):

docs/content/basic/authenticating-oauth.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ lang: en
44
slug: /concepts/authenticating-oauth
55
---
66

7-
Slack apps installed on multiple workspaces will need to implement OAuth, then store installation information (like access tokens) securely. By providing `client_id`, `client_secret`, `scopes`, `installation_store`, and `state_store` when initializing App, Bolt for Python will handle the work of setting up OAuth routes and verifying state. If you're implementing a custom adapter, you can make use of our [OAuth library](https://slack.dev/python-slack-sdk/oauth/), which is what Bolt for Python uses under the hood.
7+
Slack apps installed on multiple workspaces will need to implement OAuth, then store installation information (like access tokens) securely. By providing `client_id`, `client_secret`, `scopes`, `installation_store`, and `state_store` when initializing App, Bolt for Python will handle the work of setting up OAuth routes and verifying state. If you're implementing a custom adapter, you can make use of our [OAuth library](https://tools.slack.dev/python-slack-sdk/oauth/), which is what Bolt for Python uses under the hood.
88

99
Bolt for Python will create a **Redirect URL** `slack/oauth_redirect`, which Slack uses to redirect users after they complete your app's installation flow. You will need to add this **Redirect URL** in your app configuration settings under **OAuth and Permissions**. This path can be configured in the `OAuthSettings` argument described below.
1010

docs/content/basic/commands.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ There are two ways to respond to slash commands. The first way is to use `say()`
1212

1313
When setting up commands within your app configuration, you'll append `/slack/events` to your request URL.
1414

15-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
15+
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.
1616
```python
1717
# The echo command simply echoes on command
1818
@app.command("/echo")

docs/content/basic/custom-steps.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Your app can use the `function()` method to listen to incoming [custom step requ
1111

1212
You can reference your custom step's inputs using the `inputs` listener argument of type `dict`.
1313

14-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn about the available listener arguments.
14+
Refer to [the module document](https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn about the available listener arguments.
1515

1616
```python
1717
# This sample custom step formats an input and outputs it

docs/content/basic/event-listening.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ You can listen to [any Events API event](https://api.slack.com/events) using the
88

99
The `event()` method requires an `eventType` of type `str`.
1010

11-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
11+
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.
1212
```python
1313
# When a user joins the workspace, send a message in a predefined channel asking them to introduce themselves
1414
@app.event("team_join")

docs/content/basic/message-listening.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ To listen to messages that [your app has access to receive](https://api.slack.co
1010

1111
:::info
1212

13-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
13+
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.
1414

1515
:::
1616

docs/content/basic/message-sending.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Within your listener function, `say()` is available whenever there is an associa
88

99
In the case that you'd like to send a message outside of a listener or you want to do something more advanced (like handle specific errors), you can call `client.chat_postMessage` [using the client attached to your Bolt instance](/concepts/web-api).
1010

11-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
11+
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.
1212
```python
1313
# Listens for messages containing "knock knock" and responds with an italicized "who's there?"
1414
@app.message("knock knock")

docs/content/basic/opening-modals.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Your app receives `trigger_id`s in payloads sent to your Request URL that are tr
1010

1111
Read more about modal composition in the [API documentation](https://api.slack.com/surfaces/modals/using#composing_views).
1212

13-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
13+
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.
1414

1515
```python
1616
# Listen for a shortcut invocation

docs/content/basic/options.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ While it's recommended to use `action_id` for `external_select` menus, dialogs d
1111

1212
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.
1313

14-
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://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) - be sure to check them out!
14+
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!
1515

16-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
16+
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.
1717
```python
1818
# Example of responding to an external_select options request
1919
@app.options("external_action")

docs/content/basic/shortcuts.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ When setting up shortcuts within your app configuration, as with other URLs, you
1616

1717
⚠️ 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.
1818

19-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
19+
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.
2020
```python
2121
# The open_modal shortcut listens to a shortcut with the callback_id "open_modal"
2222
@app.shortcut("open_modal")

docs/content/basic/updating-pushing-views.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ To push a new view onto the view stack, you can use the built-in client to call
1616

1717
Learn more about updating and pushing views in our <a href="https://api.slack.com/surfaces/modals/using#modifying">API documentation</a>.
1818

19-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
19+
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.
2020
```python
2121
# Listen for a button invocation with action_id `button_abc` (assume it's inside of a modal)
2222
@app.action("button_abc")

docs/content/basic/view_submissions.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ def handle_view_closed(ack, body, logger):
6666

6767

6868

69-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
69+
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.
7070
```python
7171
# Handle a view_submission request
7272
@app.view("view_1")

docs/content/basic/web-api.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ lang: en
44
slug: /concepts/web-api
55
---
66

7-
You can call [any Web API method](https://api.slack.com/methods) using the [`WebClient`](https://slack.dev/python-slack-sdk/basic_usage.html) 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.
7+
You can call [any Web API method](https://api.slack.com/methods) using the [`WebClient`](https://tools.slack.dev/python-slack-sdk/basic_usage.html) 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.
88

99
The token used to initialize Bolt can be found in the `context` object, which is required to call most Web API methods.
1010

1111
:::info
1212

13-
Refer to [the module document](https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html) to learn the available listener arguments.
13+
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.
1414

1515
:::
1616

docs/content/getting-started.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ app = App(token=os.environ.get("SLACK_BOT_TOKEN"))
184184

185185
# Listens to incoming messages that contain "hello"
186186
# To learn available listener arguments,
187-
# visit https://slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html
187+
# visit https://tools.slack.dev/bolt-python/api-docs/slack_bolt/kwargs_injection/args.html
188188
@app.message("hello")
189189
def message_hello(message, say):
190190
# say() sends a message to the channel where the event was triggered

0 commit comments

Comments
 (0)