Este endpoint oferece uma interface unificada para envio de quatro tipos principais de mensagens interativas:
Suporte a campos de rastreamento: Este endpoint também suporta track_source e track_id documentados na tag “Enviar Mensagem”.
Todas as requisições seguem esta estrutura base:
{
"number": "5511999999999",
"type": "button|list|poll|carousel",
"text": "Texto principal da mensagem",
"choices": ["opções baseadas no tipo escolhido"],
"footerText": "Texto do rodapé (opcional para botões e listas)",
"listButton": "Texto do botão (para listas)",
"selectableCount": "Número de opções selecionáveis (apenas para enquetes)"
}
Cria botões interativos com diferentes funcionalidades de ação.
footerText: Texto opcional exibido abaixo da mensagem principalchoices: Array de opções que serão convertidas em botõesCada botão pode ser configurado usando | (pipe) ou \n (quebra de linha) como separadores:
Botão de Resposta:
"texto|id" ou"texto\nid" ou"texto" (ID será igual ao texto)Botão de Cópia:
"texto|copy:código" ou"texto\ncopy:código"Botão de Chamada:
"texto|call:+5511999999999" ou"texto\ncall:+5511999999999"Botão de URL:
"texto|https://exemplo.com" ou"texto|url:https://exemplo.com"Para adicionar uma imagem aos botões, use o campo imageButton no payload:
{
"number": "5511999999999",
"type": "button",
"text": "Escolha um produto:",
"imageButton": "https://exemplo.com/produto1.jpg",
"choices": [
"Produto A|prod_a",
"Mais Info|https://exemplo.com/produto-a",
"Produto B|prod_b",
"Ligar|call:+5511999999999"
],
"footerText": "Produtos em destaque"
}
Suporte: O campo
imageButtonaceita URLs ou imagens em base64.
{
"number": "5511999999999",
"type": "button",
"text": "Como podemos ajudar?",
"choices": [
"Suporte Técnico|suporte",
"Fazer Pedido|pedido",
"Nosso Site|https://exemplo.com",
"Falar Conosco|call:+5511999999999"
],
"footerText": "Escolha uma das opções abaixo"
}
Importante: Ao combinar botões de resposta com outros tipos (call, url, copy) na mesma mensagem, será exibido o aviso: “Não é possível exibir esta mensagem no WhatsApp Web. Abra o WhatsApp no seu celular para visualizá-la.”
Cria menus organizados em seções com itens selecionáveis.
listButton: Texto do botão que abre a listafooterText: Texto opcional do rodapéchoices: Array com seções e itens da lista"[Título da Seção]": Inicia uma nova seção"texto|id|descrição": Item da lista com:
{
"number": "5511999999999",
"type": "list",
"text": "Catálogo de Produtos",
"choices": [
"[Eletrônicos]",
"Smartphones|phones|Últimos lançamentos",
"Notebooks|notes|Modelos 2024",
"[Acessórios]",
"Fones|fones|Bluetooth e com fio",
"Capas|cases|Proteção para seu device"
],
"listButton": "Ver Catálogo",
"footerText": "Preços sujeitos a alteração"
}
Cria enquetes interativas para votação.
selectableCount: Número de opções que podem ser selecionadas (padrão: 1)choices: Array simples com as opções de voto{
"number": "5511999999999",
"type": "poll",
"text": "Qual horário prefere para atendimento?",
"choices": [
"Manhã (8h-12h)",
"Tarde (13h-17h)",
"Noite (18h-22h)"
],
"selectableCount": 1
}
Cria um carrossel de cartões com imagens e botões interativos.
choices: Array com elementos do carrossel na seguinte ordem:
[Texto do cartão]: Texto do cartão entre colchetes{URL ou base64 da imagem}: Imagem entre chaves"texto|copy:código" para botão de copiar"texto|https://url" para botão de link"texto|call:+número" para botão de ligação{
"number": "5511999999999",
"type": "carousel",
"text": "Conheça nossos produtos",
"choices": [
"[Smartphone XYZ\nO mais avançado smartphone da linha]",
"{https://exemplo.com/produto1.jpg}",
"Copiar Código|copy:PROD123",
"Ver no Site|https://exemplo.com/xyz",
"Fale Conosco|call:+5511999999999",
"[Notebook ABC\nO notebook ideal para profissionais]",
"{https://exemplo.com/produto2.jpg}",
"Copiar Código|copy:NOTE456",
"Comprar Online|https://exemplo.com/abc",
"Suporte|call:+5511988888888"
]
}
Nota: Criamos outro endpoint para carrossel:
/send/carousel, funciona da mesma forma, mas com outro formato de payload. Veja o que é mais fácil para você.
Os recursos de botões interativos e listas podem ser descontinuados a qualquer momento sem aviso prévio. Não nos responsabilizamos por quaisquer alterações ou indisponibilidade destes recursos.
Considerando a natureza dinâmica destes recursos, nosso endpoint foi projetado para facilitar a migração entre diferentes tipos de mensagens (botões, listas e enquetes).
Recomendamos criar seus fluxos de forma flexível, preparados para alternar entre os diferentes tipos.
Em caso de descontinuidade de algum recurso, você poderá facilmente migrar para outro tipo de mensagem apenas alterando o campo “type” no payload, mantendo a mesma estrutura de choices.
Número do destinatário (formato internacional)
"5511999999999"
Tipo do menu (button, list, poll, carousel)
button, list, poll, carousel "list"
Texto principal (aceita placeholders)
"Escolha uma opção:"
Lista de opções. Use [Título] para seções em listas
[
"[Eletrônicos]",
"Smartphones|phones|Últimos lançamentos",
"Notebooks|notes|Modelos 2024",
"[Acessórios]",
"Fones|fones|Bluetooth e com fio",
"Capas|cases|Proteção para seu device"
]Texto do rodapé (opcional)
"Menu de serviços"
Texto do botão principal
"Ver opções"
Número máximo de opções selecionáveis (para enquetes)
1
URL da imagem para botões (recomendado para type: button)
"https://exemplo.com/imagem-botao.jpg"
ID da mensagem para responder
"3EB0538DA65A59F6D8A251"
Números para mencionar (separados por vírgula)
"5511999999999,5511888888888"
Marca conversa como lida após envio
true
Marca últimas mensagens recebidas como lidas
true
Atraso em milissegundos antes do envio, durante o atraso apacerá 'Digitando...'
1000
Origem do rastreamento da mensagem
"chatwoot"
ID para rastreamento da mensagem (aceita valores duplicados)
"msg_123456789"
Menu enviado com sucesso
Representa uma mensagem trocada no sistema
ID único interno da mensagem (formato r + 7 caracteres hex aleatórios)
ID original da mensagem no provedor
ID da conversa relacionada
Indica se a mensagem foi enviada pelo usuário
Indica se é uma mensagem de grupo
Tipo de conteúdo da mensagem
text, image, video, document, audio, location, button, list, reaction Timestamp original da mensagem em milissegundos
Histórico de edições da mensagem
ID da mensagem citada/respondida
ID da mensagem reagida
ID do remetente da mensagem
Nome exibido do remetente
Plataforma de origem da mensagem
ios, web, android Status do ciclo de vida da mensagem
pending, sent, delivered, read, failed, deleted Texto original da mensagem
Dados de votação de enquete e listas
ID do botão ou item de lista selecionado
Conversão de opções de da mensagem, lista, enquete e botões
URL para download de arquivos de mídia
Conteúdo completo da mensagem em formato JSON
Dono da mensagem
Origem do rastreamento da mensagem
ID para rastreamento da mensagem (aceita valores duplicados)
Data de criação no sistema (formato SQLite YYYY-MM-DD HH:MM:SS.FFF)
Data da última atualização (formato SQLite YYYY-MM-DD HH:MM:SS.FFF)
Metadados do processamento por IA