Pular para o conteúdo principal
POST
Enviar botões
Envia uma mensagem com até três botões para o cliente responder com um toque, como Confirmar, Remarcar e Cancelar. É a forma mais simples de coletar uma escolha sem depender de o cliente digitar. A janela de 24 horas precisa estar aberta.
O destinatário pode ser informado pelo número de telefone (to) ou pelo ID do usuário (recipient). Se os dois forem enviados, vale o to; para enviar pelo ID do usuário, deixe o to em branco. Veja a diferença em Destinatário.

Estrutura da mensagem

A mensagem é do tipo interactive, com interactive.type igual a button. Ela tem quatro partes:

Botões

Cada botão tem type igual a reply e um objeto reply com dois campos:

Cabeçalho

O cabeçalho é opcional e aceita um texto ou uma mídia: A mídia do cabeçalho segue as mesmas regras e formatos de Enviar imagem, Enviar vídeo e Enviar documento: informe link ou id, nunca os dois.
No Testar, a mensagem já vem preenchida com um cabeçalho de texto, o texto, o rodapé e três botões. Para testar um cabeçalho com mídia, troque o type do cabeçalho e preencha o link da mídia.

Resposta do cliente

Quando o cliente toca em um botão, chega pelo webhook uma mensagem do tipo interactive, com interactive.type igual a button_reply. O button_reply.id é o reply.id do botão tocado, e o context.id aponta para a mensagem com os botões:
Use o button_reply.id para decidir o que fazer com a resposta. O title pode mudar se você ajustar o texto do botão; o id continua o mesmo.
A resposta do cliente é uma mensagem nova, então renova a janela de 24 horas. Veja mais detalhes na documentação de botões de resposta da Meta.

Autorizações

Authorization
string
header
obrigatório

Token gerado no painel da Datafy ao criar o canal. Formato: sk_live_xxx.

Parâmetros de caminho

phone_number_id
string
obrigatório

ID do número que envia a mensagem. Descubra com GET /me.

Corpo

application/json
messaging_product
enum<string>
padrão:whatsapp
obrigatório

Sempre whatsapp.

Opções disponíveis:
whatsapp
Exemplo:

"whatsapp"

to
string
obrigatório

Número do destinatário com código do país e DDD, como 5511999999999. Tem prioridade sobre recipient: para enviar pelo ID do usuário, deixe em branco.

Exemplo:

"5511999999999"

type
enum<string>
padrão:interactive
obrigatório

Sempre interactive.

Opções disponíveis:
interactive
Exemplo:

"interactive"

interactive
object
obrigatório

Mensagem com até três botões de resposta rápida.

recipient_type
enum<string>
padrão:individual

Sempre individual.

Opções disponíveis:
individual
Exemplo:

"individual"

recipient
string

ID do usuário no WhatsApp (BSUID), recebido nos webhooks em from_user_id e contacts[].user_id, como BR.13491208655302741918. Usado quando to não é informado.

context
object

Responde citando uma mensagem anterior da conversa.

Resposta

Envio aceito pela Meta. Não confirma a entrega.