

curl 'https://graph.facebook.com/<API_VERSION>/<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <ACCESS_TOKEN>' \ -d ' { "messaging_product": "whatsapp", "recipient_type": "individual", "to": "<WHATSAPP_USER_PHONE_NUMBER>", "type": "interactive", "interactive": { "type": "button", "header": {<MESSAGE_HEADER>}, "body": { "text": "<BODY_TEXT>" }, "footer": { "text": "<FOOTER_TEXT>" }, "action": { "buttons": [ { "type": "reply", "reply": { "id": "<BUTTON_ID>", "title": "<BUTTON_LABEL_TEXT>" } } <!-- Additional buttons would go here (maximum 3) --> ] } } }'
| Placeholder | Description | Sample Value |
|---|---|---|
<ACCESS_TOKEN>String | Required. | EAAA... |
<API_VERSION>String | Optional. Graph API version. | v25.0 |
<BODY_TEXT>String | Required. Body text. URLs are automatically hyperlinked. Maximum 1024 characters. | Hi Pablo! Your gardening workshop is scheduled for 9am tomorrow. Use the buttons if you need to reschedule. Thank you! |
<BUTTON_ID>String | Required. A unique identifier for each button. Supports up to 3 buttons. Maximum 256 characters. | change-button |
<BUTTON_LABEL_TEXT>String | Required. Button label text. Must be unique if using multiple buttons. Maximum 20 characters. | Change |
<FOOTER_TEXT>String | Required if using a footer. Footer text. URLs are automatically hyperlinked. Maximum 60 characters. | Lucky Shrub: Your gateway to succulents!â„¢ |
<MESSAGE_HEADER>JSON Object | Optional. Header content. Supports the following types:
| Image header example using uploaded media ID (same basic structure for all media types): Image header example using hosted media: Text header example: |
<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>String | Required. WhatsApp business phone number ID. | 106540352242922 |
<WHATSAPP_USER_PHONE_NUMBER>String | Required. WhatsApp user phone number. | +16505551234 |
curl 'https://graph.facebook.com/v25.0/106540352242922/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "+16505551234",
"type": "interactive",
"interactive": {
"type": "button",
"header": {
"type": "image",
"image": {
"id": "2762702990552401"
}
},
"body": {
"text": "Hi Pablo! Your gardening workshop is scheduled for 9am tomorrow. Use the buttons if you need to reschedule. Thank you!"
},
"footer": {
"text": "Lucky Shrub: Your gateway to succulents!â„¢"
},
"action": {
"buttons": [
{
"type": "reply",
"reply": {
"id": "change-button",
"title": "Change"
}
},
{
"type": "reply",
"reply": {
"id": "cancel-button",
"title": "Cancel"
}
}
]
}
}
}'
{ "messaging_product": "whatsapp", "contacts": [ { "input": "+16505551234", "wa_id": "16505551234" } ], "messages": [ { "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgARGBI1RjQyNUE3NEYxMzAzMzQ5MkEA" } ] }
button_reply object:"button_reply": { "id": "<BUTTON_ID>", "title": "<BUTTON_LABEL_TEXT>" }
<BUTTON_ID> — The button ID of the button tapped by the user.<BUTTON_LABEL_TEXT> — The button label text of the button tapped by the user.{ "object": "whatsapp_business_account", "entry": [ { "id": "102290129340398", "changes": [ { "value": { "messaging_product": "whatsapp", "metadata": { "display_phone_number": "15550783881", "phone_number_id": "106540352242922" }, "contacts": [ { "profile": { "name": "Pablo Morales" }, "wa_id": "16505551234" } ], "messages": [ { "context": { "from": "15550783881", "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgARGBJBM0Y4RUU0RUNFQkFDMjYzQUMA" }, "from": "16505551234", "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgASGBQzQThBREYwNzc2RDc2QjA1QTIwMgA=", "timestamp": "1714510003", "type": "interactive", "interactive": { "type": "button_reply", "button_reply": { "id": "change-button", "title": "Change" } } } ] }, "field": "messages" } ] } ] }