POST /send-message

Envia uma mensagem de texto livre via WhatsApp. Só funciona dentro da janela de 24h (o contato precisa ter enviado uma mensagem pra você nas últimas 24 horas).

Pra iniciar conversa ou mandar mensagem proativa fora da janela, use `POST /send-template`.

Campo Valor
URL https://api.wevi.chat/functions/v1/send-message
Método POST
Auth Authorization: Bearer wevi_... (API key)
Content-Type application/json
Rate limit 60 req/min por API key
Plano necessário Pro ou Ultra

Body

Formato de erro. Desde 8 de setembro de 2026, os erros deste endpoint saem no envelope padrão: error é um código estável (missing_connection_id) e a frase que você já conhecia (missing_connection_id) vai em message. O corpo de sucesso não mudou. A chave de teste wevi_test_ passou a valer aqui também.

Campo Tipo Obrigatório Descrição
connection_id string (uuid) sim ID da conexão WhatsApp.
to string sim Telefone destino (com ou sem +55).
text string sim Conteúdo da mensagem. Máximo 4096 caracteres.
contact_id string (uuid) não Vincula o envio a um contato.
idempotency_key string não Evita duplicação em retries.

Exemplos

curl -X POST https://api.wevi.chat/functions/v1/send-message \
  -H "Authorization: Bearer wevi_abc123..." \
  -H "Content-Type: application/json" \
  -d '{
    "connection_id": "conn-uuid",
    "to": "+5511999999999",
    "text": "Oi João! Seu pedido foi enviado e chega amanhã. Código de rastreio: BR123456789."
  }'

Resposta

Sucesso (200)

{
  "id": "envio-uuid",
  "wamid": "wamid.HBgN...",
  "status": "sent"
}

Fora da janela de 24h (200, status failed)

Quando o Meta retorna o erro 131047 (fora da janela), nós capturamos e respondemos:

{
  "id": "envio-uuid",
  "status": "failed",
  "error": "Não é possível enviar texto livre fora da janela de 24h. Use um template aprovado."
}

Erros HTTP

Status error
400 missing_connection_id, missing_to, missing_text
401 invalid_api_key
402 plan_limit_exceeded
404 connection_not_found
429 rate_limit_exceeded

Quando usar

  • Resposta a uma conversa em andamento. O contato te mandou mensagem hoje e você quer responder programaticamente (ex: bot externo, integração com helpdesk).
  • Confirmações dentro da janela (entrega, pagamento), quando o contato já interagiu.

Pra qualquer outro caso, use /send-template.

Próximo

/send-buttons