Connecting Slack
Click Connect on the Slack data source page. You’ll see two connection modes:| Mode | Description |
|---|---|
| All public channels | Syncs all public channels and private channels |
| Channels with bot only | Only syncs channels where the bot has been added |

What Gets Synced
By default, Realm syncs messages from public channels and any private channels where the Realm Slack App has been added. To add Realm to a private channel, tag@Realm in the channel.
| Content | Synced |
|---|---|
| Public channel messages and threads | Yes |
| Files shared in channels | Yes |
| Private channels (with Realm app added) | Yes |
| Slack Connect channels | Configurable (see below) |
| DMs | Contact Realm to enable |
| Canvases and Lists | No |
Permissions
Realm mirrors Slack’s permission settings. Users can only see messages from channels they have access to in Slack. You can override this by switching to “Everyone in this organization” on the data source settings page, which makes all synced Slack data visible to all Realm users.Slack message history
Realm syncs historical messages via the Slack API, but due to rate limits this is very slow. Uploading a Slack workspace export is the recommended way to import your full message history.Exporting from Slack
Open Slack workspace settings
As a Slack workspace admin, click Admin in the sidebar, then select Workspace settings > Security.
Start an export
Click Import & export data, then select the Export tab. Choose a date range and click Start export. See Slack’s export guide for details on what’s included per Slack plan.
Uploading to Realm
On the Slack data source page, scroll to Slack Message History and upload the ZIP file. The maximum file size is 10 GB. If your export is larger, perform multiple exports with different date ranges. A progress indicator will show the upload and processing status.Import privacy settings
Use the Import privacy settings dropdown to control which messages are imported:| Setting | Description |
|---|---|
| Public only | Only import messages from public channels |
| All channels | Import messages from all channels in the export |
Slack AI app view
To use Realm in Slack’s AI app view, you need to enable AI apps in your Slack workspace settings. See Slack’s instructions for displaying AI apps and the Slack App page for more details.
Noise reduction
Slack can be a noisy data source. To keep results relevant, Realm:- Ignores threads with only bot messages and no human replies
- Ranks archived channels lower in search results
- Ranks very short messages lower in search results
Required scopes
Bot Scopes
Bot Scopes
channels:history, channels:read, files:read, pins:read, reactions:read, team:read, users:read, users:read.email, im:history, im:read, chat:write, chat:write.customize, app_mentions:read, reactions:write, groups:read, assistant:write, mpim:history, mpim:read, groups:historyUser Scopes
User Scopes
channels:history, channels:read, files:read, pins:read, reactions:read, team:read, users:read, users:read.email, search:readUsing Realm in Slack
Once connected, team members can interact with Realm directly in Slack. For usage details, see the User guide: Slack app.
Slack Connect channels
Slack Connect channels (shared with external organizations) are not synced by default. You can configure this:| Setting | Description |
|---|---|
| Sync only selected | Choose specific Slack Connect channels to sync. Click Select channels to pick from a list. |
| Sync all | Sync all Slack Connect channels |
Public channel answer mode
Controls how Realm responds when mentioned in public channels (or private channels where the bot has been added):| Mode | Description |
|---|---|
| Preview | The answer is posted as an ephemeral message only visible to the user who asked. They can then choose to share it to the channel or dismiss it. |
| Share | Realm answers directly in the channel, visible to everyone |
| None | Realm will not answer questions in channels |
Restrict bot to configured channels

This setting applies to all agents in your organization. Individual agents cannot override it.

