Mensagens
Enviar Evento
Cria um evento (reunião/agenda) com data, local e lembrete
POST
Enviar Evento
Auth:
Envelope de erro:
TokenAccount ou TokenInstance • Rate-limit: Global (100/min) • Idempotente: não
Descrição
Envia uma mensagem de evento (card de reunião/agenda) a um contato 1-a-1 ou, mais comumente, a um grupo (@g.us). Os campos startAt e endAt aceitam datas no formato ISO 8601 (RFC3339) com fuso horário (ex.: 2026-04-28T14:00:00-03:00) e são convertidos para Unix (segundos) internamente. Opcionalmente o evento pode incluir description, location, joinLink, lembrete (hasReminder + reminderOffsetSec) e flags como isScheduleCall e extraGuestsAllowed. Suporta delay, replyTo e replyPrivate.
Exemplos
Reunião com local e lembrete
Cria um evento em um grupo com início e fim, local e um lembrete 15 minutos antes (reminderOffsetSec: 900).
Chamada agendada com link
isScheduleCall: true marca o evento como uma chamada e joinLink informa o link para entrar.
Resposta de sucesso
Ocontent retornado é o nome do evento, usado para indexar a mensagem no histórico. Guarde o messageId para correlacionar respostas (going/not-going) recebidas via webhook.
200 OK
As confirmações de presença dos participantes não chegam síncronamente nesta resposta, elas trafegam como eventos no webhook/WebSocket configurado, referenciando o
messageId do evento.Parâmetros de rota
Nome da instância (ex.:
$Instance_Name).Headers
TokenAccount ou TokenInstance.application/jsonRequest body
Destino: telefone (
5511999999999) ou JID. Eventos funcionam melhor em grupos (@g.us).Título do evento exibido no card.
Data/hora de início no formato ISO 8601 (RFC3339) com fuso, ex.:
2026-04-28T14:00:00-03:00.Data/hora de término no formato ISO 8601 (RFC3339). Opcional.
Descrição/detalhes do evento.
Local do evento. Campos:
name, address, latitude, longitude (todos opcionais).Link para entrar (usado em chamadas agendadas).
Marca o evento como uma chamada agendada.
Habilita um lembrete para o evento.
Antecedência do lembrete, em segundos antes do
startAt (ex.: 900 = 15 min).Permite que convidados tragam acompanhantes.
Marca o evento como cancelado.
Tempo em segundos para aguardar antes de enviar. Durante o intervalo, o servidor envia o indicador de “digitando…” ao destinatário e dispara o “paused” antes do envio real.
ID da mensagem a ser citada (reply). A mensagem original precisa pertencer à mesma instância e ter sido salva no banco.
Quando
true e replyTo aponta para uma mensagem originária de um grupo, o evento é redirecionado para o privado do autor original (mantendo a citação).Identificador de origem para rastreabilidade (ex.:
crm, bot-suporte, n8n). Salvo no registro da mensagem e propagado para webhooks.Notas
startAt/endAtsão ISO 8601 (RFC3339) com fuso horário; o servidor converte para Unix (segundos).delayé em segundos (não milissegundos);reminderOffsetSectambém é em segundos.- Eventos são exibidos melhor em grupos (
@g.us). - As confirmações de presença não voltam nesta chamada, assine os eventos do webhook/WebSocket para recebê-las referenciando o
messageId.
Erros
| HTTP | Status interno | Mensagem |
|---|---|---|
| 400 | , | Instance name is required |
| 400 | , | Invalid request body: <detalhe> |
| 400 | , | Number is required |
| 400 | , | Name is required |
| 400 | , | startAt is required |
| 400 | invalid_request | Invalid startAt, expected ISO 8601 (RFC3339): <detalhe> |
| 400 | invalid_number | Invalid phone number format: <detalhe> |
| 404 | , | Instance not found |
| 500 | send_failed | Failed to send event: <reason> |
| 503 | disconnected | Instance is not connected to WhatsApp |