Send an outgoing conversation message

Create an outgoing (or internal) message on a conversation. The composer in the app calls different

POST
paths depending on channel.

WhatsApp — transform outgoing

Endpoint:

POST
/conversation-messages-transform-outgoing-whatsapp

Text (or standard types)

Media (after upload — see Upload attachment)

Optional fields match what the app sends when available: s3_path, conversation_file_id, file_size.

Instagram — transform outgoing

Endpoint:

POST
/conversation-messages-transform-outgoing-instagram

Same body shape as WhatsApp: conversation_id, message_text, message_type, and optional media fields as used in the app.

Messenger — transform outgoing

Endpoint:

POST
/conversation-messages-transform-outgoing-messenger

Same body shape as WhatsApp for text and media messages.

Webchat — transform outgoing

Endpoint:

POST
/conversation-messages-transform-outgoing-webchat

Same body shape as WhatsApp for text and media messages.

SMS

Endpoint:

POST
/conversation-messages-sms

Outgoing text

Outgoing MMS / media

After uploading the file (Upload attachment), the app builds a public S3 URL from the key and sends:

Playground

Endpoint:

POST
/conversation-messages-playground

Use Get a conversation to read organization_id and contact_id, then send:

Text

With media

Include optional s3_key, s3_path, file_name, file_type, file_size, conversation_file_id when sending attachment-backed playground messages.

Notes

  • 24-hour window: For Meta channels, the app blocks non-note customer messages outside the allowed window; notes and templates are still allowed where the product supports them.
  • Notes: For WhatsApp/Instagram/Messenger/Webchat, when the user selects the note tab, the same transform service is used with message_type: "note" so internal notes can be stored even outside the customer reply window.
  • WhatsApp templates: Template sends use POST /conversation-messages-transform-outgoing-whatsapp with a payload produced from the selected template (see app flow from message templates).

Report an issue with this documentation

Please log in to report issues with our documentation.