Slack

Last updated on May 21, 2026

PreviewThis feature is in preview, so its scope and behavior may change. Request access.

The Slack integration posts a message to a Slack channel whenever a workflow fires. It uses Slack's incoming webhooks, so you do not need an OAuth app, scopes, or rotating tokens to wire it up.

Connect Slack

You connect Slack once per channel by creating an incoming webhook and pasting the URL into a workflow action.

In Slack, create an incoming webhook and pick the channel it will post into.

Copy the webhook URL Slack generates.

In TofuPilot, add a Send Slack message action to a workflow and paste the webhook URL into the configuration panel.

Repeat the flow once per channel. A single workflow can post to multiple channels by chaining Slack actions together.

Fields

The action takes two required fields and two optional overrides that you can use to customize how the message appears in the channel.

FieldRequiredPurpose
Webhook URLYesSlack incoming webhook URL. The channel is baked into the URL.
MessageYesPlain text. Supports {{variable}} interpolation. Markdown is rendered by Slack.
UsernameNoOverride the bot name.
Icon emojiNoOverride the bot icon (e.g. :warning:).

Limits

Slack rate-limits incoming webhooks, so you should keep an eye on burst patterns when wiring high-volume triggers.

  • Slack rate limits webhooks. Bursts past 1 message/second risk being dropped.
  • Message body: 40 KB.

How is this guide?

On this page