Stay organized with collections
Save and categorize content based on your preferences.
This page describes how to connect Slack to Agentspace.
After you set up your data source and import data the first time, the data store
syncs data from that source at a frequency that you select during setup.
Before you begin
Before setting up your connection:
Set up access control for your data source. For information about setting up
access control, see
Use data source access control.
To follow the steps in Configure your Slack app, you must
have the permissions to install new apps in your workspace, that's included
in the Workspace Owner role. Contact your Workspace Primary Owner
to be assigned as a Workspace Owner.
Understand that by default, Slack restricts crawling and syncing content
from private channels, group messages, and direct messages.
Permissions required for this task
These permissions are needed to generate a bot token
users:read.email
channels:history
channels:read
groups:history
groups:read
im:history
im:read
mpim:history
mpim:read
team:read
users:read
files:read
These permissions are needed to generate a user token
users:read.email
channels:history
channels:read
groups:history
groups:read
im:history
im:read
mpim:history
mpim:read
users:read
files:read
Configure the Slack app
The Slack connector requires an access token to be able to ingest documents from
your Slack workspace. To obtain an access token to allow
Agentspace to ingest documents from your Slack workspace.
For more information, see [Quickstart][slack-quickstart] and
[How to quickly get and use a Slack API token][slack-token] in the Slack
documentation.
There are two different types of tokens you can use:
It can have a more secure access to private Slack channels, instant
messages (IM), and multi-person instant messages (MPIM). The members
involved in those channels and messages can invite the bot.
The bot can also be invited to public channels. When configuring the
bot token, you can add the channels:join permission for the
crawler to automatically attempt to join all public channels.
Limitations:
When the bot attempts to join public channels, a join message is sent
to the channel.
Select From scratch. This option lets you configure the app's
information, scopes, settings, and features.
Start creating the app from scratch
Enter a name for your app.
The name you select is visible to all Slack users.
Select the workspace for integration.
Because you can't change an app's workspace later, ensure that you select the
correct workspace.
Enter a name and select the correct workspace
Click Create app.
In the sidebar, select OAuth & permissions.
OAuth & Permissions in the Slack app's sidebar
Under Bot token scopes, add the following required scopes:
class="showalways">View scopes
channels:history
channels:read
files:read
groups:history
groups:read
im:history
im:read
mpim:history
mpim:read
team:read
users:read
users:read.email
By default, the bot reads from the #general and #random channels.
Select the scopes for the bot token
To enable the bot to crawl the channels, do the following:
For public channels, do one of the following:
Invite the bot manually.
Grant the channels:join scope to allow the bot to attempt join
automatically.
For private channels, invite the bot manually.
On the same page, click Install to WORKSPACE_NAME.
Install the app in your workspace
Follow the on-screen instructions to install the app and after the app is
installed, copy and note the bot's OAuth token.
Copy the bot's OAuth token
Configure a user token
The following steps show you how to configure a bot token:
Select From scratch. This option lets you configure the app's
information, scopes, settings, and features.
Start creating the app from scratch
Enter a name for your app.
The name you select is visible to all Slack users.
Select the workspace for integration.
Because you can't change an app's workspace later, ensure that you select the
correct workspace.
Enter a name and select the correct workspace
Click Create app.
In the sidebar, select OAuth & permissions.
OAuth & Permissions in the Slack app's sidebar
Under User token scopes, add the following required scopes:
class="showalways">View scopes
channels:history
channels:read
files:read
groups:history
groups:read
im:history
im:read
mpim:history
mpim:read
team:read
users:read
users:read.email
Select the scopes for the user token
On the same page, click Install to WORKSPACE_NAME.
Install the app in your workspace
Follow the on-screen instructions to install the app and after the app is
installed, copy and note your user OAuth token.
Copy the user's OAuth token
Create a Slack Cloud connector
Console
To use the Google Cloud console to sync data from Slack to
Agentspace, follow these steps:
In the Google Cloud console, go to the Agentspace page.
Click addCreate data store.
In the Google Cloud console, create a data store
On the Select a data source page, scroll or search for Slack to
connect your third-party source.
Enter your Slack authentication information.
Instance ID (Workspace ID):
To obtain your workspace ID, sign in to your Slack workspace using a
web browser. Don't use the Slack app. For more information, see [Specify the Slack source for your data store][slack-workspace-id].
In the URL, note the unique workspace ID, which is the string after
/client beginning with T.
Obtain the instance ID (workspace ID)
Auth token: Use the token obtained from the last when you generated
the bot token or the user token.
Select which entities to sync and click Continue.
To crawl all channels, retain the default selections.
To crawl specific channels, click Filter and select the channels.
The following image shows an example configuration that allows crawling
of channels named general and random.
Select the channels to crawl
Select the Sync frequency for Full sync
and the Incremental sync frequency for Incremental data sync.
For more information, see
Sync schedules.
If you want to schedule separate full syncs of entity and identity data,
expand the menu under Full sync and then select Custom options.
Setting separate schedules for full entity sync and full identity sync.
Select a region for your data store.
Enter a name for your data store.
Click Create. Agentspace creates your data store and
displays your data stores on the Data stores page.
To check the status of your ingestion, go to the Data stores page and
click your data store name to see details about it on its Data page. The
Connector state changes from Creating to Running when it starts
synchronizing data. When ingestion is complete, the state changes to
Active to indicate that the connection to your data source is set up and
awaiting the next scheduled synchronization.
Depending on the size of your data, ingestion can take minutes or hours.
Next steps
To attach your data store to an app, create an app and select your data store
following the steps in
Create an app.
To preview how your search results appear after your app and data store are
set up, see Preview search results.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-03 UTC."],[],[],null,["# Connect Slack\n\n\u003cbr /\u003e\n\n| **Preview:** You must be on the allowlist to use this connector.\n\n\u003cbr /\u003e\n\nThis page describes how to connect Slack to Agentspace.\n\nAfter you set up your data source and import data the first time, the data store\nsyncs data from that source at a frequency that you select during setup.\n\n### Before you begin\n\nBefore setting up your connection:\n\n1. Set up access control for your data source. For information about setting up\n access control, see\n [Use data source access control](/agentspace/docs#identity).\n\n2. To follow the steps in [Configure your Slack app](#configure-slack), you must\n have the permissions to install new apps in your workspace, that's included\n in the **Workspace Owner** role. Contact your **Workspace Primary Owner**\n to be assigned as a **Workspace Owner**.\n\n3. Understand that by default, Slack restricts crawling and syncing content\n from private channels, group messages, and direct messages.\n\n#### Permissions required for this task\n\nThese permissions are needed to generate a bot token\n\n- `users:read.email`\n- `channels:history`\n- `channels:read`\n- `groups:history`\n- `groups:read`\n- `im:history`\n- `im:read`\n- `mpim:history`\n- `mpim:read`\n- `team:read`\n- `users:read`\n- `files:read`\n\nThese permissions are needed to generate a user token\n\n- `users:read.email`\n- `channels:history`\n- `channels:read`\n- `groups:history`\n- `groups:read`\n- `im:history`\n- `im:read`\n- `mpim:history`\n- `mpim:read`\n- `users:read`\n- `files:read`\n\n### Configure the Slack app\n\nThe Slack connector requires an access token to be able to ingest documents from\nyour Slack workspace. To obtain an access token to allow\nAgentspace to ingest documents from your Slack workspace.\n\nFor more information, see \\[Quickstart\\]\\[slack-quickstart\\] and\n\\[How to quickly get and use a Slack API token\\]\\[slack-token\\] in the Slack\ndocumentation.\n\nThere are two different types of tokens you can use:\n\n- [**Bot token**](#bot-token-slack)\n - Benefits:\n - It's not tied to a specific user.\n - It can have a more secure access to private Slack channels, instant messages (IM), and multi-person instant messages (MPIM). The members involved in those channels and messages can invite the bot.\n - The bot can also be invited to public channels. When configuring the bot token, you can add the `channels:join` permission for the crawler to automatically attempt to join all public channels.\n - Limitations:\n - When the bot attempts to join public channels, a join message is sent to the channel.\n- [**User token**](#user-token-slack)\n - Benefits:\n - It can access all public channels without the need to join them beforehand.\n - Limitations:\n - It's tied to a specific user.\n - With user token, users can't crawl private channels, IMs, and MPIMs that they're not a part of.\n\n#### Configure bot token\n\nThe following steps show you how to configure a bot token:\n\n1. Sign in to [Slack API Apps](https://api.slack.com/apps).\n2. Click **Create new app** . Create new app in Slack App\n3. Select **From scratch** . This option lets you configure the app's information, scopes, settings, and features. Start creating the app from scratch\n4. Enter a name for your app. The name you select is visible to all Slack users.\n5. Select the workspace for integration. Because you can't change an app's workspace later, ensure that you select the correct workspace. Enter a name and select the correct workspace\n6. Click **Create app**.\n7. In the sidebar, select **OAuth \\& permissions** . OAuth \\& Permissions in the Slack app's sidebar\n8. Under **Bot token scopes** , add the following required scopes: class=\"showalways\"\\\u003eView scopes\n - `channels:history`\n - `channels:read`\n - `files:read`\n - `groups:history`\n - `groups:read`\n - `im:history`\n - `im:read`\n - `mpim:history`\n - `mpim:read`\n - `team:read`\n - `users:read`\n - `users:read.email`\n By default, the bot reads from the `#general` and `#random` channels. Select the scopes for the bot token\n9. To enable the bot to crawl the channels, do the following:\n 1. For public channels, do one of the following:\n - Invite the bot manually.\n - Grant the `channels:join` scope to allow the bot to attempt join automatically.\n 2. For private channels, invite the bot manually.\n10. On the same page, click **Install to \u003cvar translate=\"no\"\u003eWORKSPACE_NAME\u003c/var\u003e** . Install the app in your workspace\n11. Follow the on-screen instructions to install the app and after the app is installed, copy and note the bot's OAuth token. Copy the bot's OAuth token\n\n### Configure a user token\n\nThe following steps show you how to configure a bot token:\n\n1. Sign in to [Slack API Apps](https://api.slack.com/apps).\n2. Click **Create new app** . Create new app in Slack App\n3. Select **From scratch** . This option lets you configure the app's information, scopes, settings, and features. Start creating the app from scratch\n4. Enter a name for your app. The name you select is visible to all Slack users.\n5. Select the workspace for integration. Because you can't change an app's workspace later, ensure that you select the correct workspace. Enter a name and select the correct workspace\n6. Click **Create app**.\n7. In the sidebar, select **OAuth \\& permissions** . OAuth \\& Permissions in the Slack app's sidebar\n8. Under **User token scopes** , add the following required scopes: class=\"showalways\"\\\u003eView scopes\n - `channels:history`\n - `channels:read`\n - `files:read`\n - `groups:history`\n - `groups:read`\n - `im:history`\n - `im:read`\n - `mpim:history`\n - `mpim:read`\n - `team:read`\n - `users:read`\n - `users:read.email`\n Select the scopes for the user token\n9. On the same page, click **Install to \u003cvar translate=\"no\"\u003eWORKSPACE_NAME\u003c/var\u003e** . Install the app in your workspace\n10. Follow the on-screen instructions to install the app and after the app is installed, copy and note your user OAuth token. Copy the user's OAuth token\n\n### Create a Slack Cloud connector\n\n### Console\n\nTo use the Google Cloud console to sync data from Slack to\nAgentspace, follow these steps:\n\n1. In the Google Cloud console, go to the **Agentspace** page.\n\n [Agentspace](https://console.cloud.google.com/gen-app-builder/)\n2. In the navigation menu, click **Data stores**.\n\n3. Click add\n **Create data store**.\n\n In the Google Cloud console, create a data store\n\n \u003cbr /\u003e\n\n4. On the **Select a data source** page, scroll or search for **Slack** to\n connect your third-party source.\n\n5. Enter your Slack authentication information.\n\n - **Instance ID (Workspace ID)** :\n 1. To obtain your workspace ID, sign in to your Slack workspace using a web browser. Don't use the Slack app. For more information, see \\[Specify the Slack source for your data store\\]\\[slack-workspace-id\\].\n 2. In the URL, note the unique workspace ID, which is the string after `/client` beginning with **T** . Obtain the instance ID (workspace ID)\n - **Auth token** : Use the token obtained from the last when you generated the [bot token](#bot-token-slack) or the [user token](#user-token-slack).\n6. Select which entities to sync and click **Continue**.\n\n 1. To crawl all channels, retain the default selections.\n 2. To crawl specific channels, click **Filter** and select the channels. The following image shows an example configuration that allows crawling of channels named `general` and `random`. Select the channels to crawl\n7. Select the **Sync frequency** for **Full sync**\n and the **Incremental sync frequency** for **Incremental data sync** .\n For more information, see\n [Sync schedules](/agentspace/docs/introduction-to-connectors-and-data-stores#sync-schedules).\n\n If you want to schedule separate full syncs of entity and identity data,\n expand the menu under **Full sync** and then select **Custom options**.\n Setting separate schedules for full entity sync and full identity sync.\n8. Select a region for your data store.\n\n9. Enter a name for your data store.\n\n10. Click **Create** . Agentspace creates your data store and\n displays your data stores on the **Data stores** page.\n\n11. To check the status of your ingestion, go to the **Data stores** page and\n click your data store name to see details about it on its **Data** page. The\n **Connector state** changes from **Creating** to **Running** when it starts\n synchronizing data. When ingestion is complete, the state changes to\n **Active** to indicate that the connection to your data source is set up and\n awaiting the next scheduled synchronization.\n\n Depending on the size of your data, ingestion can take minutes or hours.\n\n\u003cbr /\u003e\n\n### Next steps\n\n- To attach your data store to an app, create an app and select your data store\n following the steps in\n [Create an app](/agentspace/docs/create-app).\n\n- To preview how your search results appear after your app and data store are\n set up, see [Preview search results](/agentspace/docs/preview-search-results).\n\n- To enable alerts for the data store, see [Configure alerts for third-party data stores](/agentspace/docs/configure-periodic-data-alerts)."]]