Slack
Communication integration · 13 node(s) including 1 trigger.
00Overview
Every field below is exactly what you see in the Flomation editor. Fields marked ● live picker let you choose from a list pulled live from your account — no IDs to look up.
01Connecting Slack
Add your credentials as a Flomation environment secret, then pick them in each node. The connection fields are:
${secrets.your_secret}.02Channel
Channel Action
slack/channel_action · Action
Send a channel-specific action like a typing indicator. Use this before long-running operations to show the user the agent is working.
| Field | Type | Details | |
|---|---|---|---|
| Channel Type | string | Required | telegram, slack, etc. — choices: Telegram, Slack |
| Action | string | Required | typing — choices: Typing, Upload Photo, Upload Document, Record Video, Record Voice, Find Location |
| Chat ID | string | Required | Target chat/channel ID |
| Agent ID | string |
Returns: success, message
03Channels
Slack Channels
slack/channels · Action
List or search Slack channels. Returns channel names, IDs, topics, and member counts
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Optional filter: only return channels whose name contains this text | string | ||
| Max channels to return (default 50, max 200) | string | ||
| Include private channels the bot is a member of (default false) | boolean |
Returns: tool_result, channels, count, success, error
04File
Slack File Upload
slack/file_upload · Action
Upload a file to a Slack channel. Accepts a flo:blob token, base64, or text.
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Channel ID | string | Required | ${channel_id} |
| File to upload (flo:blob: token from an upstream action) | string | ||
| File bytes as base64 (alternative to file_blob) | string | ||
| File content as text (for code snippets, CSV, logs, etc.) | text | ||
| Filename including extension (e.g. report.csv, photo.png, data.json) | string | Required | |
| Display title for the file in Slack (optional, defaults to filename) | string | ||
| Message to post alongside the file (optional) | string |
Returns: tool_result, file_id, success, error
05History
Slack Channel History
slack/history · Action
Read recent messages from a Slack channel. Uses conversations.history API.
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Channel ID | string | Required | C01ABC2DEF3 |
| Number of messages (default 20, max 100) | string | ||
| Oldest timestamp (Unix ts or ISO date, e.g. 2026-04-28) | string |
Returns: tool_result, messages, count, success, error
06React
Slack Add Reaction
slack/react · Action
Add an emoji reaction to a Slack message. Use emoji name without colons.
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Channel ID | string | Required | C01ABC2DEF3 |
| Message Timestamp | string | Required | 1234567890.123456 |
| Emoji Name (without colons) | string | Required | thumbsup |
Returns: tool_result, success, error
07Rich
Slack Rich Message
slack/rich_message · Action
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | xoxb-... | |
| Channel ID | secret | ${channel_id} | |
| Fallback text shown in notifications and accessibility (plain summary of the message) | text | Required | |
text | Required | ||
| Thread timestamp to reply in (optional) | string | ||
| Legacy attachments JSON array — colour bars, fields, footers (optional) | text |
Returns: tool_result, timestamp, success, error
08Search
Slack Search Messages
slack/search · Action
Search Slack messages. Requires a user token (xoxp-), not a bot token. Supports modifiers: from:user, in:channel, before:date, after:date
| Field | Type | Details | |
|---|---|---|---|
| User Token (required — search needs a user token, not bot token) | secret | Required | xoxp-... |
| Search query. Supports Slack search modifiers: from:@user, in:#channel, before:2026-04-20, after:2026-04-01, has:link | string | Required | |
| Max results to return (default 10, max 100) | string | ||
| Sort order: score (relevance) or timestamp (recent first). Default: score | string |
Returns: tool_result, messages, total, success, error
09Send
Send Slack Message
slack/send_message · Action
Send a message to a Slack channel via the Bot API with mrkdwn formatting and optional Block Kit layouts
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Channel ID | secret | Required | ${channel_id} |
| Message | text | Required | Hello from Flomation! Use *bold*, _italic_, `code` |
| Thread ID | string | ${thread_id} | |
| Block Kit JSON | text | [{"type":"section","text":{"type":"mrkdwn","text":"*Rich* message"}}] | |
| Attachments JSON | text | [{"color":"#36a64f","text":"Attachment text"}] | |
| Unfurl Links | boolean |
Returns: tool_result, timestamp, success, error
10Thread
Slack Thread Replies
slack/thread · Action
Read replies in a Slack thread. Requires the channel ID and thread timestamp.
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Channel ID | string | Required | C01ABC2DEF3 |
| Thread Timestamp | string | Required | 1234567890.123456 |
| Number of replies (default 50, max 200) | string |
Returns: tool_result, messages, count, success, error
11User
Slack User Profile
slack/user_profile · Action
Get a Slack user's full profile by user ID. Returns name, email, title, phone, timezone, status, and avatar
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Slack user ID (e.g. U01ABCDEF). Use slack_users to find IDs by name | string | Required |
Returns: tool_result, profile, real_name, display_name, email, title, timezone, status_text, success, error
12Users
Slack Users
slack/users · Action
List or search Slack workspace members. Returns display names, real names, email addresses, and status
| Field | Type | Details | |
|---|---|---|---|
| Bot Token | secret | Required | xoxb-... |
| Optional filter: only return users whose name or display name contains this text | string | ||
| Max users to return (default 50, max 200) | string |
Returns: tool_result, users, count, success, error
13Webhook
Slack Webhook
slack/webhook · Action
Send a message to a Slack channel via webhook with mrkdwn formatting and optional Block Kit layouts
| Field | Type | Details | |
|---|---|---|---|
| Webhook URL | string | Required | https://hooks.slack.com/services/... |
| Message | text | Required | Hello from Flomation! Use *bold*, _italic_, `code` |
| Username Override | string | Flomation Bot | |
| Icon Emoji | string | :robot_face: | |
| Block Kit JSON | text | [{"type":"section","text":{"type":"mrkdwn","text":"*Rich* message"}}] | |
| Attachments JSON | text | [{"color":"#36a64f","text":"Attachment text"}] |
Returns: tool_result, status_code, success, error
14Triggers
Slack Trigger
trigger/slack · Trigger
Triggers a flow when a Slack message or app mention is received
| Field | Type | Details | |
|---|---|---|---|
| Connection Mode | string | events_api — choices: Events API (HTTP webhooks), Socket Mode (WebSocket, no public URL) | |
| Bot Token | secret | Required | xoxb-... or ${secrets.slack_bot_token} |
| App-Level Token (Socket Mode only) | secret | xapp-1-... | |
| Signing Secret (Events API request verification) | secret | ${secrets.slack_signing_secret} | |
| App ID (optional) | string | Axxxxxxxxxx |
Returns: user_id, user_name, display_name, sender, channel_id, content, timestamp, thread_ts, team_id, event_id, event_type, agent_id, channel_type
15Notes & Limitations
Behaviours and constraints worth knowing before you build with these nodes.
- Message search is only available when the flow is connected with a user token (
xoxp-); a bot token cannot run searches. - The bot must be invited to a channel before it can post there, upload files, or read that channel's history and thread replies — this matters most for private channels.
- Slack's mrkdwn uses single asterisks for bold and underscores for italic, so text pasted from standard Markdown may not render as intended.
- Channel and member listings return only the conversations and people the connected app can see, and large workspaces are paged rather than returned all at once.
- Reactions must reference an emoji by name without surrounding colons, and custom emoji only work if they already exist in the workspace.