Pular para o conteúdo principal
POST
/
send-button-actions
curl --request POST \
  --url https://zapi.hubmessage.io/channels/{channel_id}/token/{channel_token}/send-button-actions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "phone": "5511999999999",
  "message": "Hello! How can we help?",
  "title": "Hub Message",
  "footer": "Choose an option",
  "buttonActions": [
    {
      "id": "1",
      "type": "CALL",
      "phone": "5511999999999",
      "label": "Contact us"
    },
    {
      "id": "2",
      "type": "URL",
      "url": "https://www.hubmessage.io",
      "label": "Visit our website"
    }
  ]
}
'
{
  "zaapId": "3999984263738042930CD6ECDE9VDWSA",
  "messageId": "D241XXXX732339502B68",
  "id": "D241XXXX732339502B68"
}

Conceituação

Método para envio de mensagens com botões de ação. Existem três tipos de botão:
  • CALL — Botão para ligar para um número
  • URL — Botão para abrir um link
  • REPLY — Botão de resposta rápida
Não combine os três tipos de botão na mesma mensagem. Envie botões de CALL + URL juntos, e botões de REPLY separadamente. Combinar todos causa erro no WhatsApp Web.
Para botões de copiar código, use o formato de URL: https://www.whatsapp.com/otp/code/?otp_type=COPY_CODE&code=SEU_CODIGO
A estrutura de resposta é idêntica à da Z-API. Seu código existente que processa esses retornos continuará funcionando sem alterações.

Autorizações

Authorization
string
header
obrigatório

Secret Key generated in the Hub Message Security panel

Corpo

application/json
phone
string
obrigatório

Recipient phone number (country code + area code + number)

Exemplo:

"5511999999999"

message
string
obrigatório

Message text

buttonActions
object[]
obrigatório

List of action buttons

title
string

Message title

Message footer

delayMessage
integer

Delay in seconds before sending (1-15)

Intervalo obrigatório: 1 <= x <= 15

Resposta

Message sent successfully

zaapId
string

Internal identifier

messageId
string

WhatsApp message ID

id
string

Same value as messageId (compatibility)