Mensagens
Envie mensagens WhatsApp, consulte histórico e acompanhe status de entrega.
Visão Geral
A API de Mensagens permite o envio de mensagens WhatsApp, consulta de histórico paginado e acompanhamento de status de entrega em tempo real. O provider WhatsApp (Twilio ou Meta Cloud API) é configurado por aplicação e transparente para quem envia.
Há dois caminhos de envio, conforme a autenticação da sua integração:
- API Key (
X-Api-Key+X-Api-Secret) — base/api/external/messages. Inclui envio, consulta e histórico. - OAuth2 (Bearer JWT, scope
mensagens:enviar) —POST /api/external/v2/mensagens. Ideal para n8n, Zapier e automações. Ver OAuth2 / n8n.
Base URL (API Key): /api/external/messages
Autenticação: X-Api-Key + X-Api-Secret
Enviar Mensagem
POST
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
telefone | string | Obrigatório | Número com DDI. Ex: +5511999999999 |
mensagem | string | Obrigatório | Texto da mensagem |
contexto | string | Opcional | Contexto: RESERVA, PAGAMENTO, SUPORTE, LEMBRETE, CAMPANHA, TESTE, AGENDAMENTO_SAUDE |
contextoId | number | Opcional | ID do objeto relacionado |
usuarioId | number | Opcional | ID do usuário destinatário |
Resposta de sucesso (200):
Erro de Saldo Insuficiente (402)
Consultar Mensagem por ID
GET
Retorna os detalhes completos de uma mensagem enviada.
Resposta (200):
Listar Histórico
GET
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
page | int | Opcional | Página (default 0) |
size | int | Opcional | Itens por página (default 20, máx 100) |
status | string | Opcional | Filtro: QUEUED, SENT, DELIVERED, READ, FAILED, UNDELIVERED |
contexto | string | Opcional | Filtro por contexto |
content, totalElements, totalPages, number, size.Status de Mensagem
| Status | Descrição | Final? |
|---|---|---|
QUEUED | Na fila de envio | Não |
SENT | Enviado ao provider (Twilio/Meta) | Não |
DELIVERED | Entregue ao destinatário | Sim |
READ | Lido pelo destinatário | Sim |
FAILED | Falha no envio | Sim |
UNDELIVERED | Não entregue | Sim |
Enviar via OAuth2 (automações)
Para automações autenticadas por OAuth2 client_credentials (n8n, Zapier, scripts próprios), use o endpoint v2. A aplicação é inferida do token (claim aplicacao_id) — não se envia aplicacaoId no corpo.
POST
Autenticação: Authorization: Bearer <token> · Scope: mensagens:enviar
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
telefone | string | Obrigatório | Número com DDI ou apenas dígitos. Ex: +5511999999999 |
mensagem | string | Obrigatório | Texto da mensagem |
contexto | string | Opcional | Contexto da mensagem. Ex: SUPORTE, TESTE, OUTRO (default OUTRO) |
Resposta de sucesso (200):
Falha de envio (200 com sucesso=false):
401 (JWT inválido ou sem o scope mensagens:enviar); sem saldo retorna 402; telefone/mensagem ausentes retornam 400. O envio passa por histórico, tarifação e webhooks de status normalmente.