# Ephemeral messages

> Show a message to one person in a conversation without posting it for everyone.

An ephemeral message appears only for one person, inline in the conversation, marked **Only visible to you**. It isn't saved to the conversation: it disappears when the person reloads or dismisses it — the same behaviour as Slack.

Use them for confirmations ("Your refund was queued"), private hints, or a question only the person who clicked should answer.

## Send one

```http
POST /api/bot/chat.postEphemeral
Authorization: Bearer foxa-…
```

```json
{
  "channel": "refunds",
  "user": "42bc76d7-…",
  "text": "Only you can see this",
  "blocks": [
    { "type": "section", "text": { "type": "mrkdwn", "text": "Refund *#4821* was queued. Want to undo it?" } },
    { "type": "actions", "elements": [{ "type": "button", "action_id": "undo", "style": "danger", "text": { "type": "plain_text", "text": "Undo" } }] }
  ]
}
```

| Field | Description |
|---|---|
| `channel` | Channel id or short name. Required. |
| `user` | The person who sees it. They must be able to read the channel. Required. |
| `text`, `blocks`, `attachments` | As in [chat.postMessage](https://workstation.repzo.com/docs/developers/chat-apps/sending-messages). |
| `thread_ts` | Show it in a thread. |

The answer is `{ "ok": true, "message_ts": "…" }`. REST API: `POST /api/v1/chat/channels/{id}/ephemeral` with `userId`, `body`, `blocks`, `attachments`, `parentMessageId`.

## Controls in ephemeral messages

Buttons and menus work. Their `block_actions` payload has `container.is_ephemeral: true` and no `message`, and a `response_url` that can replace (`replace_original`) or delete (`delete_original`) the ephemeral message. Controls stay usable for 24 hours.

The [`response_url`](https://workstation.repzo.com/docs/developers/chat-apps/interactivity#answer-with-response_url) of any interaction also posts an ephemeral message when you send `text` or `blocks` without `response_type` — Slack's default.

## Related

- [Interactivity](https://workstation.repzo.com/docs/developers/chat-apps/interactivity)
- [Sending messages](https://workstation.repzo.com/docs/developers/chat-apps/sending-messages)
