object
MessageContent
Message body to send or display. Use `text` for plain replies, `media` for uploaded or hosted files, `template` for WhatsApp-approved templates, and `richMessage` for interactive channel content.
Variants
Use type to choose one of `text`, `media`, `template`, `richMessage`.
TextMessageContent
textPlain text message content.
Required: `type`, `text`.
- Name
type- Type
- const
- Description
- Required property.
- Name
text- Type
- TextContent
- Description
- Required property.
Example
text
{
"type": "text",
"text": {
"body": "Hi Anna, your order is ready for pickup."
}
}MessageContent
mediaMedia message content. Upload with `/media/uploads` first, then pass the returned `mediaId`.
Required: `type`, `media`.
- Name
type- Type
- const
- Description
- Required property.
- Name
media- Type
- Content
- Description
- Required property.
Example
media
{
"type": "media",
"media": {
"mediaId": "mda_01HV8Z6K9D2R4S7T8P5N3Q1M0",
"caption": "Your invoice is attached.",
"filename": "invoice-4827.pdf",
"mimeType": "application/pdf",
"mediaType": "document"
}
}TemplateMessageContent
templateWhatsApp template message content. The gateway maps this to the channel-specific send internally.
Required: `type`, `template`.
- Name
type- Type
- const
- Description
- Required property.
- Name
template- Type
- WhatsAppTemplateContent
- Description
- Required property.
Example
template
{
"type": "template",
"template": {
"name": "order_ready",
"language": "en",
"components": [
{
"type": "body",
"parameters": [
{
"type": "text",
"text": "Anna"
},
{
"type": "text",
"text": "4827"
}
]
}
]
}
}RichMessageContent
richMessageStructured rich message content for channels that support cards or actions.
Required: `type`, `richMessage`.
- Name
type- Type
- const
- Description
- Required property.
- Name
richMessage- Type
- RichMessage
- Description
- Required property.
Example
richMessage
{
"type": "richMessage",
"richMessage": {
"cards": [
{
"body": {
"text": "Choose the next step."
},
"actions": [
{
"type": "reply",
"label": "Talk to support",
"value": "support"
}
]
}
]
}
}