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 |
| 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. |