Skip to main content

Webhooks (saída)

Configure em Integrações → Acesso à API → Webhooks (session, workspaces:manage). O Flow envia POST JSON. Valide a assinatura X-Flow-Signature (HMAC-SHA256 do corpo bruto). A URL precisa ser HTTPS pública. Flow rejeita hosts privados/loopback (mitigação SSRF). Redirects HTTP durante a entrega não são seguidos.

Eventos

Envelope

Verificação: hex = HMAC-SHA256(secret, raw_body) — use os bytes brutos do JSON recebido, sem re-serializar. Falhas retentam com backoff; após falhas sustentadas o webhook pode ser desativado (active=false). As entregas têm semântica at-least-once. Use data.id ou data.provider_message_id para deduplicar no sistema consumidor.

Diagnóstico de falhas

Em Integrações → Acesso à API → Webhooks → Últimas entregas, o Flow mostra cada tentativa, o status HTTP e uma recomendação. Quando o diagnóstico confirma que a falha está no endpoint configurado, a interface indica o ajuste necessário. Em causas desconhecidas, o diagnóstico permanece neutro para investigação conjunta. O Flow mantém a validação TLS. Não é seguro ignorar erros de certificado: isso poderia enviar dados a um servidor que não comprova ser o domínio configurado.

Mensagens WhatsApp

Os eventos de mensagem incluem o número conectado do workspace e o número do contato. from_phone e to_phone sempre representam o sentido real da mensagem. Para preservar esse contrato, mensagens sem uma conexão WhatsApp resolvida ou sem o número comercial da conexão não geram evento; o Flow registra a omissão em log para investigação.
Em message.sent, direction é outbound e from_phone é o business_phone. Mensagens de mídia podem incluir caption, media_url e mimetype. media_url só é emitida quando o provedor informa uma URL HTTP(S); URLs do provedor podem expirar e não devem ser tratadas como armazenamento durável.