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

# Slack

> Enable and configure the Slack channel to connect your Brain Studio agent to your team's workspace.

## Introduction

The **Slack** channel connects your Brain Studio agent to Slack so your team and your customers get fast, personalized answers by direct message, without leaving their workspace.

The connection runs through a **Slack app** that you create in your workspace. Jelou receives events and interactions from Slack, runs the published flow, and returns the agent's replies to the same chat.

<Note>
  The channel works over **direct messages** with the bot only. It doesn't reply in public or private workspace channels.
</Note>

## Prerequisites

Before enabling the channel, make sure you have:

* An active Jelou account and access to the **Channels** section
* A **Slack app** created in your workspace, with these values at hand:
  * **Bot User OAuth Token** (starts with `xoxb-`), under *OAuth & Permissions*
  * **Signing Secret**, under *Basic Information*
  * **App ID**, under *Basic Information*
* An **app configuration token** (starts with `xoxe.xoxp-`), generated on the [Slack app settings page](https://api.slack.com/apps)

<Warning>
  If you don't see the Slack option in the channel list, your plan doesn't include it. Contact your administrator or the Jelou support team.
</Warning>

## Enable the channel

<Steps>
  <Step title="Open the Channels section">
    Sign in to Jelou, go to **Channels**, and select the **Slack** option.
  </Step>

  <Step title="Name the channel and choose the project">
    Give the channel a descriptive name, for example `Slack - Internal support`. The name must be between 4 and 50 characters.

    Then select the Brain Studio **project** the channel will connect to.

    <Tip>
      Use a name that identifies the environment as well as the channel, for example `Slack - HR Production`, so it's easy to tell apart in the list.
    </Tip>
  </Step>

  <Step title="Enter the Slack app credentials">
    In the second step of the modal, complete all four required fields:

    * **Bot User OAuth Token**: the bot token that starts with `xoxb-`
    * **Signing Secret**: the Signing Secret from *Basic Information*
    * **App ID**: the App ID from *Basic Information*
    * **App configuration token**: the token that starts with `xoxe.xoxp-`

    If you leave a field empty, the form marks it in red with the message *This value is required* and the create button stays disabled.

    <Note>
      The configuration token is used **once** to set your app's Request URLs and is **never stored**. It expires about 12 hours after you generate it, so generate it right before enabling the channel.
    </Note>
  </Step>

  <Step title="Create and connect the channel">
    Click **Create and connect channel**. Jelou creates the channel, sets the Request URLs on your Slack app, and shows the resulting **Request URL**.

    <Check>
      If the configuration token was accepted, you'll see confirmation that the **Events** and **Interactivity** Request URLs were set on your app. There's nothing else to do on Slack's side.
    </Check>

    Slack delivers events and interactions to the **same** route, so a single URL serves both fields.
  </Step>

  <Step title="Set the Request URLs manually (only if it fails)">
    If automatic configuration fails, the channel is already created and the modal shows you the URL to paste yourself. Copy the URL and paste it into both fields of your Slack app:

    * **Event Subscriptions** → *Request URL*
    * **Interactivity & Shortcuts** → *Request URL*

    <Note>
      You can find this URL again at any time in the channel properties, so there's no need to store it separately.
    </Note>
  </Step>

  <Step title="Verify the Events URL if Slack asks for it">
    In some cases Slack needs a manual verification. If the modal shows that notice, open **Event Subscriptions** in your Slack app and click **Verify** once to activate the Events URL.
  </Step>

  <Step title="Build the logic in Brain Studio">
    Open the project in Brain Studio, select the **Slack** channel in the workflows list, and start building your flow.
  </Step>
</Steps>

## Channel properties

Once the channel is created, its properties show:

| Field                    | Description                                                                                                                  |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
| **Slack App ID**         | The App ID you entered when enabling the channel                                                                             |
| **Bot User ID**          | The bot's own Slack user id. Jelou resolves it automatically from the bot token and uses it to ignore the bot's own messages |
| **Bot User OAuth Token** | Masked and not copyable                                                                                                      |
| **Signing Secret**       | Masked and not copyable                                                                                                      |
| **Request URL**          | The URL your Slack app sends events and interactions to, with a button to copy it                                            |

<Warning>
  The bot token and the Signing Secret are stored encrypted and never shown again. To replace them you have to create the channel again.
</Warning>

## Supported content

The Slack channel supports a subset of the blocks available on WhatsApp:

| Block   | Available | Limit                    |
| ------- | --------- | ------------------------ |
| Text    | Yes       | 3000 characters          |
| Image   | Yes       | JPEG and PNG, up to 5 MB |
| Buttons | Yes       | Maximum 10 per message   |
| List    | Yes       | Maximum 10 options       |
| CTA URL | Yes       | Sent as a link           |

Other limits the channel applies:

* **Media caption**: 3000 characters
* **Body of messages with buttons**: 3000 characters
* **File name**: 255 characters
* **Option not found message**: 250 characters

## Channel limitations

In the builder, some nodes and tools are not available on the **Slack** channel because they depend on WhatsApp or other integrations.

### Unavailable nodes and blocks

* HSM template
* WhatsApp Flows
* Video
* Audio
* Document and File
* Sticker
* Carousel
* Numbered list
* Webview
* Location
* Contact
* Quick replies
* Payments
* Connect (advisor)
* Biometrics
* Human handoff (HubSpot, Genesys, or others)

### Unavailable AI Agent tools

* Call to action (`send_call_to_action`)
* Transfer to agent (`transfer_to_agent`)
* Jelou Shop

## Next steps

Once the channel is connected:

1. Send a direct message to the bot from Slack to verify the connection
2. Check the execution logs in Brain Studio to confirm the flow runs
3. Adjust the flow using the blocks the channel supports

<Tip>
  Test the channel with a real user from your workspace before publishing, to confirm the Events and Interactivity Request URLs were set correctly.
</Tip>
