Slack
The Slack channel allows your assistant to receive and respond to direct messages in Slack. When configured:
- Users can DM the bot in Slack to start a conversation
- The assistant processes the message and replies in-thread
- Threaded replies are maintained automatically
- File attachments (images) are supported
Configuration
| Field | Description |
|---|---|
| Bot User OAuth Token | Your Slack app’s bot token (starts with xoxb-) |
| Signing Secret | Your Slack app’s signing secret for verifying webhook requests |
Setting Up a Slack App
- Go to api.slack.com/apps and click Create New App then From scratch
- Give the app a name (e.g. your assistant’s name) and select your workspace
- Under OAuth & Permissions, scroll to Bot Token Scopes and add:
chat:write— Send messagesusers:read— Look up user profilesusers:read.email— Read user email addressesim:history— Read DM message history
- Click Install to Workspace and authorize the app
- Copy the Bot User OAuth Token (starts with
xoxb-) from the OAuth & Permissions page - Under Basic Information, copy the Signing Secret
- In TeamWeb AI, go to your assistant’s Channels tab and click on Slack — the setup panel on the right shows the exact Request URL to paste into Slack, with this assistant’s id already baked in
- Back in Slack, under Event Subscriptions:
- Toggle Enable Events on
- Set the Request URL to the per-assistant URL shown in TeamWeb AI (it looks like
https://yourdomain.com/webhooks/channels/slack/<assistant_id>/inbound) - Slack will send a verification challenge — TeamWeb AI handles this automatically
- Under Subscribe to bot events, add
message.im - Click Save Changes
- Under App Home, ensure Messages Tab is enabled so users can DM the bot
- Back in TeamWeb AI, paste the Bot Token and Signing Secret into the Slack channel form and enable the channel
Each assistant has its own Request URL with the assistant’s id in the path (e.g.
https://yourdomain.com/webhooks/channels/slack/5/inbound). One Slack app is tied to exactly one assistant — signature verification and message routing are scoped by the id in the URL, so the bare /webhooks/channels/slack/inbound form is not accepted.Slack users must have an account in TeamWeb AI with the same email address as their Slack profile. TeamWeb AI uses the Slack user’s email to match them to a TeamWeb AI user account.