Skip to content
Aprendizados da semana (13 a 19)

Aprendizados da semana (13 a 19)

September 20, 2026

O que é um webhook?

O termo é uma combinação de ‘web’ (referente à comunicação baseada em HTTP) e ‘hook’ (uma função usada para interceptar eventos relevantes).

Foi em 2007 que o programador Jeff Lindsay (mais conhecido como progrium) criou e ajudou a disseminar o conceito por meio do post “Web hooks to revolutionize the web”.

O problema que o webhook resolve

Imagine um e-commerce que utiliza um serviço de pagamento de terceiros, como a AbacatePay. Ele precisa saber quando o processamento do pagamento foi finalizado para que de um feedback ao usuário, dispare um e-mail de ‘compra bem sucedida’ ou algo nesse sentido.

Como você faria isso? Como projetaria a sua API para obter os dados após o processamento da operação em um sistema de terceiros?

Uma possível solução é fazer requisições de tempo em tempo para ver se foi finalizada a operação, processo esse que se chama polling. Porém acaba gerando custos como um alto tráfego de rede e processamento desnecessário.

E para resolver isso, o webhook entra em cena. Ele atua com uma arquitetura baseada em eventos, então voltando ao exemplo do e-commerce: quando a operação é finalizada (evento) o webhook dispara uma espécie de função de callback que vai enviar um request HTTP POST para o endpoint que foi definido na integração.

Dessa forma, há economia de várias requisições que teriam o status ‘processando’ para uma única requisição com o status final (aprovado ou rejeitado).

Confira essas prints retiradas do artigo da Alura que exemplificam melhor o que o webhook faz e como ele funciona.

webhook - anexo 01

webhook - anexo 02

Vantagens e desvantagens

🟢 eliminação de consultas frequentes entre APIs (consequentemente, redução tráfego de rede e processamento)

🟢 facilidade de integração em algumas plataformas (Mercado Pago, Github, Discord…)

🔴 necessidade de medidas de segurança robustas entre os sistema para garantir a confiabilidade da conexão e dos dados

🔴 complexidade para lidar com erros e bugs gerados durante a callback do webhook, sendo necessário dispor de recursos para monitorar a detecção de falhas.

Exemplos no seu dia a dia

Ao executar um git push, você envia o seu código para o GitHub. Esse evento pode disparar um webhook para avisar o Discord de que há novidades ou, internamente, acionar o GitHub Actions para executar o seu pipeline de Continuous Integration e/ou Continuous Deployment (CI/CD).

Se sua aplicação em produção sofrer um erro grave, o Sentry aciona um webhook do Jira, que recebe o detalhes do erro (stack trace) e cria um card com esses detalhes.

Se você quiser configurar um canal do discord para que toda vez que ao dar um git push e o pipeline quebrar, você seja notificado, é possível também fazer essa configuração (inclusive, na referência do artigo da Alura, eles ensinam como fazer algo nesse sentido, de uma conferida depois.)


Fontes