Slack
Description
Slack is a messaging platform that organizes team conversations into channels, direct messages and threads.
Setup guide
Follow our setup guide to connect Slack to Improvado.
Make sure you can install apps in your Slack workspace. If installation is blocked, ask a workspace owner or admin to approve the app.
Click Connections in the left navigation bar and select Slack in the Data sources catalog.
Choose how to connect:
Use this method for reports. It installs the Improvado app in your workspace, and the app reads the channels it is invited to. Pick a permission set: Click Authorize and approve the app. Sign in to the right workspace first; an Incognito window helps. Invite the app to every channel you want to extract: run Slack lets an app read only the channels it is a member of. The Is Member column of the Channels report shows which channels are covered. Direct Messages and Group Direct Messages cover only conversations that include the Improvado app.OAuth (recommended)
/invite @Improvado in the channel.
Go to api.slack.com/apps and create an app in the workspace you want to connect. Open OAuth & Permissions and add the Bot Token Scopes you need: Install the app to your workspace and copy the Bot User OAuth Token (it starts with xoxb-). Invite the bot to the channels it should post to or read from: run Paste the token into the Bot User OAuth Token field.API Token
/invite @your-app in the channel.
Use this method so the Improvado agent searches, reads and posts in Slack as you, including through Slack's MCP server. The app is created once per workspace; after that, everyone who wants the agent to act as them connects with their own Slack account. Reports are not extracted through these connections. Go to api.slack.com/apps, click Create New App, choose From a manifest, pick your workspace and paste this manifest (YAML): The manifest registers Improvado's redirect URL, the permissions the agent uses and Slack's MCP server. Keep the scopes as they are: the connection asks for exactly this list. Open Basic Information and copy the Client ID and Client Secret into the connection form. Click Authorize and approve as yourself. Colleagues connect with the same Client ID and Client Secret and approve with their own Slack accounts.OAuth (Your Own Slack App)
display_information:
name: Improvado Agent
oauth_config:
redirect_urls:
- https://connections.improvado.io/stat_provider_client/oauth_redirect/slack/
scopes:
user:
- search:read.public
- search:read.private
- search:read.im
- search:read.mpim
- search:read.files
- search:read.users
- channels:history
- groups:history
- im:history
- mpim:history
- channels:read
- groups:read
- im:read
- mpim:read
- im:write
- mpim:write
- chat:write
- reactions:read
- reactions:write
- users:read
- users:read.email
- files:read
- files:write
- canvases:read
- canvases:write
- emoji:read
settings:
is_mcp_enabled: true
token_rotation_enabled: false
After completing the connection process, the Slack connection will appear in your Connected sources list.
When the connection status is Active, and the account status column shows a number of accounts, you can move on to data extraction.

To extract data from the connected sources, check the instructions on how to set up data extraction.
Schema information
The schema information shows all report types you can use to extract data from Slack.
Troubleshooting
"The Improvado app hasn't been added to any public channel" - the Messages, Message Replies or Calls report found no public channel the app is a member of. Run /invite @Improvado in each channel you want to extract, then run the report again.
"The Improvado app is not a member of #channel" - the app was removed from that channel during the run. Invite it back with /invite @Improvado.
"Insufficient OAuth scopes" - the connection lacks the permission the report needs, for example because it was created before the report existed. Reconnect Slack with the Read Only or Read & Write permission set.
A channel is missing from the Messages report - check its Is Member value in the Channels report. Only channels the app is a member of are read.
Limits
Slack returns messages only from conversations the Improvado app belongs to: public and private channels it was invited to, and direct or group direct messages that include it. The first extraction reads one year of message history by default and up to two years at most.
Release notes
You can find information about the latest API changes in the official Release notes.
Was this article helpful?
Thanks for the feedback!