WhatsApp object
The whats_app
object allows you to modify or create WhatsApp messages via our messaging endpoints.
WhatsApp object
1
2
3
4
5
6
7
| {
"app_id": (required, string) see App Identifier,
"subscription_group_id": (required, string) the ID of your subscription group,
"message_variation_id": (optional, string) used when providing a campaign_id to specify which message variation this message should be tracked under,
"message_type": (required, string) the type of WhatsApp message being sent under the `message` key (template_message | text_response_message | text_image_response_message | quick_reply_response_message),
"message": (required, object) message object specifying fields the required fields based on the specified message_type. See Message Types for field specifications.
}
|
Message Types
template_message
1
2
3
4
5
6
7
8
| {
"template_name": (required, string) the WhatsApp template name for the message,
"template_language_code": (required, string) the language code of the WhatsApp template for the message,
"header_variables": (optional, header variables object) an object to specify header variable values for specified template_name, required if the header has variables; see object specification below,
"body_variables": (optional, body variable object) an object to specify body variable values for specified template_name, required if the body has variables; see object specification below,
"button_variables": (optional, button variables object) an object to specify button variable values for specified template_name, required if buttons have variables; see object specification below,
"header_image_uri" :(optional, string) URI to the header image, if the header is of type IMAGE in specified template_name
}
|
The header_variables
object lets you specify values for header variables in the WhatsApp template. Each key is the WhatsApp template variable index (zero-indexed) to replace with the specified value.
1
2
3
| {
"$TEMPLATE_VARIABLE_INDEX_0": "$TEMPLATE_VARIABLE_VALUE_0"
}
|
Currently, only zero or one header variables can be specified.
Example
1
2
3
| {
"0": "Check it out!"
}
|
Body variables object
The body_variables
object lets you specify values for body variables in the WhatsApp template. Each key is the WhatsApp template variable index (zero-indexed) to replace with the specified value.
1
2
3
4
| {
"$TEMPLATE_VARIABLE_INDEX_0": "$TEMPLATE_VARIABLE_VALUE_0",
"$TEMPLATE_VARIABLE_INDEX_1": "$TEMPLATE_VARIABLE_VALUE_1"
}
|
Example
1
2
3
4
| {
"0": "Check it out!",
"1": "It's pretty neat."
}
|
The button_variables
object lets you specify values for button variables in the WhatsApp template. Each key is the WhatsApp template variable index (zero-indexed) to replace with the specified value.
1
2
3
| {
"$TEMPLATE_VARIABLE_INDEX_1": "$TEMPLATE_VARIABLE_VALUE_1",
}
|
Currently, only one button variable can be specified, which is the path component of a call-to-action URL. The variable index must match the CTA URL button index in the template. For example, if your CTA button is the second button in your template, use variable index “1”.
Example
1
2
3
| {
"1": "/marketing/promotion123"
}
|
text_response_message
1
2
3
4
| {
"body": (required, string) the body of the message to send,
"preview_url": (optional, boolean) whether WhatsApp should render a preview of links included in body
}
|
Example
1
2
3
4
| {
"body": "Check out our new deals at https://braze.com",
"preview_url": true
}
|
text_image_response_message
1
2
3
4
| {
"image_uri": (required, string) the uri of the image to send,
"caption": (optional, string) the caption for the image being sent
}
|
Example
1
2
3
4
| {
"image_uri": "https://braze.com/promotion.jpg",
"caption": "This won't last for long, check it out!"
}
|
quick_reply_response_message
1
2
3
4
5
6
7
| {
"body": (required, string) the body of the message to send,
"header_image_uri": (optional, string) the URI of the image to send as the message header (only valid if header_text not present),
"header_text": (optional, string) the text to send as the message header (only valid if header_image_uri not present),
"footer": (optional, string) the footer of the message to send,
"buttons": (required, array) array of Button objects. Will render in message based on order in array.
}
|
1
2
3
| {
"text": (required, string) the text of the button
}
|
Example
1
2
3
4
5
6
7
8
9
10
11
| {
"body": "Want to keep hearing from us?",
"buttons": [
{
"text": "Yes!"
},
{
"text": "No thanks"
}
]
}
|