{
"id": "01234567890123456"
}{
"status": 400,
"detail": "invalid request body"
}{
"status": 401,
"detail": "unauthorized"
}{
"status": 409,
"detail": "device not paired"
}{
"status": 503,
"detail": "instance not available"
}Send a buttons message
Send a message with 1 to 3 buttons. The response contains the message ID.
Button types can be mixed in one message:
reply(default) — sends a reply back to you. Needs anid, unique within the message. Tapping it produces amessageevent of typebutton_replywith the button’sidandtext. This is the only button type that produces an event.url— opensurlon the recipient’s device.copy— copiescopyCodeto the recipient’s clipboard.call— callsphoneNumberfrom the recipient’s device.
Header and footer are text only. Set aiLabel to show WhatsApp’s “AI” badge on the message; it applies to 1:1 chats only and is ignored in groups.
A 201 response means WhatsApp accepted the message. How it is displayed is up to the recipient’s WhatsApp app, and may change as WhatsApp evolves.
Limits mirror the WhatsApp Cloud API: text up to 1024 characters, header and footer up to 60, button text up to 20, button id up to 256.
{
"id": "01234567890123456"
}{
"status": 400,
"detail": "invalid request body"
}{
"status": 401,
"detail": "unauthorized"
}{
"status": 409,
"detail": "device not paired"
}{
"status": 503,
"detail": "instance not available"
}Authorizations
Instance or customer-level API key. Either the instance's own API key or the customer's API key is accepted. Must be paired with the X-Instance-Id header to identify the target instance.
Headers
The ID of the WhatsApp instance to use
Body
Message body
1024Buttons to show. Types can be mixed. Reply button ids must be unique within the message.
1 - 3 elementsShow child attributes
Show child attributes
Optional header text shown above the body
60Optional footer text shown below the body
60Show WhatsApp's "AI" badge on the message. 1:1 chats only; ignored in groups.
Response
Resource created
ID of the created resource