Slack
Send messages, manage channels, files, reactions, users, and user groups in Slack — as drag-and-drop workflow steps
slack, also registered as slack-message) exposes 42 operations across 6 resources — message, channel, file, reaction, user, userGroup — against the Slack Web API. Every operation authenticates with a Slack bot token (or a vault-stored credential) and returns a standard success/error output shape for downstream nodes.
Quick Start
- Add a Slack node to your workflow
- Set
resourcetomessageandoperationtosend - Provide a
botToken(or acredentialIDpointing at a stored vault credential) - Enter a
channel(e.g.#generalorC1234567890) andtext - Run the workflow — the node posts the message and returns its
messageTsand channel
resource, operation, botToken (or credentialID) —
plus a small set of operation-specific fields. Learn the pattern once on
Input & Output and every operation below follows it.
Pages in This Guide
Configuration
Credential resolution, DI registration, rate limiting, and timeouts.
Authentication & Setup
Creating a Slack App, bot vs. user tokens, and OAuth scopes per operation.
Message Operations
send, sendAndWait, sendEphemeral, update, delete, getPermalink, search.
Channel Operations
17 operations — create, archive, invite, history, replies, topic/purpose, and more.
File Operations
upload, get, and getMany — sharing files into channels.
Reaction Operations
add, get, and remove emoji reactions on messages.
User Operations
get, getMany, getProfile, getStatus, updateProfile.
User Group Operations
create, enable, disable, update, membership management.
Input & Output
The shared config-key pattern, output ports, and standard result fields.
Examples
Worked workflow patterns using this node.
Troubleshooting
Common Slack error codes and how to fix them.
Roadmap
sendAndWait (HITL) — what's blocking it and what's coming.
Core Concepts
Resources
Operations are grouped by resource, matching Slack's own API surface:
- message — post, update, delete, search, and thread messages (
chat.*,search.*) - channel — create, list, and manage conversations (
conversations.*) - file — upload and look up files (
files.*) - reaction — add/remove/list emoji reactions (
reactions.*) - user — look up and update workspace members (
users.*) - userGroup — manage Slack user groups / subteams (
usergroups.*)
Authentication
Most operations run on a bot token (xoxb-...) supplied inline via the botToken config key, or resolved from the credential vault via credentialID. A few operations — message/search and user/updateProfile — require a user-level OAuth token (xoxp-...) instead, because Slack does not expose those endpoints to bots. See Authentication & Setup.
Rate Limiting
Every Slack HTTP call goes through SlackRateLimitHandler, which automatically retries up to 3 times on HTTP 429, honoring Slack's Retry-After header. See Configuration.
Operation Summary
| Resource | Operations | Guide Page |
|---|---|---|
message | send, sendAndWait*, sendEphemeral, update, delete, getPermalink, search | Message Operations |
channel | archive, close, create, get, getMany, getHistory, invite, join, kick, leave, getMembers, open, rename, getReplies, setPurpose, setTopic, unarchive | Channel Operations |
file | upload, get, getMany | File Operations |
reaction | add, get, remove | Reaction Operations |
user | get, getMany, getProfile, getStatus, updateProfile | User Operations |
userGroup | create, disable, enable, getMany, getUsers, addUsers, update | User Group Operations |
* sendAndWait sends the message but currently returns an ENGINE_NOT_SUPPORTED error instead of suspending the workflow — see Roadmap.