dm_message_send
Send a direct message using text or a single media attachment. Supports human agent tagging for messaging outside the 24-hour window on Facebook/Instagram.
Instructions
Send an outbound direct message. Provide EITHER body (text) OR media (a single attachment), not both. The message is queued and delivered asynchronously (returns status: pending). Outside Meta's 24h messaging window, pass tag: HUMAN_AGENT (Facebook/Instagram only). reply_to_external_id and reply_markup are Telegram-only.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Message tag for sending outside the 24h window. Facebook/Instagram only — ignored on Telegram and Bluesky. | |
| body | No | Message text. Required when media is empty (provide body OR media, not both). | |
| media | No | Up to one media attachment as a URL or local file path (absolute /path/to/file.jpg, relative ./image.png, or ~/Pictures/photo.jpg). Max 1 attachment. Not supported on Bluesky. | |
| chat_id | Yes | Chat hashid OR external_conversation_id | |
| reply_markup | No | Telegram only. reply_markup payload — inline keyboard, custom reply keyboard, force-reply, or remove-keyboard. | |
| reply_to_external_id | No | Telegram only. Platform message_id of the message to thread under. |