Notification Action
Push real-time notifications to Slack or Discord when webhook events flow through your pipeline. Build rich messages with the visual block editor and use template variables for dynamic content.
Overview
The Notification Action is a terminal node — it receives payloads from upstream nodes and sends a formatted message to a webhook URL. Connect it to any node in your pipeline via the visual canvas.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Unique name for the notification action |
| platform | string | Yes | slack or discord |
| webhookUrl | string | Yes | Incoming webhook URL for the platform |
| messageBlocks | object | No | Visual message builder config (title, color, blocks). Takes priority over templatePreset. |
| templatePreset | string | No | delivery_failed, event_received, health_changed, or custom. Fallback when messageBlocks is empty. |
| triggerOn | string | No | success, failure, or always. Default: failure. |
| isActive | boolean | No | Enable or disable without deleting. Default: true. |
Message Blocks
The message builder supports 5 block types that you can combine to create rich notifications:
| Block | Description |
|---|---|
| text | Free-form text with markdown support and template variables |
| fields | Key-value pairs displayed in a grid (label + template value) |
| image | Image URL with alt text |
| divider | Horizontal separator line |
| button | Clickable link button with label and URL |
Template Variables
All text fields in the message builder support template interpolation. Type {{ to trigger autocomplete with available variables and pipes.
Context Variables
These variables are automatically available from the pipeline execution context:
| Variable | Description |
|---|---|
| {{webhookName}} | Name of the webhook that received the event |
| {{eventId}} | Unique event identifier |
| {{status}} | Delivery status: delivered or failed |
| {{error}} | Error message (empty on success) |
| {{attempts}} | Number of delivery attempts |
| {{dashboardUrl}} | Direct link to the event in the dashboard |
Payload Variables
| Variable | Description |
|---|---|
| {{payload}} | Full JSON payload object |
| {{payload.field}} | Access a specific field from the payload |
| {{payload | preview}} | Pretty-printed JSON, truncated at 2500 characters |
| {{payload | json}} | Full pretty-printed JSON |
| {{payloadPreview}} | Deprecated — use {{payload | preview}} instead |
Pipes
Pipes transform values inline. Add a pipe after any variable with |:
{{payload.amount | currency}} → $1,234.56
{{payload.name | upper}} → JOHN DOE
{{payload.createdAt | formatDate}} → 2026-04-03
{{payload | preview}} → truncated JSONCross-Node References
Access data from other nodes in the same workspace using $("Node Name").field:
Processed by: $("My Filter").status
Original amount: $("Stripe Webhook").payload.amount```{{payload | preview}}```Template Presets
Load a preset from the detail page sidebar to quickly configure common notification formats. Presets populate the message blocks with pre-configured content.
| Preset | Use Case |
|---|---|
| Delivery Failed | Alert when a webhook delivery fails. Includes webhook name, error, retry count, and dashboard link. |
| Event Received | Notify when a new event arrives. Shows event ID, webhook, and payload preview. |
| Health Changed | Alert on webhook health status changes (healthy/degraded/down). |
Canvas Integration
The Notification node uses the canvas type notificationAction and is rendered with an indigo/pink color scheme. As a terminal node, it has input handles but no output handles.
Connect it to any upstream node (webhooks, filters, transforms, conditionals, etc.) by dragging a connection line on the canvas. The node displays the platform badge, name, and trigger mode.
Use Cases
Team Visibility on Slack
Keep your team informed of every webhook event in a dedicated Slack channel. Use the message builder to include key fields like customer name, amount, and status.
Incident Response
Set triggerOn to failure and send alerts with error details, retry count, and a dashboard link for quick investigation.
Discord Community Updates
Send formatted embed messages to a Discord channel for public-facing events like new releases, order confirmations, or status changes.
Multi-Platform Alerting
Attach multiple notification actions to the same pipeline targeting different platforms and trigger modes. For example, Slack on success for visibility and a separate alert on failure for incident response.
API Reference
| Method | Webhook | Description |
|---|---|---|
| GET | /api/notification-actions | List all notification actions |
| POST | /api/notification-actions | Create a new notification action |
| GET | /api/notification-actions/:id | Get a notification action by ID |
| PUT | /api/notification-actions/:id | Update a notification action |
| DELETE | /api/notification-actions/:id | Delete a notification action |
| POST | /api/notification-actions/:id/test | Send a test notification with optional payload |