Skip to main content

Slack

The Slack connector connects Slack to Glean for engagement signals, identity metadata, and Glean in Slack (Gleanbot and actions). Deploy it together with Slack Real Time Search (RTS):

  • Slack RTS fetches all Slack messages live at query time from Slack directly.
  • The Slack connector provides engagement signals and identity metadata to improve ranking.
note

After setting up a Slack connector, you must set up a Slack Real Time Search.

Key capabilities

  • Signals and ranking: Collects engagement events (such as mentions, clicks, and reactions) and identity metadata (users, channels, workspaces, memberships). Glean uses these “second‑order” signals to improve Slack RTS ranking and cross‑app relevance.

  • Identity crawls: Periodic full and incremental identity crawls provide user, channel, workspace, and membership metadata. This metadata is stored in Glean and used by Slack RTS, Glean in Slack, and actions.

  • Glean in Slack and Actions: Provides the Slack app and event plumbing Glean in Slack (Gleanbot) and actions need to receive mentions, process slash commands (for example, /glean), and post replies. Full functionality requires this connector and Slack Real Time Search, plus completed identity crawls.

  • Webhooks: Uses Slack Events API webhooks for real‑time identity and engagement events (for example, member_joined_channel, app_mention, link_shared). These events supply signals and trigger Gleanbot and actions.

note

For most tenants after March 3, 2026, this connector is not the primary source of Slack search results. Slack Real Time Search (RTS) is the primary path for live Slack messages in Glean Search and Assistant. The Slack connector adds additional signals.

Modes (Select during setup)

  • Single Workspace: One datasource instance authorized for a single workspace. Recommended for customers with a single Slack workspace.
  • Slack Enterprise: One datasource instance authorized for the Slack Enterprise Grid organization; covers all workspaces. Recommended for enterprise customers with multiple workspaces and the Slack Enterprise license.

Supported objects/entities

  • Public channels (messages and threads)
  • Private channels (messages and threads, if authorized)
  • Direct messages (DMs) and group DMs (if authorized)
  • Channel and user metadata (for search enrichment and Gleanbot features)
note

These objects are the primary sources of ranking signals and metadata.

Prerequisites

  • Workspace-level connectors: The user setting up this data source must be a Slack Workspace Owner or Slack Workspace Admin. For more information, see Find owners and admins.
  • Enterprise Grid connectors: The user setting up this data source must be a Slack Org Owner.
  • Slack workspace domain, e.g., if your Slack URL is yourdomain.slack.com, the domain is yourdomain.
  • Slack workspace ID. Your Slack Workspace ID (starts with T...) and, for Enterprise Grid, your Enterprise ID (starts with E...).
  • Slack Enterprise plan (Enterprise/Grid mode only): Verify that your organization is on a Slack Enterprise plan.

Each user must individually authorize the app to access their private messages and DMs.

Decide your mode

You can select single workspace or Enterprise (org-level) based on your Slack plan and target scope.

  • Slack (Single workspace)
  • Slack Enterprise

Set up Slack

  1. In Glean Admin consoleData source → select Slack for single workspace or select Slack Enterprise for the Enterprise (org-level) Slack.
  2. Click Setup.

Gather account details

  1. Open Slack on web.
  2. Look for your workspace name in the top left. Click your workspace name and find the Slack URL in the menu, ending in .slack.com. The domain is the portion before .slack.com, e.g. if the URL is yourdomain.slack.com, the domain would be yourdomain. Enter the domain in Glean.
  3. The URL must be of the form app.slack.com/client/T12345678. Copy this last part of the URL and paste it into Glean as the workspace ID. Note the workspace ID will start with T.
note

For Enterperise Slack connectors, the domain is listed in the form domain.enterprise.slack.com. The URL is of the form app.slack.com/client/E12345678/C12345678. Copy the enterprise part of the URL and paste it into Glean as the enterprise ID.

Create an app

  1. Visit the Slack API site and click Create New App.
  2. Choose From an app manifest.
  3. Select the same workspace you chose on the previous screen and click Next.
  4. Replace existing YAML comment with the manifest from your setup page and click Next. Visit your Glean setup page to find the correct manifest for your deployment.
  5. Click Create.

Generate a token

  1. Click the Basic Information tab and scroll down until you see App-Level Tokens.
  2. Click Generate Token and Scopes.
  3. Name the token Glean.
  4. Click Add Scope and add the scope authorizations:read.
  5. Click Generate and paste the token into Glean.

Add an icon

  1. Click the Basic Information tab.
  2. Download this logo.
  3. Click Choose File and select the logo you just downloaded above.

Enable event subscriptions

  1. Click on the Event Subscriptions tab.
  2. Check if the Enable Events toggle is on. If not, turn it on and Save Changes at the bottom of the page.

Connect to Glean

  1. Click the Collaborators tab and add at least one additional administrator from your company.
  2. Copy and paste the following fields from Basic Information into Glean: Client ID, Client Secret, Signing Secret.
  3. Go to OAuth & Permissions from the left navigation and click Install to Workspace.
  4. Click Save in Glean to save the entered information, then click the link to finish authorizing access to Slack.

Enterprise Grid rollout

For Enterprise Grid deployments, after completing the steps above, approve and deploy the app across your organization:

  1. In Slack, go to Org SettingsIntegrationsInstalled apps.
  2. Click ManageApprove for organization.
  3. Click ManageAdd to workspaces, select all workspaces, and select Default for future workspaces.

Common Enterprise setup error

ErrorCauseResolution
not_ownerThe user setting up the data source is not a Slack Org Owner.Have a Slack Org Owner complete the setup.

Content configuration

note

Inclusion and exclusion rules control what Slack content is available in Glean across all features. They don't modify native Slack permissions.

Exclusion (Redlist) options

Exclusion (redlisting) is used when we don't want Glean to access specific channels.

You can exclude:

  • Public channels by channel ID
  • Private channels by channel ID

When a channel is redlisted:

  • Data from that channel is not accessed.

To configure Slack channel redlists today, contact Glean Support with the list of Slack channel IDs to exclude for your Slack data source.

Inclusion (Greenlist) options

Inclusion (greenlisting) tells Glean which channels it should access. Use inclusion rules when you want Glean to access a small, controlled set of channels.

You can include:

  • Public channels by channel ID (for example, public C1234 channel)
  • Private channels by channel ID (for example, private Q2398 channel)

When a channel is greenlisted:

  • Only data in greenlisted channels are accessed.
  • If a channel is both greenlisted and redlisted, the redlist (exclusion) rule takes precedence.

To configure Slack channel greenlists today, contact Glean Support with the list of Slack channel IDs to include for your Slack data source.

note

If Inclusion (Greelisting) options are enabled, only data from the Inclusion category is used. If Exclusion (Redlisting) options are enabled, all data in the exclusion category is not used. If both rules are applied, then the data is not used, as the exclusion rule takes priority.

For general background on redlisting and greenlisting across connectors, and for how to obtain Slack channel IDs, see Excluding content.