Slack
Overview
Section titled “Overview”Slack is a channel-based messaging platform that connects teams and tools in a single environment. With the Slack integration in SquadOS, your agents can send and read messages, create and archive channels, search conversations, upload files, and manage users — all programmatically, without manual intervention.
- Official website: https://slack.com/
- Composio documentation: docs.composio.dev/toolkits/slack
Authentication
Section titled “Authentication”This tool uses OAuth 2.0 (OAUTH2) to connect.
Authentication is managed by Composio via a hosted OAuth flow. You authorize access to your Slack workspace on the Composio secure connection page — no manual API key required.
| Field | Required | Description |
|---|---|---|
oauth_token | Yes | OAuth token automatically generated by the Slack authorization flow. Managed by Composio. |
How to get credentials
Section titled “How to get credentials”- Go to Tools in the side menu (
/admin/tools), open the Available tab, and click the Slack card. - Click Connect — you will be redirected to the Composio secure authorization page.
- Click Allow to authorize Composio’s access to your Slack workspace.
- After authorization, you are returned to SquadOS with the Slack account connected.
How to connect in SquadOS
Section titled “How to connect in SquadOS”- Go to Tools in the side menu (
/admin/tools). - Open the Available tab and search for
Slack. - Click the card to open the details modal and hit Connect.
- You’re taken to the secure connection page hosted by Composio, where you authorize access (OAuth) to your Slack workspace.
- Once done, you’re sent back to SquadOS with the account connected and the tool available to agents. (Connection-flow details in Organization Tools.)
What does the Composio + Slack integration do?
Section titled “What does the Composio + Slack integration do?”Composio turns Slack’s API into ready-to-use tools that AI agents and automations can call. With the integration you can send and read messages, manage channels, upload files, react to events, search conversations, and more. Composio supports two toolkits: Slack (authenticate as a user for workspace-level actions) and Slackbot (authenticate as a bot for in-channel messaging, app mentions, and slash commands).
Do I have to be a Workspace Owner to install the app?
Section titled “Do I have to be a Workspace Owner to install the app?”In some cases — yes. When installing non-Marketplace apps, you’ll need to be an owner to install directly. As a member, you’d need to request approval or ask the owner to disable the approved apps requirement.
Why am I being asked to submit a request during auth?
Section titled “Why am I being asked to submit a request during auth?”Because Require approved apps is enabled in the workspace’s App Management Settings. Slack is asking for admin/owner approval before completing the install. See the Composio guide for using your own OAuth credentials as an alternative.
What is the difference between Slack and Slackbot toolkits?
Section titled “What is the difference between Slack and Slackbot toolkits?”The Slack toolkit provides workspace-level API access (channels, files, users) and can post as the app. The Slackbot toolkit is bot-centric (messaging, interactivity) and posts as the bot user. Slack triggers cover workspace events; Slackbot covers bot entry points like app mentions, DMs, and slash commands.
What does the as_user parameter do in Slack tools?
Section titled “What does the as_user parameter do in Slack tools?”For the Slack toolkit, set as_user=true to post as the authenticated user. For Slackbot, leave it blank (defaults to false). A missing_charset error usually means invalid as_user, wrong channel ID, or missing required fields.
Available actions
Section titled “Available actions”Send message
Section titled “Send message”SLACK_SEND_MESSAGE
Posts a message to a Slack channel, DM, or private group. Provide exactly one visible content mode: markdown_text for normal Markdown content, or blocks for raw Slack Block Kit layouts. Use fallback_text only with blocks. Not idempotent — duplicate calls post duplicate messages.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | Yes | ID or name of the channel, private group, or IM channel to send the message to. Do NOT include the ’#’ prefix. For DMs, use the channel ID returned by SLACK_OPEN_DM. |
markdown_text | string | No | Use for normal LLM-written message content. Pass standard Markdown; supports headings, bold, italic, links, lists, code, quotes, dividers, and tables. |
blocks | array | No | Use only when you need Slack Block Kit capabilities that Markdown cannot express: buttons, select menus, checkboxes, date/time pickers, etc. Do not use together with markdown_text. |
thread_ts | string | No | Timestamp (ts) of an existing message to make this a threaded reply. |
fallback_text | string | No | Required only when using blocks. Plain text for notifications and clients that cannot render blocks. |
unfurl_links | boolean | No | Enable unfurling of text-based URLs. |
unfurl_media | boolean | No | Enable media previews from URLs. |
reply_broadcast | boolean | No | If true for a threaded reply, also posts to main channel. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Send message (legacy)
Section titled “Send message (legacy)”SLACK_CHAT_POST_MESSAGE
(DEPRECATED: use SLACK_SEND_MESSAGE) Posts a message to a Slack channel, DM, or private group. Requires at least one content field (markdown_text, text, blocks, or attachments). Body limit ~4000 characters. Rate-limited at ~1 req/sec.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | Yes | ID or name of the channel, private group, or IM channel. |
markdown_text | string | No | PREFERRED: Write your message in markdown for nicely formatted display. |
text | string | No | DEPRECATED: This sends raw text only; use the markdown_text field. |
blocks | string | No | DEPRECATED: Use markdown_text instead. Block Kit layout blocks as JSON string. |
thread_ts | string | No | Timestamp of an existing message for threaded reply. |
link_names | boolean | No | Automatically hyperlink channel names and usernames in the text. |
unfurl_links | boolean | No | Enable unfurling of URLs. |
unfurl_media | boolean | No | Enable media previews. |
reply_broadcast | boolean | No | If true for a threaded reply, also posts to main channel. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Schedule message
Section titled “Schedule message”SLACK_SCHEDULE_MESSAGE
Schedules a message to a Slack channel, DM, or private group for a future time (post_at). Scheduling is limited to 120 days in advance.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | Channel, private group, or DM channel ID (e.g., C1234567890) or name. Bot must be a member of the target channel. |
post_at | string | No | Unix EPOCH timestamp (integer seconds since 1970-01-01 00:00:00 UTC) for the future message send time. |
markdown_text | string | No | PREFERRED: Write your scheduled message in markdown for nicely formatted display. |
text | string | No | Primary text of the message; use markdown_text for formatting. |
thread_ts | string | No | Timestamp of the parent message for the scheduled message to be a thread reply. |
unfurl_links | boolean | No | Pass false to disable automatic link unfurling. |
unfurl_media | boolean | No | Pass false to disable automatic media unfurling. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Send ephemeral message
Section titled “Send ephemeral message”SLACK_SEND_EPHEMERAL_MESSAGE
Sends an ephemeral message visible only to the specified user in a channel; other channel members cannot see it. Both the bot and the target user must be members of the specified channel.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
user | string | Yes | User ID of the user to send the ephemeral message to. |
channel | string | Yes | Channel, private group, or DM channel to send message to. |
markdown_text | string | No | PREFERRED: Write your ephemeral message in markdown. Maximum 12,000 characters. |
text | string | No | The message text to display. Required unless ‘blocks’ or ‘attachments’ is provided. |
thread_ts | string | No | Provide another message’s ts value to make this message a reply. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Create channel
Section titled “Create channel”SLACK_CREATE_CHANNEL
Initiates a public or private channel-based conversation in a Slack workspace. Immediately creates the channel; invoke only after explicit user confirmation.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Name of the public or private channel to create. Must be lowercase, unique, and contain no spaces or periods; max 80 characters. |
is_private | boolean | No | Create a private channel instead of a public one. |
team_id | string | No | Encoded team id to create the channel in, required if org token is used. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Delete channel
Section titled “Delete channel”SLACK_DELETE_CHANNEL
Permanently and irreversibly deletes a specified public or private channel, including all its messages and files, within a Slack Enterprise Grid organization.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel_id | string | Yes | ID of the channel to be permanently deleted. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Archive a Slack conversation
Section titled “Archive a Slack conversation”SLACK_ARCHIVE_CONVERSATION
Archives a Slack conversation by its ID, rendering it read-only and hidden while retaining history. Ideal for cleaning up inactive channels; be aware that some channels (like #general or certain DMs) cannot be archived.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | ID of the Slack conversation to archive. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Unarchive channel
Section titled “Unarchive channel”SLACK_UNARCHIVE_CHANNEL
Reverses conversation archival.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | Yes | ID of conversation to unarchive. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Rename a conversation
Section titled “Rename a conversation”SLACK_RENAME_CONVERSATION
Renames a Slack channel, automatically adjusting the new name to meet naming conventions (e.g., converting to lowercase), which may affect integrations using the old name.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | ID of the conversation (channel) to rename. |
name | string | No | New name for the conversation. Must be 80 characters or less and contain only lowercase letters, numbers, hyphens, and underscores. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
List all channels
Section titled “List all channels”SLACK_LIST_ALL_CHANNELS
Lists conversations available to the user with various filters and search options. Always use resolved channel_id (not display names) for downstream operations, as names may be non-unique.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | No | Maximum number of channels to return per page (1 to 1000). |
types | string | No | Comma-separated list of conversation types: public_channel, private_channel, im, mpim. Defaults to public_channel. |
cursor | string | No | Pagination cursor (from next_cursor of a previous response). |
team_id | string | No | Encoded team id to list channels in. Required with org token. |
exclude_archived | boolean | No | Excludes archived channels if true. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
List conversations
Section titled “List conversations”SLACK_LIST_CONVERSATIONS
Lists conversations (channels/DMs) accessible to a specified user (or the authenticated user if no user ID is provided). Returns conversation IDs (C* for channels, G* for group DMs), not display names.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
user | string | No | The ID of the user whose conversations will be listed. If not provided, conversations for the authenticated user are returned. |
limit | integer | No | The maximum number of items to return per page. |
types | string | No | Comma-separated list of conversation types to include: public_channel, private_channel, im, mpim. |
cursor | string | No | Pagination cursor for retrieving the next set of results. |
team_id | string | No | The team (workspace) ID to filter conversations by. |
exclude_archived | boolean | No | Set to true to exclude archived channels from the list. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Fetch conversation history
Section titled “Fetch conversation history”SLACK_FETCH_CONVERSATION_HISTORY
Fetches a chronological list of messages and events from a specified Slack conversation. IMPORTANT LIMITATION: This action only returns messages from the main channel timeline. Threaded replies are NOT returned — use SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION for that.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | Yes | The ID of the public channel, private channel, direct message, or multi-person direct message to fetch history from. |
limit | integer | No | Maximum number of messages to request in this single Slack API call (1-1000). Defaults to 100. |
cursor | string | No | Pagination cursor from response_metadata.next_cursor of a previous response. |
oldest | string | No | Start of the time range of messages to include in results. Accepts a Unix timestamp or a Slack timestamp. |
latest | string | No | End of the time range of messages to include in results. |
inclusive | boolean | No | When true, includes messages at the exact ‘oldest’ or ‘latest’ boundary timestamps in results. |
include_all_metadata | boolean | No | Return all metadata associated with messages in the conversation history. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Retrieve conversation replies
Section titled “Retrieve conversation replies”SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION
Retrieves replies to a specific parent message in a Slack conversation, using the channel ID and the parent message’s timestamp (ts).
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | ID of the conversation (channel, direct message, etc.) to fetch the thread from. Must be a channel ID, not a channel name. |
ts | string | No | Timestamp of the parent message in the thread. Must be the exact full timestamp string of the root/parent message. |
limit | integer | No | Maximum number of messages to return. |
cursor | string | No | Pagination cursor from response_metadata.next_cursor of a previous response. |
oldest | string | No | Oldest message timestamp in the time range to include results. |
latest | string | No | Latest message timestamp in the time range to include results. |
inclusive | boolean | No | Whether to include messages with latest or oldest timestamps in results. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Add reaction to message
Section titled “Add reaction to message”SLACK_ADD_REACTION_TO_AN_ITEM
Adds a specified emoji reaction to an existing message in a Slack channel, identified by its timestamp; does not remove or retrieve reactions.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Name of the emoji to add as a reaction (e.g., ‘thumbsup’). This is the emoji name without colons. For emojis with skin tone modifiers, append ‘::skin-tone-X’ where X is a number from 2 to 6. |
channel | string | Yes | ID of the channel where the message to add the reaction to was posted. |
timestamp | string | Yes | Timestamp of the message to which the reaction will be added (e.g., ‘1234567890.123456’). |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Remove reaction from item
Section titled “Remove reaction from item”SLACK_REMOVE_REACTION_FROM_ITEM
Removes an emoji reaction from a message, file, or file comment in Slack. Provide exactly one targeting method: channel+timestamp together, file, or file_comment.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Name of the emoji reaction to remove (e.g., ‘thumbsup’), without colons. |
channel | string | No | Channel ID of the message. Required if timestamp is provided. |
timestamp | string | No | Timestamp of the message. Required if channel is provided. |
file | string | No | ID of the file to remove the reaction from. |
file_comment | string | No | ID of the file comment to remove the reaction from. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Upload or create a file in Slack
Section titled “Upload or create a file in Slack”SLACK_UPLOAD_OR_CREATE_A_FILE_IN_SLACK
Upload files, images, screenshots, documents, or any media to Slack channels or threads. Supports all file types including images (PNG, JPG, JPEG, GIF), documents (PDF, DOCX, TXT), code files, and more.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
file | string | No | File(s) to upload. At least one of ‘content’ or ‘file’ must be provided. |
content | string | No | Text content of the file; use for text-based files. At least one of ‘content’ or ‘file’ must be provided. |
channels | string | No | Channel ID where the file will be shared. Use channel ID (e.g., C1234567890) not channel name. |
title | string | No | Title of the file, displayed in Slack. |
filename | string | No | Filename to be displayed in Slack. Required when using ‘content’ parameter. |
thread_ts | string | No | Timestamp of a parent message to upload this file as a reply. |
initial_comment | string | No | Optional message to introduce the file in specified ‘channels’. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
List Slack files
Section titled “List Slack files”SLACK_LIST_FILES_WITH_FILTERS_IN_SLACK
Lists files and their metadata within a Slack workspace, filterable by user, channel, timestamp, or type; returns metadata only, not file content.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | Filter files appearing in a specific channel, indicated by its Slack Channel ID. |
user | string | No | Filter files created by a single user. Provide the Slack User ID. |
types | string | No | Filter by file type (comma-separated): all, spaces, snippets, images, pdfs, gdocs, zips. Defaults to ‘all’. |
ts_from | integer | No | Filter files created after this Unix timestamp (inclusive). |
ts_to | integer | No | Filter files created before this Unix timestamp (inclusive). |
count | string | No | Number of files to return per page. Default is 100, maximum is 1000. |
page | string | No | Page number of results to retrieve when paginating. Default is 1. |
team_id | string | No | The team/workspace ID to list files from. Required for Enterprise Grid workspaces. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
List all users
Section titled “List all users”SLACK_LIST_ALL_USERS
Retrieves a paginated list of all users with profile details, status, and team memberships in a Slack workspace. Filter is_bot, is_app_user, and deleted fields to build human-only rosters.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
limit | integer | No | Maximum number of items to return per page. Recommended to set a value (e.g., 100). |
cursor | string | No | Pagination cursor for fetching subsequent pages. |
team_id | string | No | The workspace/team ID to list users from. Required when using an org-level token (Enterprise Grid). |
include_locale | boolean | No | Include the locale field for each user. Defaults to false. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Find users
Section titled “Find users”SLACK_FIND_USERS
Find users in a Slack workspace by any criteria — email, name, display name, or other text. Includes optimized email lookup for exact email matches.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
search_query | string | No | Search query to find users. Can be a Slack user ID, email address, or name. Required if email is not provided. |
email | string | No | Email address to search for. Convenience parameter for email-based search. |
limit | integer | No | Maximum number of users to return (1 to 1000). Defaults to 50. |
exact_match | boolean | No | When true, only returns users with exact matches (case-insensitive). |
include_bots | boolean | No | Include bot users in search results. Defaults to false. |
team_id | string | No | The ID of the Slack workspace. Required when using an org-level token. |
include_deleted | boolean | No | Include deleted/deactivated users in search results. Defaults to false. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Lookup users by email
Section titled “Lookup users by email”SLACK_FIND_USER_BY_EMAIL_ADDRESS
Retrieves the Slack user object for an active user by their registered email address; requires the users:read.email OAuth scope. Fails with ‘users_not_found’ if the email is unregistered or the user is inactive.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
email | string | Yes | The email address of the user to look up. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Invite users to a Slack channel
Section titled “Invite users to a Slack channel”SLACK_INVITE_USERS_TO_A_SLACK_CHANNEL
Invites users to an existing Slack channel using their valid Slack User IDs. Response is always HTTP 200; inspect ok, error, and errors fields to confirm users were added.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | ID of the public or private Slack channel to invite users to; must be an existing channel. |
users | string | No | Comma-separated string of valid Slack User IDs to invite. Up to 1000 user IDs can be included. |
force | boolean | No | When set to true and multiple user IDs are provided, continue inviting the valid ones while disregarding invalid IDs. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Remove user from conversation
Section titled “Remove user from conversation”SLACK_REMOVE_USER_FROM_CONVERSATION
Removes a specified user from a Slack conversation (channel); the caller must have permissions to remove users and cannot remove themselves using this action.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | ID of the conversation (channel) to remove the user from. |
user | string | No | The ID of the user to be removed from the conversation. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Update a Slack message
Section titled “Update a Slack message”SLACK_UPDATES_A_SLACK_MESSAGE
Updates a Slack message by timestamp. Provide exactly one visible content mode: markdown_text for normal Markdown content, or blocks for raw Slack Block Kit layouts.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
ts | string | Yes | Timestamp of the message to update (e.g., '1234567890.123456'). |
channel | string | Yes | ID or name of the channel containing the message to update. Do NOT include the ’#’ prefix. |
markdown_text | string | No | Use for normal LLM-written updated message content. Supports standard Markdown. |
blocks | array | No | Use when you need Slack Block Kit capabilities. Do not use together with markdown_text. |
fallback_text | string | No | Required only when using blocks. Plain text for notifications. |
as_user | boolean | No | Pass true to update the message as the authenticated user. |
reply_broadcast | boolean | No | If true and the message is a thread reply, broadcast the updated message to the channel. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Delete a message from a chat
Section titled “Delete a message from a chat”SLACK_DELETES_A_MESSAGE_FROM_A_CHAT
Deletes a message, identified by its channel ID and timestamp, from a Slack channel, private group, or direct message conversation; the authenticated user or bot must be the original poster.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
channel | string | No | The ID of the channel, private group, or direct message conversation containing the message to be deleted. |
ts | string | No | Timestamp of the message to be deleted. Must be the exact Slack message timestamp string with fractional precision (e.g., ‘1234567890.123456’). |
as_user | boolean | No | Legacy parameter. Pass true to delete the message as the authed user. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |
Search messages
Section titled “Search messages”SLACK_SEARCH_MESSAGES
Workspace-wide Slack message search with date ranges and filters. Use query modifiers (e.g., in:#channel, from:@user, before/after:YYYY-MM-DD), sorting (score/timestamp), and pagination.
Input parameters
Section titled “Input parameters”| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Search query supporting various modifiers: in:#channel-name, from:@username, "exact phrase", before:YYYY-MM-DD, after:YYYY-MM-DD, has:link, has:file. |
sort | string | No | Sort results by score (relevance) or timestamp (chronological). |
sort_dir | string | No | Sort direction: asc (ascending) or desc (descending). |
count | integer | No | Number of messages per page (max 100). With auto_paginate, total messages desired. |
page | integer | No | Page number for manual pagination control. |
cursor | string | No | Cursor for cursor-mark pagination. Use * for the first call. |
highlight | boolean | No | Enable highlighting of search terms in results. |
auto_paginate | boolean | No | When enabled, count becomes the total messages desired and the system handles pagination automatically. |
team_id | string | No | The ID of the workspace to search in. Only relevant when using an org-level token. |
Output
Section titled “Output”| Name | Type | Required | Description |
|---|---|---|---|
data | string | Yes | Data from the action execution. |
error | string | No | Error message if the execution failed. |
successful | boolean | Yes | Whether the action execution was successful. |