DocsSign inInstall Kastel
Connectors · Slack

Connecting Slack, channel by channel.

What Slack lets you see or not is on the Slack product page. Here is how to authorize the workspace, invite the connector into a private channel, and remove it.

See also

Why connect Slack · How a connector works

01

Before you start

The token created is a workspace token, not a personal one: a workspace admin authorizes the app once, for everyone.

Public channels are ingested as soon as the workspace is connected. For a private channel, plan on a second gesture after authorizing: inviting it, one channel at a time (next section).

02

Authorize the workspace

Managed: from enterprise Sources, an admin authorizes the app in their Slack workspace - the same consent round trip as Google Drive. Self-host:

shell
kastel connector slack connect <workspace>

Authorization covers reading only: no write permission is ever requested from Slack.

03

Including a private channel

This is a two-step gesture: the opt-in below, then inviting the bot into the channel from Slack. Today, the opt-in happens on the command line, including for a managed workspace - the console has no dedicated screen for this fine-grained setting yet:

shell
kastel connector slack opt-in-private <channel>

Then invite the bot into that channel from the channel's settings, in Slack. To reverse it, opt-out-private <channel> takes the channel out of scope at the next cleanup.

04

What gets synced

The workspace's public channels, plus any private channel explicitly included; the whole thread (root message and replies) is the unit ingested. Direct messages are never read: the permission that would expose them is not even requested.

90-day default window at first sync, like other sources (self-host: connectors.slack.history_days). A deleted message or a channel that leaves scope is reconciled on the next pass.

05

Check the status

Managed: the Slack card in your Sources shows the connected workspace. Self-host:

shell
kastel connector slack sync
06

Remove it

You want toThe gesture
Remove one private channel, keep the rest of the workspace connectedkastel connector slack opt-out-private <channel> (removed at the next cleanup)
Remove the whole workspace, keep what was ingested"Disconnect" (console), or kastel connector slack offboard <workspace>
Actually delete what was ingestedkastel erase --connector slack or the /erasures review

A question about your Slack?

Write to us: a question sent by email gets an answer the same day. Our partner integrator network can also help.

Contact usSee the integrator program