Slack
The Kapa platform provides an integration to ingest past conversations from Slack channels as a data source. Community Slack channels contain a lot of helpful information often in the form of support answers team members have provided. However, Slack channels are not meant for archiving information for other users. Great answers are not useful to anybody except the original poster because other users can not effectively search Slack. Kapa offers a way of making your past conversations on Slack useful to everyone by indexing them as a data source.
Prerequisites
- Admin access to a Slack workspace
- Ability to create a new Slack app in your workspace
- Channel ID for the channel(s) you want to ingest
Data ingested
When you connect Kapa to Slack, the following data is ingested:
- Thread URLs
- Initial thread messages and replies
Permissions required
The following permissions are required for your Slack app:
Permission | Purpose | Security considerations |
---|---|---|
channels:history | Access messages in public channels | Read-only access to message content |
channels:read | View basic channel information | Read-only access to channel metadata |
groups:history | Access messages in private channels | Read-only access to private channel content |
groups:read | View private channel information | Read-only access to private channel metadata |
metadata.message:read | Access message metadata | Read-only access to message data |
team:read | Access workspace information | Read-only access to workspace data |
users:read | Access user information | Read-only access to user profiles |
Setup
Step 1: Create a Slack app
- Navigate to your Slack Apps
- Click Create New App
- Select the appropriate workspace under Pick a workspace to develop your app in
It is not sufficient to have the Kapa Slackbot installed. You need your own separate slack app.
Step 2: Give the app the correct permissions
- Navigate to the OAuth & Permissions page
- Add the following OAuth scopes:
channels:history
channels:read
groups:history
groups:read
metadata.message:read
team:read
users:read
Step 3: Install the app to your workspace
- On the OAuth & Permissions page, click Install to Workspace
- Authorize the app when prompted
- Copy the Bot User OAuth Token (begins with
xoxb-
)
Step 4: Choose a channel
- Pick a channel you would like Kapa to ingest
- Find the channel ID at the bottom of the channel details

If you want to export multiple channels, repeat this step for each channel. You will have to create a separate source in the Kapa platform for each channel. You can use the same bot token for each source.
Step 5: Invite your bot to the channel
- This step might not always be necessary depending on the configuration of your Slack workspace
- Invite the slack app to the channel by typing
/invite @<bot-name>
- This is always required if the channel is
private
Step 6: Configure the Kapa platform
- Create a new source in the Kapa platform and select Slack as the source type
- Paste the copied bot token into the Bot Token field
- Paste the copied channel ID into the Channel ID field
- Configure additional options as needed
- Click Save to begin the ingestion process

Configuration options
The following configuration options are available for the Slack integration:
Option | Description | Default | Required |
---|---|---|---|
Bot Token | The OAuth token for your Slack app (starts with xoxb- ) | None | Yes |
Channel ID | The unique identifier for the Slack channel to ingest | None | Yes |
Trusted Users | List of usernames whose messages should be considered authoritative | None | No |
Only include threads with trusted user answers | When enabled, only ingests threads where a trusted user has responded | Disabled | No |
Thread age | Only include threads newer than the specified date | All time | No |
Include message reactions | Include emoji reactions to messages in the ingested data | Enabled | No |
Filter by keywords | Only include threads containing specific keywords | None | No |
Exclude by keywords | Exclude threads containing specific keywords | None | No |
Best practices
Tell Kapa who to trust
Community Slack conversations contain a lot of valuable information but they also contain a lot of false information since anybody can post. Use the Trusted Users config option to tell Kapa which users in your Slack channel represent a reliable source of information. Here you can list your team members, external community managers, your most active community members and whoever else you trust to give a reliable answer.
If a significant number of answers in your community are provided by these individuals, we would highly recommend enabling the Only include threads that have answers from trusted users above option. Then Kapa only ingests threads from your Slack channel where one of these trusted users has answered. This is the best way to only ingest high quality content from Slack.
Focus on support channels
Support-focused channels typically contain the most valuable content for Kapa. These channels often have:
- Clear questions and problems
- Direct answers from knowledgeable team members
- Solutions that have been verified to work
Consider recency
Older Slack conversations may contain outdated information. Consider setting an appropriate Thread age filter based on your product's update cycle.
Troubleshooting
- Authentication errors: Verify your bot token is correct and hasn't expired
- Channel access denied: Ensure your bot has been invited to the channel
- No data appearing: Check that the channel contains conversations matching your filter criteria