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

# Slack

> Connect Slack in one click and get campaign messages in a channel or a direct message.

> [!NOTE]
>
> **Pro plan.** Slack is part of Pro and Agency (and the free trial). In-app and email notifications are on every plan. A Slack workspace you already connected keeps working. See [Plans and billing](/help/account/billing.md).

Connect your Slack workspace once and your campaigns can post in a channel ("Ana from Acme viewed your profile") or send a direct message to a teammate. No keys to copy: you approve Kerux in Slack.

**1. Connect Slack**

Go to **Integrations > Connections** and click **Connect** on the **Slack** row (under **Messaging**). Slack opens: pick your Slack workspace and click **Allow**. You come back to Kerux with "Slack is connected". Only workspace admins (and the owner) can connect Slack.

**2. Add a Slack step**

In your campaign, click **+** and choose **Notify on Slack** (in **Team**), or open the **Automations** tab of **Add a step** for every Slack step. The step is added right away, with no questions first, and its panel opens on the right. On the canvas each one shows as **Slack** with what it does under it (**Slack message**, **Slack direct message** or **Find a person in Slack**); click it to open its panel again.

* **Slack: send a message to a channel or a person**: in the step's panel, the **Account** is already chosen if you connected one Slack workspace (with several, pick one; with none, click **Connect Slack** right there). Pick **Send to**: click the field and a window opens with a search box (channels start with #, people with @; a person gets it from the Kerux app, in its Messages tab; **Reload** reads the list again). The **Message** comes written for you (the contact, their company, the campaign's name and link): change it with the same tools as a LinkedIn message (variables, **Templates**, **Write with AI**, fallbacks). Every change is saved at once. The technical request is under **Advanced**, if you ever need it.
* **Slack: send a direct message (by email)**: type your teammate's email in **Their email in Slack** and change the message if you want.
* **Slack: find a user by email**: looks the person up in your Slack, so later steps can use `{{steps.<step>.user_id}}` or `{{steps.<step>.name}}`.

**3. Finish the step**

Until **Send to** is picked, the step's card says **Not finished: Send to** and the campaign can't be turned on: the [Preflight](/help/campaigns/launch.md) check lists it with a **Fix** button that opens the step.

**4. Personalize the message**

Use contact details like `{{contact.first_name}}` and `{{contact.company}}` in the message. An empty name or company uses your workspace's default (see [Variables](/help/campaigns/variables.md#when-a-contact-has-no-value)); any other empty detail makes Kerux wait instead of sending a message with a blank, and shows it in **Home > Tasks**.

> [!TIP]
>
> Building with AI? Ask for something like "everyone who views my profile, send me a message in Slack in #sales". If Slack isn't connected yet, the campaign opens with **Before you continue, connect Slack** and a button that takes you to Slack and back. To message a person, the AI uses the **Send to** list: if it doesn't know who, the notes ask you to **Finish the Slack step** and you pick the person there (no email needed).

## Channels

Every public channel is in the list, and Kerux can post there even if its app isn't a member. For a **private channel**, first add the Kerux app to it in Slack (open the channel, click its name, then **Integrations > Add apps**), then click **Reload** next to the channel list.

## Reconnect or disconnect

In **Integrations > Connections**, the Slack row says **Connected**, **Not connected** after you click **Disconnect**, or **Needs attention** when Slack stopped accepting Kerux without anyone disconnecting it (for example the app was removed in Slack). Click **Slack** on the row to open its panel and see which Slack workspace is connected.

* **Reconnect** (in the Slack panel, or **Fix** on the row) if Slack asks you to (for example after someone removed the app in Slack). Your steps keep working with the new connection.
* **Disconnect** (on the row or in the panel) removes Kerux's access in Slack too. The row then says **Not connected** with **Connect**. Steps that use Slack wait until someone connects it again; nothing is lost.

## Common problems

> [accordion] The Slack row says Not available yet
>
> The Slack connection isn't available yet. Try again later, or contact support from the chat.

> [accordion] A contact stopped with a Slack error
>
> The contact stops in **Home > Tasks** with Slack's reason, for example `channel_not_found` (the channel was deleted or the app can't see it) or `users_not_found` (nobody in your Slack uses that email). Fix it in the step, then click **Retry** on the contact.

> [accordion] Contacts are paused: the other service rejected the key
>
> Slack no longer accepts Kerux's access (the app was removed in Slack, or someone clicked Disconnect). Click **Fix** on the Slack row (if its panel opens, click **Reconnect** there), or **Connect** if the row says **Not connected**; the waiting contacts continue on their own.

> [accordion] My teammate doesn't see the direct message
>
> The message comes from the Kerux app. In Slack, they find it under **Apps > Kerux** in the sidebar.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.