Slack · Schema

Slack Message

A Slack message object representing a single message in a conversation. Messages can contain plain text, Block Kit layouts, attachments, files, reactions, and metadata. Each message is uniquely identified by its channel and timestamp (ts) combination. Messages support threading via thread_ts, and can have subtypes indicating specialized message types such as bot_message, channel_join, file_share, etc.

BotsChatCollaborationMessagingProductivityT1Team Communication

Properties

Name Type Description
type string The object type. Always 'message' for message objects.
subtype string An optional subtype indicating a specialized message type. Common subtypes include: bot_message, channel_join, channel_leave, channel_topic, channel_purpose, channel_name, channel_archive, channel_una
channel string The channel ID where the message was posted. Channel IDs begin with C for public channels, G for private channels and multi-person DMs, and D for direct messages.
user string The user ID of the message author. User IDs begin with U or W.
text string The text content of the message. Supports Slack mrkdwn formatting including *bold*, _italic_, ~strikethrough~, `code`, ```code blocks```, > blockquotes, and links. Also supports user menti
ts string The unique timestamp identifier for the message, which also serves as the message ID within its channel. Format is Unix epoch seconds with microsecond precision separated by a dot (e.g., '1503435956.0
thread_ts string The timestamp of the parent message when this message is a threaded reply. If present and equal to ts, this message is the parent of a thread. If present and different from ts, this message is a reply
reply_count integer The total number of replies in the thread. Only present on the parent message of a thread.
reply_users_count integer The number of unique users who have replied in the thread. Only present on the parent message.
latest_reply string The timestamp of the most recent reply in the thread. Only present on the parent message.
reply_users array An array of user IDs for users who have replied in the thread. Only present on the parent message. Limited to the most recent 5 reply users by default.
is_locked boolean Whether the thread is locked, preventing new replies.
subscribed boolean Whether the authenticated user is subscribed to this thread.
blocks array An array of Block Kit layout blocks used for rich message formatting. Blocks can include sections, dividers, images, context, actions, header, input, and other interactive elements. See https://docs.s
attachments array An array of secondary message attachments. While Block Kit is the preferred way to build rich messages, attachments are still supported for legacy compatibility and for displaying content below the bl
files array An array of file objects attached to or shared in the message.
reactions array An array of emoji reactions applied to this message. Only present when reactions exist.
edited object Metadata about when and by whom the message was last edited. Only present on edited messages.
bot_id string The bot ID if this message was posted by a bot. Bot IDs begin with B.
bot_profile object Information about the bot that posted this message.
app_id string The app ID if this message was posted by an app.
metadata object Custom metadata attached to the message by an application. Metadata allows apps to attach structured data to messages for use in workflows and automations without affecting the visible message content
permalink string A permanent URL pointing to this specific message within Slack.
client_msg_id string A unique identifier assigned by the client when the message was sent. Used for deduplication.
team string The team (workspace) ID where this message was posted.
parent_user_id string The user ID of the parent message author, if this is a threaded reply.
is_starred boolean Whether the authenticated user has starred this message.
pinned_to array An array of channel IDs where this message is pinned.
upload boolean Whether the message is a file upload notification.
display_as_bot boolean Whether the message should be displayed as if from a bot.
View JSON Schema on GitHub