Slack messaging channel
Use this guide to deploy an agent to Slack.
Before you start
Make sure you have:
- A Slack workspace where you can create apps
- A live agent with an AI model connected
- Access to Agents -> your agent -> Deployment
Configure Slack in Budibase
- Open your agent in Agents
- Go to Deployment
- In Messaging channels, click Manage for Slack
- Enter:
- Bot token
- Signing secret
- Idle timeout (minutes) (optional)
- Click Save channel
- Copy the generated Messaging endpoint URL
- (Optional) Toggle File attachments to Enabled. This requires a
GEMINI_API_KEYto be set in your Budibase server environment.
Configure your Slack app
1. Create or update app
Create a Slack app for your workspace, or use an existing one.
2. Add bot scopes
In OAuth & Permissions, add:
chat:writeapp_mentions:readim:historychannels:historygroups:historympim:historyusers:readfiles:read
3. Configure event subscriptions
- Open Event Subscriptions
- Enable events
- Set Request URL to the Budibase Messaging endpoint URL
- Subscribe to bot events:
app_mentionmessage.immessage.channelsmessage.groupsmessage.mpim
4. Reinstall app
Reinstall the app to your workspace after changing scopes or events.
5. Invite bot
Invite the bot to channels you want it to serve, for example:
/invite @your-bot
Enable and verify
- In Budibase Deployment, toggle Slack to Enabled
- In Slack, mention the bot in a channel or send a DM
- Run
/linkand complete the Budibase account linking flow - Run
/unlinkto disconnect your Budibase account - Send a message and confirm the agent responds
Slack threads are used as conversation boundaries. In a channel thread, you must mention the agent in each message you want it to process. In direct messages (DMs), the agent will respond to every message automatically.
If you send a message before linking, Budibase prompts you privately to complete account linking first.
Slash commands
/ask <message>: Continue the current conversation./new <message>: Start a new conversation, clearing the message and file history for the current thread./link: Link your Slack user to your Budibase account./unlink: Unlink your accounts.
Working with documents (RAG)
When your agent uses documents to answer questions (Retrieval-Augmented Generation), Budibase can provide direct download links to those sources within Slack.
Source citations
In personal conversations (DMs), your agent will automatically append a list of the specific document sources it used to generate its reply. Each source includes a direct, authenticated link to download the file.
To ensure privacy and security, source download links are not provided when the agent is chatting in a channel or group conversation.
Conversation attachments
If File attachments is enabled in the agent deployment settings, users can upload files directly in Slack conversations. The agent will process these files and use their content to answer subsequent questions in that thread.
- Supported formats: PDF, CSV, TXT, Markdown, JSON, YAML, and XML.
- Limits: Up to 3 files per conversation, maximum 20MB per file.
- Clearing files: Use the
/newcommand to clear attached files and start a fresh conversation.
Troubleshooting
Not configuredin Budibase: confirm both Bot token and Signing secret are saved.- Slack events not reaching Budibase: re-check Request URL and reinstall the app after scope/event changes.
- Bot does not respond in channels: confirm the bot was invited to that channel.
- Bot prompts to link before answering: run
/linkin Slack and complete the link handoff. - Webhook route errors: use the exact Budibase-generated endpoint URL from Deployment.
- File processing fails: ensure
GEMINI_API_KEYis correctly configured and the Slack app has thefiles:readscope.
Related guides
Updated 2 days ago