Base URL
https://lip-backend-1064145932505.southamerica-east1.run.app
Endpoints
POST /api/external/webhooksGET /api/external/webhooksGET /api/external/webhooks/{id}PATCH /api/external/webhooks/{id}DELETE /api/external/webhooks/{id}
Escopo necessario: webhooks:manage
Criar webhook
Body:
name(string, obrigatorio)url(string, obrigatorio)events(array de strings, obrigatorio)secret(string, opcional; se omitido, geramos automaticamente)headers(objeto, opcional)retryConfig(objeto, opcional)
retryConfig:
maxRetries(number, default 3)backoffMs(number, default 1000)
Exemplo:
Atualizar webhook
PATCH /api/external/webhooks/{id}
Campos comuns:
name,url,events,secret,headers,retryConfig,isActive
Eventos suportados
WHATSAPP_RECEIVEDWHATSAPP_SENTWHATSAPP_DELIVEREDWHATSAPP_READWHATSAPP_FAILEDEMAIL_SENTEMAIL_DELIVEREDEMAIL_OPENEDEMAIL_CLICKEDEMAIL_BOUNCEDEMAIL_UNSUBSCRIBEDEMAIL_COMPLAINEDCAMPAIGN_SCHEDULEDCAMPAIGN_STARTEDCAMPAIGN_COMPLETEDCAMPAIGN_FAILEDCAMPAIGN_PAUSEDCAMPAIGN_CANCELLEDCONTACT_SUBSCRIBEDCONTACT_UNSUBSCRIBEDCONTACT_CONSENT_GIVENCONTACT_CONSENT_REVOKED
Payload
Estrutura base:
Exemplo: WHATSAPP_RECEIVED
Exemplo: WHATSAPP_SENT
Exemplo: EMAIL_SENT
Headers enviados
Cada entrega inclui:
Content-Type: application/jsonUser-Agent: LIP-Webhook/1.0X-LIP-Event: <EVENTO>X-LIP-Timestamp: <timestamp>X-LIP-Attempt: <tentativa>X-LIP-Signature: <assinatura>(quandosecretestiver configurado)
Assinatura HMAC
A assinatura e um HMAC SHA-256 do payload com o timestamp:
signature = HMAC_SHA256(secret, "{timestamp}.{payload_json}")
Recomendacao:
- Use o corpo bruto da requisicao para validar o HMAC.
Exemplo de validacao (pseudo):
Retries e timeouts
- Timeout de entrega: 30s
- Retries: exponencial com
backoffMsemaxRetries - Retornando
2xxo webhook e considerado entregue
Última atualização
9 de fevereiro de 2026