Slack

Campaign Workflow Slack Actions

Send Slack messages from campaign automations when a workflow step reaches a contact.

Campaign workflow Slack actions let a campaign post to Slack as part of an automation path. Use them when a team should be notified while a contact moves through an onboarding, lifecycle, recovery, or sales workflow.

Before you start

  • Create at least one Slack destination, or be ready to create one from the workflow node modal.
  • Know which Slack channel should receive the campaign notification.
  • Draft a required text fallback.
  • Prepare optional Block Kit JSON if the message needs richer formatting.
  • Decide where the Send Slack node belongs in the campaign flow.

Add a Send Slack node

Open the campaign editor

Open a campaign from Messaging -> Campaigns, then select the Editor tab.

Add an action

Add an action node and choose Send Slack.

Select a destination

Choose an existing Slack destination, or switch to Create new and create one from the modal.

Configure the message

Enter the text fallback and optional Block Kit JSON. Use template variables to include event, workspace, contact, campaign, workflow, node, delivery, or destination context.

Send a test

Use Send Test in the node modal to send a slack.test delivery with the current templates.

Save the node

Save the workflow node after the destination and message templates are configured.

When the node runs

When a campaign reaches a Send Slack node, Leadpush:

  1. loads the selected Slack destination
  2. creates a campaign.slack delivery
  3. renders the text fallback and Block Kit template with campaign workflow context
  4. dispatches the Slack delivery
  5. stores rendered text, rendered blocks, Slack response metadata, and attempts in delivery history

The workflow action records the Slack delivery UUID and destination UUID on the action result.

Useful campaign variables

VariableDescription
campaign.uuidCampaign UUID.
campaign.nameCampaign name.
workflow.execution_uuidWorkflow execution UUID.
workflow.current_step_uuidCurrent workflow step UUID.
node.idSend Slack node id.
node.typeNode type, usually send_slack.
contact.attributes.emailContact email when present.
event.typecampaign.slack for campaign workflow deliveries.
delivery.uuidSlack delivery UUID after the delivery is created.

Example campaign message

Text fallback:

{{ campaign.name }} reached {{ node.id }} for {{ contact.attributes.email }}

Block Kit JSON:

[
  {
    "type": "section",
    "text": {
      "type": "mrkdwn",
      "text": "*{{ campaign.name }}* reached `{{ node.id }}` for {{ contact.attributes.email }}"
    }
  }
]

Campaign Slack strategy

Use Slack actions for high-signal workflow moments, such as:

  • a qualified contact entering a sales handoff path
  • a failed recovery or re-engagement branch
  • a VIP contact reaching a manual review step
  • an internal campaign QA path during launch

Avoid adding Slack actions to very high-volume paths unless the destination channel is designed for that volume.

Troubleshooting