Basic Message Posting
Simple Text
Markdown
Use themarkdown format for cross-platform formatting:
Markdown is automatically converted to platform-specific formats (Slack mrkdwn, Teams/Discord markdown, Google Chat HTML).
Raw Platform Text
Skip markdown conversion and send platform-specific text:AST (Advanced)
Use mdast AST for programmatic message construction:Interactive Cards
Create rich interactive cards with buttons, inputs, and structured layouts:Cards are automatically converted to platform-specific formats: Slack Block Kit, Teams Adaptive Cards, and Google Chat Cards.
File Attachments
Uploading Files
Multiple Files
Image Attachments
Ephemeral Messages
Send messages visible only to a specific user:Fallback to DM
On platforms without ephemeral support (Teams, Discord), automatically fall back to DM:Slack
Native ephemeral (session-dependent, disappears on reload)
Google Chat
Native private message (persists, only target user sees it)
Discord
No native support - requires
fallbackToDM: trueTeams
No native support - requires
fallbackToDM: trueSent Message Operations
All posting methods return aSentMessage with edit/delete capabilities:
Editing Messages
Deleting Messages
Adding Reactions
Typing Indicators
Show that the bot is processing:Some platforms support persistent typing indicators with status text (Google Chat), others just send once (Slack).
Mentioning Users
Create platform-specific user mentions:Posting to Channels vs Threads
Thread-Level Posting
Channel-Level Posting
Opening Direct Messages
Start a DM conversation with a user:Message Content Extraction
When you post a message, the SDK extracts content for theSentMessage object: