api
formatting
ai_generated
true
Slack message displays raw markdown instead of formatted text in Block Kit
ID: api/slack-mrkdwn-not-markdown
90%Fix Rate
88%Confidence
3Evidence
2023-01-01First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| any | active | — | — | — |
Root Cause
Slack Block Kit uses 'mrkdwn' (not 'markdown') as the type field. Also, mrkdwn is NOT standard Markdown - it uses *bold* (not **bold**), ~strike~ (not ~~strike~~), and doesn't support headers.
genericWorkarounds
-
95% success Use type: 'mrkdwn' and Slack-specific syntax
{"type": "section", "text": {"type": "mrkdwn", "text": "*bold* _italic_ ~strike~ `code`"}} -
88% success Use Slack Block Kit Builder to preview before sending
Test in Block Kit Builder to verify rendering before deploying
Dead Ends
Common approaches that don't work:
-
Use type: 'markdown' in Block Kit blocks
92% fail
The field must be 'mrkdwn' (Slack's proprietary format). 'markdown' silently falls back to plain text with no error.
-
Use standard Markdown syntax like **bold** and ~~strike~~
88% fail
Slack mrkdwn uses *bold* and ~strike~. Standard markdown bold (**) is treated as literal asterisks.