Skip to main content

Slack Integration

Connect your Slack workspace to Teela so your team can ask questions directly from Slack channels and DMs. This guide walks you through connecting a workspace, how user authentication works, and how to manage the integration over time.

Overview

The Slack integration is a Teela-hosted Slack app. You don't need to build or configure anything on the Slack side: a single "Connect to Slack" button in the Admin portal takes care of the entire OAuth install.

A few things to know up front:

  • One workspace per Teela client. Each Teela account can connect to one Slack workspace at a time.
  • Runs alongside the web app. Your team can keep using Teela on the web as usual. Slack is an additional surface, not a replacement.
  • User authentication is email-based. A user's Slack email must match their Teela account email. No separate Slack invitations are needed.

Prerequisites

Before you start, make sure:

  1. You're a Client Admin or Owner in Teela. Regular users can't connect integrations.
  2. You have admin rights in your Slack workspace. Slack requires a workspace admin to approve new app installs.
  3. Your users have Teela accounts with email addresses that match their Slack profile emails. See User Management for invitation details.

Connecting Your Workspace

  1. In the Admin portal, click Integrations in the sidebar.
  2. Find the Slack card and click Connect to Slack.
  3. You'll be redirected to Slack's OAuth consent screen. Slack shows the permissions Teela is requesting: reading mentions and DMs, posting messages, uploading files, and reading user profile and email.
  4. Click Allow in Slack.
  5. Slack sends you back to Teela. The Integrations page will now show a Connected card with your workspace name, the date you connected, and an Active badge.

That's it. The bot is live in your workspace.

What Your Users Will See

Your team can now mention @teela in any channel they've added the bot to, or start a direct message with the bot. The Ask from Slack user guide covers what they'll experience, including:

  • Four ways to ask (mention, open-thread-then-ask, inline bracket, DM)
  • The connection picker when a user has access to more than one connection
  • Styled table images capped at 10 rows and 6 columns
  • View in Teela and Download CSV buttons on every answer
  • Follow-up questions in threads that keep context

Share that user guide with anyone who'll be using the bot.

How User Authentication Works

Teela uses email matching to tie Slack users to their Teela accounts. Here's the full flow:

  1. A Slack user mentions @teela or sends a DM to the bot.
  2. Teela asks Slack for the user's profile email.
  3. Teela looks up that email in your client's user list.
  4. If it matches, the user can ask questions. The mapping is cached so Teela doesn't need to look it up again on every message.
  5. If it doesn't match, the bot replies: "Looks like you don't have a Teela account. Ask your admin to invite you."

This means:

  • Users don't get a separate Slack invitation from Teela. If their Slack email matches, they're in.
  • If someone changes their Slack email, the next message they send will trigger a fresh lookup and re-cache.
  • If you remove a user from Teela, they lose Slack access the next time they try.

Managing the Integration

On the Integrations page, the Slack card shows the current state:

  • Workspace name: the Slack workspace you're connected to.
  • Connected on: the date the OAuth install completed.
  • Active / Inactive: whether the bot is currently responding.

Disconnecting

Click Disconnect on the Slack card and confirm. What happens:

  • The bot stops responding in your workspace immediately.
  • Teela's stored bot token is marked inactive.
  • Your users' existing conversations in Teela (created from Slack threads) remain available on the web.

Reconnecting

If tokens get revoked on the Slack side (for example, if someone uninstalls the app from within Slack), or after a Slack permission change, reconnect by:

  1. Clicking Connect to Slack on the Integrations page.
  2. Completing the OAuth consent flow again.
  3. Teela updates the existing installation record with the new token.

Existing Slack-to-Teela thread mappings remain, so ongoing conversations continue to work.

Security Notes

A few things worth knowing if your security team asks:

  • Bot tokens are encrypted at rest using the same AES-256-GCM envelope encryption that protects database credentials. See Encryption for details.
  • Every incoming Slack request is verified against the Slack signing secret before Teela processes it. Requests without a valid signature are rejected.
  • User authentication relies on Slack's email claim, so anyone who can't log into Slack as the matching user can't impersonate them.

For broader security details, see the Security Overview.

Troubleshooting

OAuth redirect failed: Most often this means you weren't a Slack workspace admin when you clicked Connect. Ask a Slack admin to run the install, or have them grant you admin rights first.

Bot isn't responding in a private channel: Private channels require the bot to be explicitly added. In Slack, open the channel settings, click Integrations, and add the Teela app.

Users can't use the bot after install: This is almost always an email mismatch. Check that the user's Slack profile email matches their Teela account email exactly. Update one side to match the other.

Need to move to a different workspace: Disconnect the current one, then click Connect to Slack while signed into the new workspace.