Slack
Connect a chatbot to a Slack app so people can talk to it in your Slack workspace.
Connect a chatbot to Slack to answer your team's questions, run internal requests, or support customers in a shared Slack workspace. You create a Slack app, give Buni.ai its bot token and signing secret, and point the app's events at your project.
Set up the connection
Create a Slack app
Go to api.slack.com/apps and select Create New App › From scratch. Pick the workspace to install it in.
Add bot scopes and install the app
Under OAuth & Permissions, add the Bot Token Scopes your bot needs to send and read messages: at least chat:write, plus the history scope for each kind of conversation it should hear, such as im:history for direct messages or channels:history for public channels. Add files:read too if the bot should answer audio clips (see Voice notes). Then select Install to Workspace.
Copy the Bot User OAuth Token (it starts with xoxb-). From Basic Information, copy the Signing Secret and the App ID.
Add Slack to the chatbot
Open the chatbot's trigger node and go to the Platforms tab. In Messaging Platforms, select Slack. Under Platform Configuration, fill in the fields below. Store the token and signing secret as credentials.
Publish and copy the webhook URL
Publish the project and copy Your Bot Webhook URL from the Platform Setup dialog, or later from Settings›General›Bot Webhook Configuration.
Turn on event subscriptions
In your Slack app, open Event Subscriptions, turn Enable Events on and paste the Bot Webhook URL as the Request URL. Slack sends a verification challenge, which Buni.ai answers automatically, and marks the URL Verified.
Under Subscribe to bot events, add the message events that match your scopes, such as message.im for direct messages and message.channels for public channels. Save your changes, and reinstall the app if Slack asks you to.
Turn on interactivity
If the bot sends buttons, open Interactivity & Shortcuts, turn Interactivity on and paste the same Bot Webhook URL as the Request URL. Slack sends button taps there; without it, every tap shows an error in Slack.


Fields
| Field | Required | What to enter |
|---|---|---|
| Bot User OAuth Token | Yes | The xoxb- token from OAuth & Permissions. |
| Signing Secret | Yes | From your app's Basic Information page. Used to verify requests. |
| App ID | Yes | From your app's Basic Information page. |
| Webhook URL | No | Filled in when the project is deployed. |
How requests are verified
Every request from Slack carries X-Slack-Signature and X-Slack-Request-Timestamp headers. Buni.ai checks the signature with your Signing Secret and rejects requests that don't match, or that are more than five minutes old. Messages posted by bots, including your own, are ignored, so the bot never answers itself.
Slack has no typing indicator for bots, so none is shown while the bot or a live agent is replying.
Troubleshooting
Related
Messenger and Instagram
Connect a chatbot to Facebook Messenger and Instagram direct messages through your Meta app.
Voice notes
Chatbots answer the voice notes customers send on any channel. Each note is transcribed and answered like a typed message, can answer a form's file question, and can be answered in a voice. Agents can play it in the inbox.