The Slack connector lets Enterpret Agent read from and act in your Slack workspace on your behalf. You can ask it things like "find the thread where we discussed the Q3 launch", "summarize what happened in #incidents yesterday", or "draft a reply to that message" — and it will search, read, and post using your own Slack access.
This article explains what permissions the connector asks for when you connect Slack, why each one is needed, and how the data it retrieves is handled.
Note: this is different from the Slack inbound integration, which ingests selected Slack channels into your feedback dataset. The Agent connector does not ingest anything — see "What Enterpret stores" below.
How authorization works
Each user connects their own Slack account through Slack's standard OAuth flow. The connector operates with a user token — it acts as you, with your permissions, and is bounded by Slack's own permission model.
This means:
The agent can only see what you can see in Slack. It cannot access private channels you're not a member of, other people's DMs, or anything else outside your own Slack access.
Anything the agent posts is attributable to you and requires your confirmation first (see "Taking actions" below).
Your workspace's Slack admin policies apply. If your admin restricts an app or a scope, that restriction holds.
Disconnecting the connector revokes the token. You can also revoke it from Slack's side at any time under your workspace's app management settings.
What each permission does
Searching
These power workspace search — "where did we discuss X?" Slack returns only results the connected user could find with Slack's own search bar.
search:read.public— search messages in public channels you have access tosearch:read.private— search private channels you are a member ofsearch:read.im— search your own direct messagessearch:read.mpim— search your group direct messagessearch:read.files— search files shared in conversations you have access tosearch:read.users— find people in your workspace by name
Reading conversations
These let the agent open and read a specific conversation once found — for example, to summarize a thread.
channels:read,channels:history— list public channels and read their message historygroups:read,groups:history— list and read private channels you are a member ofim:read,im:history— list and read your own direct messagesmpim:read,mpim:history— list and read your group direct messagesfiles:read— read files you have access tocanvases:read— read canvases you have access toreactions:read,emoji:read— read reactions on messages and your workspace's emoji list
People and groups
users:read,users:read.email— resolve names and @mentions to people, so "ask Priya's team" or "who posted this?" worksusergroups:read— resolve user groups (like@eng-oncall) to their members
Taking actions
chat:write— send messages as youreactions:write— add reactions as you
The agent checks in before doing work in an external system. Before sending a Slack message on your behalf, it shows you the message and asks for confirmation.
Why more than a simple bot needs
A bot that only replies when @mentioned would need just app_mentions:read and chat:write. The agent's Slack connector supports a broader set of tasks: searching workspace history, retrieving and summarizing specific threads and files, resolving people and groups, and drafting or sending messages as you. Those tasks require search, history, file, and directory scopes — and they require a user token rather than a bot token, so that results are always scoped to what you personally have access to rather than to wherever a bot has been invited.
When Slack is accessed
Slack is only called when you (or an agent session you started) use a Slack tool — for example, when you ask the agent to search or post. Every call is a live request to Slack's API at that moment.
The connector does not:
Crawl or index your Slack workspace
Sync Slack content in the background
Access Slack outside of an agent session you can see
What Enterpret stores
No message index. Enterpret does not maintain a copy or index of your Slack messages or files. Search happens live in Slack, every time.
Session history. Slack results retrieved during a session are used to answer your request and are retained as part of that session's transcript, like the rest of the conversation. They are visible to you in your session history and governed by your organization's data retention terms with Enterpret.
Not ingested as feedback. The Agent connector never writes Slack content into your Enterpret feedback dataset. (Ingesting Slack channels as feedback is a separate, explicitly configured integration — the Slack inbound integration.)
Not used for training. Slack content is not used to train models.
Credentials. OAuth tokens are stored encrypted and used only to make Slack API calls for your sessions.
FAQs
Can the agent access channels the Enterpret bot hasn't been added to? The connector doesn't depend on a bot being added to channels. It uses your user token, so it can access exactly what you can access — no more, no less. A public channel you can open, a private channel you're in, your own DMs. Never someone else's.
Can my teammates see my Slack content through the agent? Each user connects their own Slack account, and the agent uses the connection of the person running the session. Content retrieved with your token lives in your session.
What happens when I disconnect? The token is revoked and the agent loses all Slack access for your account immediately.
Can our Slack admin control this? Yes. Slack workspace admins can restrict app installs and approve or deny the app and its scopes through Slack's standard app approval flow.
