Skip to content

Práticas Recomendadas ​

Guia de boas práticas para integrar webhooks de forma segura, eficiente e confiável.

Segurança ​

Use HTTPS ​

Sempre configure sua URL de webhook com HTTPS para garantir que os dados sejam transmitidos de forma criptografada.

Valide a Secret Key ​

Se você configurou uma Secret Key, valide-a em cada requisição. A chave é enviada no header X-Webhook-Secret.

Valide os Payloads ​

Sempre valide os dados recebidos antes de processar:

  • Verifique se os campos obrigatórios existem (event, data, webhook_id)
  • Valide se o tipo de evento é conhecido
  • Trate campos null adequadamente

Desempenho ​

Responda Rápido ​

O MeChat aguarda até 30 segundos por uma resposta. Responda imediatamente com status 200 e processe os dados de forma assíncrona.

Use Filas ​

Para alto volume de webhooks, use filas de processamento. Isso permite responder rapidamente e processar os eventos em segundo plano.

Implemente Retry ​

Se sua integração falhar ao chamar sistemas externos, implemente retry com backoff exponencial para evitar sobrecarga.

Confiabilidade ​

Evite Duplicatas ​

Use o campo webhook_id para detectar e ignorar webhooks duplicados. Armazene os IDs processados no banco de dados.

Monitore e Alerte ​

Configure alertas para falhas. Se o processamento falhar, retorne status 500 para que o MeChat tente novamente.

Mantenha Logs ​

Registre todos os webhooks recebidos para debug e auditoria. Inclua o webhook_id, event e timestamp nos logs.

Organização ​

Separe por Tipo de Evento ​

Organize seu código por tipo de evento. Cada evento pode ter uma lógica de processamento diferente.

Use Múltiplos Webhooks ​

Configure webhooks separados para diferentes finalidades:

WebhookEventosDestino
CRMMESSAGE_RECEIVED, CHAT_CREATEDSistema de tickets
SatisfaçãoCHAT_ENDEDPesquisa de satisfação
AlertasCHANNEL_DISCONNECTEDSistema de monitoramento

Checklist ​

Antes de ir para produção, verifique:

  • [ ] URL usa HTTPS
  • [ ] Resposta em menos de 30 segundos
  • [ ] Processamento assíncrono implementado
  • [ ] Deduplicação por webhook_id
  • [ ] Tratamento de erros configurado
  • [ ] Logs estruturados
  • [ ] Alertas de falha configurados
  • [ ] Secret Key configurada e validada
  • [ ] Testes realizados com gohook.io

Recursos Relacionados ​