Here are the list of supported message types that can be sent with WhatsApp On-Premise:
Property | Description | Required |
---|---|---|
type | TEXT | Y |
text | String; Limited to 2000 characters | Y |
Property | Description | Required |
---|---|---|
type | IMAGE | Y |
text | String; caption for image | N |
attachment_id | Media ID of the image | Y (or url) |
url | URL of the image | Y (or attachment_id) |
.jpeg
or .png
Property | Description | Required |
---|---|---|
type | AUDIO | Y |
attachment_id | Media ID of the audio | Y (or url) |
url | URL of the audio | Y (or attachment_id) |
.aac
, mp4
, mpeg
, amr
, ogg
(only opus codecs
, base ogg
is not supported)Property | Description | Required |
---|---|---|
type | VIDEO | Y |
text | String; caption for Video | N |
attachment_id | Media ID of the video | Y (or url) |
url | URL of the video | Y (or attachment_id) |
mp4
and 3gp
.H.264
video codec and AAC
audio codec.Property | Description | Required |
---|---|---|
type | VIDEO | Y |
url | URL of the sticker | Y (or attachment_id) |
attachment_id | Media ID of the sticker | Y (or url) |
webp
and 512x512 px in dimensionProperty | Description | Required |
---|---|---|
type | FILE | Y |
filename | String; preview name of the file | N |
url | URL of the file | Y (or attachment_id) |
attachment_id | Media ID of the file | Y (or url) |
plain
, pdf
, vnd.ms-powerpoint
, msword1
, vnd.ms-excel
, vnd.openxmlformats-officedocument.wordprocessingml.document
, vnd.openxmlformats-officedocument.presentationml.presentation
, vnd.openxmlformats-officedocument.spreadsheetml.sheet
.Property | Description | Required |
---|---|---|
type | LOCATION | Y |
name | String; Name of location | N |
address | String; Address of Location | N |
lat | Latitude | Y |
long | Longitude | Y |
Property | Description | Required |
---|---|---|
name | String; name of contact | Y |
address | String; contact address | N |
birthday | String; date | N |
emails | String; email address | N |
org | String; company name | N |
phones | String; phone number | N |
urls | String; url | N |
Inside the phones
object, the phone
and wa_id
must be filled so that WhatsApp can recognize it as a valid business account to contact.
Otherwise, only the "Invite to WhatsApp" text will be displayed.
Each object in Contact
contains one or multiple optional parameters, you can refer to here for details.
Property | Description | Required? |
---|---|---|
type | REACTION | Y |
message_id | The ID for identifying the message to be reacted to | Y |
emoji | The emoji used as reaction; the input can be emoji itself or in Escaped Unicode i.e. \uD83D\uDE0A | Y |
The message ID of a previous message can be obtained from the message event in logs or by using the ApiScope.chat
in Open API.
For example:
Interactive Messages allow the users to response quickly by providing buttons to click on. Users cannot select more than one option at the same time from a list or button message, but they can go back and re-open a previous message.
Property | Description | Required? |
---|---|---|
Header | The header of your list message, only text is allowed for list message | N |
Body | The body content of the message (Maximum of 1024 characters) | Y |
Footer | The footer content (Maximum of 60 characters) | N |
Action | Inside action, you must nest: - a button field with your button’s content, and - at least one section object (maximum of 10) Inside section, you must add at least one rows object | Y |
action
Object
Property | Description | Required? |
---|---|---|
button | Button content. It cannot be an empty string and must be unique within the message (Maximum of 20 characters) | Y |
sections | Array of section objects. There is a minimum of 1 and maximum of 10 | Y |
section
Object
Property | Description | Required? |
---|---|---|
title | Title of the section | Y (if the message has more than one section.) |
rows | Contains a list of rows. Each row must have a title and an ID. You can add a description, but it is optional | Y |
Property | Description | Required |
---|---|---|
Header | The header of your list message; It can be a text or media: "Image", "Video", "Document" | N |
Body | The body content of the message (Maximum of 1024 characters) | Y |
Footer | The footer content (Maximum of 60 characters) | N |
Action | You must add at least one button, and include type and title.You cannot add more than 3 buttons | Y |
action
Object
Property | Description | Required? |
---|---|---|
buttons | A button can contain the following parameters: type: only supported type is reply (for Reply Button Messages) title: Button title. It cannot be an empty string and must be unique within the message (Maximum of 20 characters) | Y |
Property | Description | Required |
---|---|---|
body | The body content of the message (Maximum of 1024 characters) | N |
footer | The footer content (Maximum of 60 characters) | N |
action | Must contain - Must be single for single-product message.- catalogId : an ID for the catalog you want to use for this message. Retrieve this ID via Commerce Manager.- productId : a product’s unique identifier (Content ID). | Y |
Multi-Product Message can only contain a selection of up to 30 products from the inventory.
Property | Description | Required |
---|---|---|
header | type must be text . Contain a text object with the desired content | Y |
body | The footer content (Maximum of 1024 characters) | Y |
footer | The footer content (Maximum of 60 characters) | N |
action | Must contain - type : Must be multi for multi-product message.- catalogId : an ID for the catalog you want to use for this message. Retrieve this ID via Commerce Manager- sections : Array of section objects. You must include at least one section | Y |
sections
field:
Property | Description | Required |
---|---|---|
title | a title for each section | Y |
product_items | product_retailer_id : product’s unique identifier (Content ID) | Y |
Property | Description | Required? |
---|---|---|
Name | Can only contain lowercase alphanumeric characters and underscores ( _ ); No other characters or white space are allowed | Y |
Category | Select the correct category of your template; See list of supported categories | Y |
Language | Select the correct language of your template; The template name will be the same for all translations; You will specify the language field when sending out the template; See list of supported languages | Y |
Content | The content of your message template; Support parameter placeholders in the format of {{1}} | Y |
Header | The header of your message template; It can be a text or media: "Image", "Video", "Document" | N |
Body | The body of your message template (Character Limit: 1024) | Y |
Footer | The text footer of your message template | N |
Buttons | The button(s) of your message template; Call-to-action or Quick Reply; 3 buttons max. | N |
Property | Character Limit |
---|---|
Body (Without Header/Footer) | Up to 1024 characters |
Body (With Header/Footer) | Up to 160 characters |
Header | 60 characters |
Footer | 60 characters |
Please tip that, within a WhatsApp Message Template, the character limit does not apply to the varaiable.
Choose any existing "Message Template". Please make sure your have completed the Message Template Submission process in order to view your existing message templates.
Set the Language Policy as Deterministic.
Choose the Language of your Message Template.
You can send message as a reply to a previous message in the conversation. The previous message will be quoted in the contextual bubble and be displayed together with the replying message.
While sending any messages to WhatsApp user, you need to add the property reply_to
and identify the contextual message with the Message ID
Property | Description | Required |
---|---|---|
reply_to | Message ID of the message to be replied to | Y |
KaiOS
will not see the contextual bubble if the replying message is an image, video, audio or PTT.ApiScope.chat
in Open API.For example: