Email

Como usar o webhook de forma eficaz para a entrega de e-mail

Saiba o que é um webhook, quando usá-lo e quais são as diferenças entre webhooks e APIs. Em seguida, deixaremos nove perguntas frequentes sobre o uso de webhooks com o Mailgun.
Imagem para Como usar o webhook de forma eficaz para a entrega de e-mail

No Mailgun, somos a favor da automação e da melhoria da forma como você cria e entrega seu programa de e-mail. Então, se os dados são o novo ouro, o que isso significa para o seu fluxo de trabalho de e-mail se você puder obter dados de e-mail sobre os pontos de contato da jornada do cliente em tempo real? Ainda bem que você perguntou. A boa notícia é que isso não é ficção científica. São apenas webhooks.

O que são webhooks?

Um webhook é um callback de Hypertext Transfer Protocol (HTTP) definido pela pessoa usuária, normalmente acionado por um evento. De forma simples, um webhook atua como uma ponte entre dois aplicativos. Quando um evento acontece em um aplicativo, um webhook entrega os dados que notificam você sobre esse evento para outro aplicativo. Isso significa que você obtém dados em tempo real.

Os webhooks são muito úteis no rastreamento de e-mail, na análise de dados de entregabilidade de e-mail e no monitoramento de devoluções de e-mail. Eles também são úteis para a interface com plataformas de gestão de relacionamento com o cliente (CRM). Por exemplo, sempre que ocorre um evento do cliente, um webhook pode entregar notificações ao seu aplicativo para que você possa tomar providências.

Parece um pouco vago? Vamos nos aprofundar nos detalhes técnicos.

Depois que um evento ocorre, um webhook faz uma solicitação HTTP para o endpoint da API do seu aplicativo. Geralmente, assume a forma de uma solicitação POST com os dados anexados como JSON ou XML. Depois, cabe a você interpretar a mensagem.

Os scripts de webhook podem ser escritos em quase todas as linguagens de script, como C#, PHP, Python, Node.js, Java, Go e curl. Confira nossas Guia de API para relembrar toda essa sopa de letrinhas que acabamos de ver: HTTP, API, JSON, POST, XML e muito mais.

Por que você deve usar webhooks de e-mail?

Ufa, é muito jargão. Vamos nos afastar um pouco das questões técnicas e discutir por que os webhooks de e-mail são essenciais para o seu programa de e-mail marketing.

Os webhooks são a ponte ou a integração entre os vários aplicativos que você usa em seu programa de e-mail. Por exemplo, digamos que você tenha desenvolvido um aplicativo (App A) e agora esteja dependendo de um provedor de serviços de e-mail (ESP) para enviar seus e-mails (App B). Por fim, sua empresa usa um CRM (App C) para melhorar a jornada do cliente e os pontos de contato específicos das pessoas usuárias. Um webhook envia notificações de eventos entre seus aplicativos para que você possa reagir.

Lembre-se de que você pode usar os webhooks para acompanhar não apenas como os clientes interagem com seus e-mails, mas também o desempenho deles. Ao rastrear as mensagens de e-mail enviadas pelo seu aplicativo, você pode:

  • Responder rapidamente a quaisquer problemas.
  • Manter sua reputação do remetente e reputação de IP.
  • Manter sua entregabilidade de e-mail alta.

Quais são as diferenças entre webhook e API?

Se ambos, webhooks e APIs de e-mail, movem dados entre o seu aplicativo e um aplicativo de terceiros (como um ESP), qual é a diferença e por que você precisa de ambos?

Pense nisso como a diferença entre um lembrete automático por mensagem de texto e uma conversa telefônica para solicitar mais informações. Em outras palavras, um webhook permite que um aplicativo (como o seu ESP) envie dados para você, enquanto uma API permite que um aplicativo entregue dados a você mediante solicitação. Voltando à nossa analogia, um webhook é como uma mensagem de texto automática enviada assim que um evento acontece. Com uma API, você precisa ter uma “conversa telefônica” que vai e vem com um ESP para verificar se ocorreu um evento e se há dados com os quais você pode trabalhar. As APIs também oferecem suporte a outras funções além do simples envio de mensagens com dados.

Como usar webhooks com o Mailgun?

Os webhooks ajudam você a criar programas de e-mail melhores. Com o Mailgun, você pode usar webhooks para rastrear:

  • Cliques
  • Reclamações de spam
  • Entrega de e-mail
  • Aberturas de e-mail
  • Devoluções permanentes e temporárias de e-mail
  • Cancelamentos de inscrição

Você também pode usar webhooks com o Mailgun, envolvendo parâmetros comuns, como cabeçalhos e métodos de autenticação.

Quais são as nove perguntas frequentes sobre o uso de webhooks com o Mailgun?

Agora que já vimos o básico, vamos analisar nove perguntas frequentes que recebemos sobre o uso de webhooks com o Mailgun. Tem uma dúvida que não abordamos? Veja o que nossa Equipe de suporte pode fazer por você.

1. Devo usar um webhook com o Mailgun para receber notificações de entrega de e-mail em tempo real?

Não. Recomendamos usar nossa API de e-mail para monitorar as notificações de entrega quando você envia um grande número de e-mails. No entanto, se o seu envio de e-mail estiver abaixo de um determinado limite, um webhook também pode atender às suas necessidades. Esse limite pode mudar dependendo do ambiente em que você hospeda a URL do seu webhook (endpoint).

2. Posso usar webhooks para criar formulários de opt-in na minha landing page sem usar plugins ou serviços de terceiros?

Infelizmente, não. Os webhooks funcionam em eventos que ocorrem em e-mails que você já enviou. Em outras palavras, você não pode usar um webhook para coletar o nome de quem enviou o formulário em seu site.

3. Como posso testar uma chamada de webhook?

Ainda bem que você perguntou. Testar é importante para “acertar”. Temos um botão Testar webhook para cada tipo de evento de webhook descrito acima. Recomendamos testar seu webhook ao configurar o respectivo endpoint.

Você pode encontrar os dados enviados em cada webhook em nossa documentação. Também temos uma ferramenta que você pode usar para enviar suas solicitações e ver os dados enviados. Também sugerimos dar uma olhada no Runscope para testar webhooks; ele fornece um pouco mais de informações sobre suas solicitações.

4. Posso configurar meu site para enviar e-mails pelo Mailgun com o mesmo nome de domínio que uso em outro provedor de serviços de e-mail (ESP)?

Sim e não. Você pode usar o mesmo nome de domínio para envio por diferentes ESPs, mas não para o recebimento. Somente um servidor de e-mail pode receber mensagens para um determinado nome de domínio. Se você quiser registrar seu domínio em vários servidores para envio, mas não quiser receber um e-mail no Mailgun, não configure seus registros MX para apontar para o Mailgun.

Se você estiver recebendo e-mails em outro lugar com o seu domínio, recomendamos usar um subdomínio no Mailgun para poder receber e-mails também no Mailgun. Isso ajuda a melhorar a entregabilidade e nos permite lidar facilmente com qualquer problema nos servidores de e-mail dos destinatários.

5. Fazer polling na API ao enviar em escala é a única opção?

Fazer polling na API seria a única opção no momento. Nosso Events API é ótima para isso, pois você pode fazer polling de intervalos de tempo específicos, eventos e outros dados de usuários.

6. Posso usar webhooks para que as pessoas respondam diretamente ao meu fórum ao responderem ao e-mail enviado a elas pelo fórum?

Os webhooks não são a solução certa para esse problema. Em vez disso, recomendamos usar nosso recurso Routes, que funciona quase como um webhook. Faremos um POST das informações sobre essas mensagens no seu endpoint. No entanto, embora os webhooks funcionem em diferentes eventos que ocorrem em suas mensagens de e-mail, o Routes obtém dados dos e-mails recebidos.

7. O Mailgun tem ​​logs dos callbacks de webhook que foram feitos para a minha API?

Atualmente, não temos muito registro de logs para o nosso recurso de Webhooks. No momento, registramos apenas os dados sobre o Webhook sempre que ele falha ao fazer o POST no endpoint. Os dados do evento associados a esse evento de Webhook devem estar nos logs. No entanto, eles não conterão todas as informações que um webhook pode conter.

8. Há alguma maneira de obter a resposta em formato JSON ou XML de um Webhook entregue?

Infelizmente não; nosso Webhook fará o post dos dados codificados na URL ou em multipart (dependendo do conteúdo do Webhook).

9. Qual é o limite de e-mail em que devo mudar para um modelo de polling em vez de um modelo de webhook?

Esta é uma questão difícil, pois pode mudar com base no quanto você deseja investir na infraestrutura do seu aplicativo e em quais webhooks você tem interesse.

Considere o seguinte ao decidir se vai implementar um modelo de polling ou webhook: cada e-mail que você envia pode ter vários eventos associados (entregue, clicado, aberto etc.). Se houver pelo menos três eventos associados a cada e-mail que você envia, sua infraestrutura seria capaz de lidar com X e-mails vezes três por hora/dia? Se não, o ideal é procurar um modelo de polling (API). Ao determinar isso, você também pode verificar quantas solicitações/minuto a rede da sua infraestrutura consegue processar.

Se você estiver enviando muitas mensagens, todas em um curto espaço de tempo, lembre-se de que o Mailgun tentará entregar os eventos de Webhook de entrega assim que eles ocorrerem. No entanto, se sua infraestrutura não conseguir lidar com milhares de solicitações por minuto, as solicitações poderão expirar e cair. Ao receber o POST do Webhook, você está armazenando esses dados em um banco de dados? Às vezes, o fluxo de tráfego fará com que o banco de dados fique mais lento, causando lentidão ou tempo limite nas solicitações.

Conclusão

Esperamos que as perguntas frequentes respondam à maior parte de suas dúvidas sobre webhooks. Mas, se ainda tiver dúvidas, considere entrar em contato com nossa Equipe de suporte para obter mais ajuda. Até lá, se quiser saber mais sobre webhooks, confira nosso webinar, “Como usar webhooks de forma eficaz para a entrega de e-mail”, no link abaixo.