Formatting text
Text objects with "type": "mrkdwn" — and a message’s top-level text — use Slack’s mrkdwn, a small markdown dialect. plain_text shows text as written (emoji shortcodes still work when emoji isn’t false). For full Markdown, use a markdown block.
Basic formatting
Section titled “Basic formatting”| You write | People see |
|---|---|
*bold* |
bold |
_italic_ |
italic |
~strike~ |
|
`code` |
code |
```block of code``` |
A code block (nothing inside it is formatted) |
> quoted line at the start of a line |
A quote |
A new line (\n) |
A line break |
| You write | People see |
|---|---|
<https://example.com> |
https://example.com |
<https://example.com|the docs> |
the docs |
<mailto:[email protected]|Email sales> |
Email sales |
Only http, https and mailto links are shown as links. Repzo pages open inside Workstation.
Mentions and channels
Section titled “Mentions and channels”| You write | People see |
|---|---|
<@USER_ID> |
A mention chip with the person’s current name |
<#CHANNEL_ID> |
A link to the channel (the name shows only for public channels) |
<!here>, <!channel>, <!everyone> |
@here, @channel, @everyone |
<!subteam^DEPARTMENT_ID> |
@Department name — Slack user groups map to Workstation departments |
Use the ids from /api/v1/chat/users, /api/bot/channels.list and the departments API. You can add a fallback label after a |: <@USER_ID|Dana>.
<!date^UNIX_TIME^FORMAT|fallback> shows a date in each reader’s own locale and time zone:
Due <!date^1792479600^{date_long_pretty} at {time}|Oct 20, 2026>| Token | Example |
|---|---|
{date_num} |
2026-10-20 |
{date} |
October 20, 2026 |
{date_short} |
Oct 20, 2026 |
{date_long} |
Tuesday, October 20, 2026 |
{date_pretty}, {date_short_pretty}, {date_long_pretty} |
As above, or “today”, “yesterday”, “tomorrow” |
{time} |
10:00 AM |
{time_secs} |
10:00:00 AM |
{ago} |
in 3 days |
The fallback shows wherever the date can’t be formatted (search results, notifications).
:white_check_mark:, :tada:, :warning: and the other standard shortcodes become emoji. Skin tones work as :thumbsup::skin-tone-3:.
Escaping
Section titled “Escaping”Write a literal &, < or > as &, < and > — as on Slack — so they aren’t read as links or mentions.
Related
Section titled “Related”- Text object
- Rich text block — structured formatting without markup
- Sending messages