> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryassist.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Slack Federated

**Jan 2026 Update** In June 2025, Slack introduced Terms of Service and API changes that prevented customers from indexing their own data. ASSIST AI responded by launching the Slack Federated connector, which uses Slack's Search APIs as an alternative to the indexing approach. However, Slack has since reversed those API restrictions, meaning the indexing connector is once again fully functional.

We have found that the Indexed Connector delivers significantly better results than the Slack Search APIs when it comes to finding relevant content. We strongly encourage using the **Slack Indexed Connector** wherever possible.

## Setting Up

### Authorization

1. **Prerequisite** Admin access to the Slack workspace is required before setting up the connector.
2. **Open Slack Apps** Visit [https://api.slack.com/apps](https://api.slack.com/apps) and sign in.
3. **Create a new app** Click **Create New App** in the top right corner, select the **From an app manifest** option, pick the relevant workspace from the dropdown, and click **Next**.
4. **Paste the manifest** Select the **YAML** tab, paste the manifest below into the text field, and click **Next**:
   ```text theme={null}
   display_information:
     name: ASSIST AI Search Assistant
     description: Search your Slack data as yourself
     background_color: "#233db0"
   oauth_config:
     redirect_urls:
       - https://www.tryassist.in/forassist/federated/oauth/callback
     scopes:
       user:
         - channels:read
         - groups:read
         - im:read
         - mpim:read
         - search:read
         - channels:history
         - groups:history
         - im:history
         - mpim:history
         - users:read
   settings:
     org_deploy_enabled: false
     socket_mode_enabled: false
     token_rotation_enabled: false
   ```
   <Warning>
     We do not currently support token rotation, so `token_rotation_enabled: false` is necessary.
   </Warning>
5. **Create the app** Click the **Create** button.
6. **Open Basic Information** Within the app page, navigate to the **Basic Information** tab under the Settings section.
7. **Copy client credentials** Copy the **Client ID** and **Client Secret** and store them somewhere secure for the next step.

## Indexing

1. **Open the Slack connector**
   Go to the Connector Dashboard and select the **Slack Connector**.
2. **Enter client credentials**
   Input the Client ID and Client Secret obtained in step 7.
3. **Configure search scope**
   Set up the search scope for the federated connector using the available options below:
   **Channel Selection:**
   * **Search All Channels**: Enable this to search across all accessible channels. When active, the Channels field will be disabled.
   * **Channels**: Specify particular channels to search (only applicable when Search All Channels is disabled). Supports glob patterns (e.g., `general`, `eng*`, `product-*`).
   * **Exclude Channels** — Exclude specific channels from search results. Also supports glob patterns (e.g., `secure-channel`, `private-*`, `customer*`). \
     **Message Types:**
   * **Include Direct Messages** — Include one-on-one DMs in search results.
   * **Include Group Direct Messages** — Include multi-person direct messages (MPIMs) in search results.
   * **Include Private Channels** — Include private channels in search results (user access required).
     **Search Parameters:**
   * **Default Search Days** — Sets the maximum number of days to search back (default: 30). Note that increasing this value may reduce answer quality.
   * **Max Messages Per Query** — Sets the maximum number of messages retrieved per search query (default: 25). Higher values offer more context but may slow down results.
     Once everything is configured, click **Create/Update**
4. **Complete OAuth**
   Return to the main Chat page and complete the OAuth flow.

   <Info>
     Every user will need to go through this OAuth flow. The searchable content depends on:

     * The connector configuration settings (channels, DMs, private channels, etc.)
     * The OAuth scopes granted during setup
     * The user’s individual access permissions in Slack
       If certain OAuth scopes are missing (e.g., `mpim:read`, `im:history`), the connector will gracefully continue searching other available channel types and log warnings about the missing scopes.
   </Info>
