Mensagens
O endpoint de mensagens permite enviar qualquer tipo de conteúdo para números do WhatsApp.
Endpoint
POST /v1/messages
Tipos disponíveis
| Tipo | Subtipo | Descrição |
|---|---|---|
text | — | Texto simples com suporte a preview de links |
image | — | Imagem JPEG ou PNG |
video | — | Vídeo MP4 ou 3GP |
audio | — | Áudio ou nota de voz (OGG/OPUS) |
document | — | PDF, Word, Excel e outros |
sticker | — | Sticker animado ou estático (.webp) |
location | — | Pino de localização no mapa |
contacts | — | Cartão(ões) de contato |
reaction | — | Reação emoji a uma mensagem recebida |
interactive | cta_url | Botão que abre URL |
interactive | button | Até 3 botões de resposta rápida |
interactive | list | Lista rolável de opções |
interactive | location_request_message | Solicita localização do usuário |
Para templates aprovados pela Meta, use o endpoint POST /v1/messages/template.
Estrutura base
Toda mensagem inclui waba_id, to, type e um campo com o mesmo nome do tipo:
{
"waba_id": "seu_waba_id",
"to": "+5511999999999",
"type": "text",
"text": { "body": "Olá!" }
}
O campo phone_id é opcional — quando omitido, usa o número principal do WABA.
Resposta
{
"messaging_product": "whatsapp",
"contacts": [{ "input": "+5511999999999", "wa_id": "5511999999999" }],
"messages": [{ "id": "wamid.HBgL..." }]
}
O messages[0].id é o wamid — use-o para correlacionar webhooks de status.
Janela de atendimento
Tipos não-template só podem ser enviados dentro da janela de 24 horas após o último contato do usuário. Fora desta janela, use templates.