Slack Node
Send messages, manage channels, post reactions, upload files, and manage Slack users from your workflows. Use it to alert your team on new orders, payment failures, or errors.
Prerequisites
- A Slack workspace where you have permission to add apps
- A Slack Bot Token (starts with
xoxb-) or an Incoming Webhook URL - For Bot Token: invite the bot to the channel with
/invite @yourbot
Credentials
| Field | Description | Where to find it |
|---|---|---|
| Bot Token | OAuth bot token for posting messages and managing channels | api.slack.com → Your App → OAuth & Permissions → Bot User OAuth Token |
| Webhook URL | Alternative to Bot Token — simpler but send-only | api.slack.com → Your App → Incoming Webhooks → Add New Webhook |
Operations
Send Message
Post a message to a Slack channel or user. Supports plain text and Block Kit blocks for rich formatting.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
channel | string | Yes | — | Channel name (e.g. #orders) or user ID. Supports {{variables}}. |
text | string | Yes | — | Message text. Supports {{variables}} and Slack markdown. |
blocks | JSON | No | — | Block Kit JSON for rich formatting (buttons, sections, images) |
jsonOutput
{
"slack": {
"ts": "1712051400.123456",
"channel": "C07ABCDEF12",
"message": {
"text": "New order received",
"ts": "1712051400.123456"
}
}
}textExample — order alert
Razorpay Trigger (payment.captured)
→ Slack — Send Message
channel: #orders
text: "💸 New payment from {{razorpayTrigger.payload.payment.entity.email}}
Amount: ₹{{razorpayTrigger.payload.payment.entity.amount}} paise
Payment ID: {{razorpayTrigger.payload.payment.entity.id}}"Other Operations
The Slack node supports 25 operations across messages, channels, users, reactions, and files:
| Category | Operations |
|---|---|
| Messages | Send Message · Update Message · Delete Message · Get Message · Get Thread |
| Channels | Create Channel · Archive Channel · Invite to Channel · Get Channel Info · List Channels |
| Users | Get User · Get User by Email · List Users |
| Reactions | Add Reaction · Remove Reaction · Get Reactions |
| Files | Upload File · Get File · List Files · Delete File |
Complete Workflow Examples
Workflow Error Alerting
Use case: When any node in a workflow fails, send an alert to Slack with the error details.
textWorkflow
Error Trigger
→ Slack — Send Message
channel: #alerts
text: "🚨 Workflow error!
Node: {{errorTrigger.failedNodeName}} ({{errorTrigger.failedNodeType}})
Error: {{errorTrigger.message}}
Workflow: {{errorTrigger.workflowId}}
Time: {{errorTrigger.failedAt}}"Daily Payment Summary
Use case: Send a daily Slack summary of payments received.
textWorkflow
Schedule Trigger (daily at 9 AM IST)
→ Razorpay — List Payments
count: 100
→ Code Node
const payments = $.get('razorpay.items');
const total = payments.reduce((sum, p) => sum + p.amount, 0);
return { total, count: payments.length };
→ Slack — Send Message
channel: #finance
text: "📊 Yesterday's payments:
Count: {{code.count}}
Total: ₹{{code.total}} paise"Common Issues & Solutions
| Issue | Cause | Solution |
|---|---|---|
| not_in_channel error | Bot not invited to channel | Run /invite @yourbot in the Slack channel |
| invalid_auth error | Bot token expired or incorrect | Re-generate the Bot User OAuth Token in your Slack app settings |
| channel_not_found | Wrong channel name format | Use the channel ID (C07ABCDEF12) instead of #channel-name for reliability |
Related Nodes
- Error Trigger — alert Slack when a workflow node fails
- Razorpay Trigger — notify Slack on new payments
- Gmail — send email alongside Slack notification