Skip to content

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

FieldDescription
Bot User OAuth TokenYour Slack app’s bot token (starts with xoxb-)
Signing SecretYour Slack app’s signing secret for verifying webhook requests

Setting Up a Slack App

  1. Go to api.slack.com/apps and click Create New App then From scratch
  2. Give the app a name (e.g. your assistant’s name) and select your workspace
  3. Under OAuth & Permissions, scroll to Bot Token Scopes and add:
    • chat:write — Send messages
    • users:read — Look up user profiles
    • users:read.email — Read user email addresses
    • im:history — Read DM message history
  4. Click Install to Workspace and authorize the app
  5. Copy the Bot User OAuth Token (starts with xoxb-) from the OAuth & Permissions page
  6. Under Basic Information, copy the Signing Secret
  7. 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
  8. 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
  9. Under App Home, ensure Messages Tab is enabled so users can DM the bot
  10. 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.