Examples
Worked workflow patterns using the Slack node
1. Post a deployment notification
Send a formatted message to a channel when a CI pipeline finishes.
{
"resource": "message",
"operation": "send",
"credentialID": 12,
"channel": "#deployments",
"text": "*Deploy succeeded* :rocket: — build #482 is live on production.",
"iconEmoji": ":rocket:"
}
2. Create a channel per new project, then invite the team
// Step 1 — create
{
"resource": "channel",
"operation": "create",
"credentialID": 12,
"name": "proj-atlas",
"isPrivate": true
}
// Step 2 — invite (channelId from Step 1's output)
{
"resource": "channel",
"operation": "invite",
"credentialID": 12,
"channelId": "{{step1.output.channelId}}",
"userIds": "U01ABCDE,U02FGHIJ,U03KLMNO"
}
3. Acknowledge a support request with a reaction, then reply in-thread
// Step 1 — react
{
"resource": "reaction",
"operation": "add",
"credentialID": 12,
"channel": "C0123456789",
"messageTs": "{{trigger.messageTs}}",
"emojiName": "eyes"
}
// Step 2 — reply in thread
{
"resource": "message",
"operation": "send",
"credentialID": 12,
"channel": "C0123456789",
"threadTs": "{{trigger.messageTs}}",
"text": "Thanks for reporting this — looking into it now."
}
4. Share a generated report file
{
"resource": "file",
"operation": "upload",
"credentialID": 12,
"fileName": "weekly-report.pdf",
"fileContentBase64": "{{previousStep.output.pdfBase64}}",
"channelId": "#reports",
"title": "Weekly Report — Week 30"
}
5. Look up an approver's presence before pinging them
// Step 1 — check presence
{
"resource": "user",
"operation": "getStatus",
"credentialID": 12,
"userId": "U04APPROVER"
}
// Step 2 — DM only if active (condition node between steps checks the output)
{
"resource": "channel",
"operation": "open",
"credentialID": 12,
"userIds": "U04APPROVER"
}
6. Ephemeral confirmation after a slash-command-triggered action
{
"resource": "message",
"operation": "send",
"credentialID": 12,
"channel": "C0123456789",
"ephemeral": true,
"targetUserId": "U0REQUESTER",
"text": "Your request has been submitted for approval."
}
7. Sync a Slack user group from an external roster
{
"resource": "userGroup",
"operation": "addUsers",
"credentialID": 12,
"userGroupId": "S0123456",
"userIds": "U01ABCDE,U02FGHIJ,U03KLMNO"
}
Remember:
userGroup/addUsers replaces the entire membership list — build the full comma-separated userIds string from your source of truth before calling it, not just the users you want to add.