Anúncios • 26 DE FEVEREIRO DE 2026

Anunciando Webhooks v2

Webhooks v2 chegou com 36 tipos de eventos, assinaturas HMAC-SHA256, tentativas automáticas de reenvio e documentação completa para cada payload.
Webhooks v2 do Emailit
Webhooks v2 do Emailit

Estamos lançando os Webhooks v2, uma reformulação completa de como o Emailit entrega notificações de eventos em tempo real para suas aplicações. Com 36 tipos de eventos distribuídos em 9 categorias de recursos, verificação de assinatura criptográfica e uma política robusta de novas tentativas, os Webhooks v2 oferecem tudo o que você precisa para construir integrações confiáveis e orientadas por eventos.

O que há de novo

36 tipos de eventos em 9 recursos

Os Webhooks v2 cobrem todos os recursos do Emailit. Você pode se inscrever exatamente nos eventos que importam para você ou usar all_events para receber tudo.

Eventos de email acompanham todo o ciclo de vida da entrega:

EventoDescrição
email.acceptedAceito para entrega
email.scheduledAgendado para entrega futura
email.deliveredEntregue ao servidor de email do destinatário
email.bouncedFalha permanente (bounce definitivo)
email.attemptedFalha temporária na entrega
email.failedFalhou devido a um erro específico
email.rejectedAceito e depois rejeitado
email.suppressedDestinatário está na lista de supressão
email.receivedEmail recebido foi aceito
email.complainedReclamação de spam registrada
email.clickedUm link no email foi clicado
email.loadedConteúdo do email foi carregado (aberto)

Eventos CRUD para domínios, audiências, assinantes, contatos, templates, supressões, verificações de email e listas de verificação de email, cada um com eventos .created, .updated e .deleted.

Estrutura consistente de eventos

Cada payload de webhook segue o mesmo formato, facilitando a criação de um único manipulador para todos os eventos:

{
  "event_id": "evt_2bH7kNwP5mQaV1sXgIdKe6pZr",
  "type": "email.delivered",
  "data": {
    "object": {
      "id": "em_4yM2nTvR8oPcX3uZiKeLg7sB",
      "object": "email",
      ...
    }
  }
}

O event_id identifica exclusivamente cada evento, type informa o que aconteceu, e data.object contém o recurso completo no momento do evento.

Verificação de assinatura HMAC-SHA256

Cada requisição de webhook é assinada com seu segredo de webhook usando HMAC-SHA256. A assinatura é calculada sobre {timestamp}.{rawBody}, permitindo verificar autenticidade e atualidade em uma única etapa.

Cada requisição inclui dois cabeçalhos:

  • X-Emailit-Signature — o digest hexadecimal HMAC-SHA256
  • X-Emailit-Timestamp — o timestamp Unix usado na assinatura

Recomendamos fortemente usar comparação segura contra timing (ex: crypto.timingSafeEqual no Node.js) para prevenir ataques de timing, e rejeitar requisições com timestamps mais antigos que alguns minutos para proteger contra ataques de replay.

Exemplos completos de verificação em Node.js, Python, PHP, Ruby e Go estão disponíveis na documentação de Assinatura de Requisição.

Novas tentativas automáticas com backoff exponencial

Se seu endpoint não responder com um 2xx em 30 segundos, o Emailit tenta novamente automaticamente:

TentativaAtraso
05 segundos
15 minutos
230 minutos
32 horas
45 horas
510 horas
624 horas

São 7 tentativas no total ao longo de aproximadamente 41 horas. Após a tentativa final, o webhook é automaticamente desabilitado. Você pode reativá-lo pelo painel a qualquer momento.

Formato da requisição

Todas as requisições de webhook são POST com corpo JSON. Cada requisição inclui estes cabeçalhos:

CabeçalhoDescrição
Content-Typeapplication/json
User-AgentEmailit-Webhook/1.0
X-Emailit-SignatureAssinatura HMAC-SHA256
X-Emailit-TimestampTimestamp Unix usado na assinatura

Melhores práticas

  • Responda rapidamente — Retorne um 2xx imediatamente e processe o payload de forma assíncrona em um job em segundo plano.
  • Trate duplicatas — O mesmo evento pode ser entregue mais de uma vez durante as tentativas. Use event_id para desduplicar.
  • Verifique assinaturas — Sempre valide o cabeçalho X-Emailit-Signature para confirmar que a requisição veio do Emailit.
  • Proteja contra ataques de replay — Verifique o X-Emailit-Timestamp e rejeite requisições mais antigas que alguns minutos.

Documentação completa

Publicamos documentação completa para os Webhooks v2 com exemplos detalhados de payload e descrições de campos para todos os 36 eventos:

Comece agora

Acesse a documentação de Webhooks para começar, ou vá direto para a Referência da API para criar seu primeiro endpoint de webhook.

Blog

As últimas novidades e atualizações, direto da Emailit.

Mantenha-se atualizado com os artigos mais recentes do Blog Emailit.

Localizado por IA