Webhook gateway x API gateway: qual é a diferença?

Webhook gateways e API gateways resolvem problemas relacionados, mas diferentes. Os dois ficam entre serviços externos e a sua aplicação. Os dois cuidam de autenticação, roteamento e gestão de tráfego, mas operam sobre modelos de comunicação opostos.

Este guia detalha o que cada gateway faz, como os recursos se comparam, quando você precisa de um ou de outro e por que a maioria dos sistemas em produção acaba precisando dos dois.

O que é um API gateway?

Um API gateway é um ponto de entrada centralizado que gerencia tráfego síncrono, no modelo requisição-resposta, entre clientes e serviços de backend. Quando um cliente (um navegador, um app mobile ou outro serviço) faz uma chamada de API, a requisição chega primeiro ao gateway. O gateway autentica a requisição, aplica rate limits, roteia para o serviço de backend correto e devolve a resposta ao cliente.

Os API gateways surgiram junto com a migração para arquiteturas de microsserviços. Sem um gateway, cada cliente precisa conhecer o endereço de cada serviço, tratar a autenticação por conta própria e gerenciar os próprios retries. O gateway centraliza essas preocupações transversais em uma única camada.

O modelo de comunicação é síncrono e movido por requisições: o cliente envia uma requisição, espera uma resposta e a transação se encerra. Se o backend estiver indisponível, o cliente recebe um erro imediatamente.

Recursos principais de um API gateway

Roteamento de requisições e balanceamento de carga. O gateway roteia as requisições recebidas para o serviço de backend adequado com base no path da URL, nos headers ou em outros atributos da requisição. Ele distribui o tráfego entre várias instâncias do serviço usando estratégias como round-robin, least connections ou roteamento com pesos.

Autenticação e autorização. Os API gateways verificam a identidade do cliente antes que a requisição chegue aos serviços de backend, normalmente via OAuth 2.0, validação de JWT, API keys ou mTLS. Isso tira a lógica de segurança dos serviços individuais e a concentra em um único ponto de aplicação.

Rate limiting e throttling. O gateway aplica cotas de requisição por cliente, por API key ou globalmente, para proteger os serviços de backend de sobrecarga. Quando um cliente ultrapassa a cota, o gateway rejeita a requisição imediatamente com um código de status 429.

Transformação de requisições e respostas. API gateways podem modificar requisições antes de encaminhá-las (adicionando headers, reescrevendo paths) e transformar respostas antes de devolvê-las ao cliente (filtrando campos, agregando respostas de vários serviços).

Cache. Respostas cacheáveis e requisitadas com frequência podem ser armazenadas na camada do gateway para reduzir a carga no backend e melhorar a latência.

Observabilidade e analytics. API gateways registram metadados das requisições, acompanham latência, taxas de erro e throughput, e expõem métricas para ferramentas de monitoramento. Isso dá aos times visibilidade sobre os padrões de uso e a performance da API.

Versionamento e descontinuação de APIs. O gateway pode rotear o tráfego para diferentes versões de um serviço com base em headers ou padrões de URL, apoiando rollouts graduais e compatibilidade retroativa.

Casos de uso comuns de API gateway

API gateways são a escolha certa quando você precisa gerenciar tráfego síncrono iniciado pelo cliente:

  • Roteamento de microsserviços: um único ponto de entrada para dezenas de serviços de backend, para que os clientes não precisem rastrear endereços individuais.
  • Backends para mobile e web: agregar respostas de vários serviços em uma única chamada de API para clientes de frontend.
  • Exposição de API para terceiros: oferecer uma API pública com autenticação, rate limiting e medição de uso.
  • Tradução de protocolo: aceitar requisições REST dos clientes e traduzi-las para gRPC nos serviços internos.

Entre as soluções populares de API gateway estão Kong, AWS API Gateway, NGINX, Apigee, Azure API Management e Tyk.

O que é um webhook gateway?

Um webhook gateway é um serviço centralizado que gerencia tráfego HTTP assíncrono e orientado a eventos, especificamente webhooks. Quando um serviço externo como Stripe, Shopify ou GitHub dispara um webhook, o evento chega ao gateway. O gateway faz a ingestão do evento, verifica sua autenticidade, coloca-o em fila para processamento e o entrega ao serviço interno adequado.

O modelo de comunicação é diferente do de um API gateway. O tráfego de webhooks é baseado em push: serviços externos enviam eventos para o seu sistema quando algo acontece, sem que o seu sistema os solicite. Você não controla o momento, o volume nem o formato desses eventos. Um webhook gateway existe para absorver essa imprevisibilidade.

A diferença crítica é a durabilidade. Quando um webhook chega e o seu serviço downstream está indisponível, um API gateway simplesmente retornaria um erro. Um webhook gateway aceita o evento, coloca em fila e tenta a entrega de novo até que o seu serviço esteja pronto. O evento nunca se perde.

Recursos principais de um webhook gateway

Ingestão confiável com enfileiramento. O gateway aceita os webhooks recebidos imediatamente (devolvendo um 200 ao provedor) e os enfileira em um armazenamento durável. Isso desacopla a ingestão do processamento: picos de tráfego, consumidores lentos e indisponibilidades temporárias não causam perda de eventos.

Verificação de assinatura e autenticação. Cada provedor de webhooks autentica os eventos de um jeito: assinaturas HMAC, Basic Auth, Bearer tokens, API keys. Um webhook gateway verifica a autenticidade automaticamente, idealmente com suporte pré-configurado para os provedores mais comuns, para que você não precise implementar a lógica de verificação em cada integração.

Filtragem e deduplicação. Nem todo evento é relevante, e entregas duplicadas são comuns (provedores fazem retry em timeouts, redes falham). O gateway filtra eventos irrelevantes e faz a deduplicação no nível da infraestrutura, antes que os eventos cheguem ao código da sua aplicação.

Roteamento e fan-out. Conforme as integrações crescem, você precisa rotear eventos de provedores diferentes para serviços diferentes, enviar um mesmo evento para vários destinos ou rotear condicionalmente com base no conteúdo do payload — tudo isso sem escrever lógica de roteamento na sua aplicação.

Transformação de payload. Provedores diferentes enviam formatos diferentes. O gateway pode normalizar os payloads em uma estrutura consistente antes da entrega, simplificando o processamento downstream.

Observabilidade, tracing e debug. Quando algo dá errado com um evento assíncrono, rastrear o problema é mais difícil do que com uma requisição síncrona que retornou um código de erro. Um webhook gateway oferece tracing visual dos eventos, busca full-text no histórico e acompanhamento estruturado de issues. Veja o nosso guia sobre arquitetura de observabilidade de webhooks para se aprofundar.

Retries e recuperação. Retries automáticos com backoff configurável tratam falhas transitórias. O replay em massa cobre indisponibilidades prolongadas: você seleciona um intervalo de tempo de eventos com falha e os reenvia de uma vez.

Alertas. Integração com ferramentas de resposta a incidentes (Slack, PagerDuty, OpsGenie) para que o seu time saiba das falhas de entrega antes dos seus clientes.

Casos de uso comuns de webhook gateway

Webhook gateways são a escolha certa quando você recebe tráfego orientado a eventos de sistemas externos:

  • Integrações SaaS: receber eventos de processadores de pagamento (Stripe), plataformas de e-commerce (Shopify), controle de versão (GitHub), ferramentas de comunicação (Twilio) e dezenas de outros provedores.
  • Ingestão multiprovedor: centralizar webhooks de muitos provedores com esquemas de autenticação, formatos de payload e comportamentos de entrega diferentes em uma única camada de ingestão confiável.
  • Roteamento e fan-out de eventos: distribuir os eventos recebidos para vários serviços internos com base no tipo de evento, na origem ou no conteúdo do payload.
  • Compliance e auditabilidade: manter um log completo e pesquisável de cada evento recebido, de como ele foi processado e se foi entregue com sucesso.

Entre as soluções de webhook gateway construídas para esse fim estão o Hookdeck Event Gateway, o Convoy e o Svix Ingest. Para entender melhor como essas soluções lidam com a semântica de entrega, veja o nosso guia sobre garantias de entrega de webhooks.

Principais diferenças entre webhook gateways e API gateways

A distinção arquitetural se resume ao modelo de comunicação que cada gateway gerencia.

Direção da comunicação

Um API gateway gerencia requisições que chegam de clientes que esperam uma resposta. O cliente inicia a interação, envia uma requisição e aguarda.

Um webhook gateway gerencia eventos que chegam de serviços externos que não esperam uma resposta significativa além da confirmação de recebimento. O serviço externo inicia a interação empurrando um evento quando algo acontece.

Síncrono x assíncrono

API gateways operam de forma síncrona. O cliente envia uma requisição, o gateway encaminha, o backend processa e a resposta volta pelo gateway até o cliente. Toda a transação acontece em um único ciclo requisição-resposta.

Webhook gateways operam de forma assíncrona. O evento é recebido e confirmado imediatamente. Processamento, transformação, roteamento e entrega acontecem separadamente, potencialmente segundos ou minutos depois. É esse desacoplamento que permite a durabilidade: o gateway consegue reter eventos durante quedas dos sistemas downstream e entregá-los quando os serviços se recuperam.

Como cada um lida com falhas

Essa é a diferença arquitetural de maior consequência.

Quando um serviço de backend está indisponível, o API gateway retorna um erro ao cliente (normalmente 502 ou 503). O cliente é responsável por decidir o que fazer: tentar de novo, mostrar um erro ao usuário ou falhar de forma controlada. O gateway não guarda a requisição que falhou.

Quando um serviço downstream está indisponível, o webhook gateway retém o evento. Ele o enfileira, tenta a entrega de novo com backoff configurável e pode alertar o seu time sobre a falha. O provedor do webhook não precisa saber que algo deu errado: ele já recebeu o 200 de confirmação no momento da ingestão.

Para tráfego de API isso faz sentido: o cliente está esperando e precisa saber o estado atual. Para tráfego de webhooks, perder eventos é inaceitável. Um evento de pagamento da Stripe descartado ou um webhook de pedido da Shopify perdido tem consequências reais para o negócio, que podem só aparecer horas ou dias depois. Para mais sobre o tema, veja o nosso guia sobre garantias de entrega de webhooks.

Comportamento do rate limiting

API gateways aplicam rate limit no ponto de aceitação. Quando um cliente ultrapassa a cota, o gateway rejeita a requisição com uma resposta 429. O cliente é instruído a diminuir o ritmo.

Webhook gateways aplicam rate limit durante o processamento, não na ingestão. O gateway aceita todos os eventos recebidos e controla o ritmo de entrega para os seus serviços downstream. Isso protege a sua infraestrutura sem descartar eventos.

Modelo de autenticação

API gateways autenticam quem chama: este cliente está autorizado a fazer esta requisição? Os mecanismos comuns incluem tokens OAuth, API keys e certificados mTLS.

Webhook gateways verificam quem envia: este evento veio mesmo da Stripe ou é uma requisição forjada? Isso normalmente envolve validar assinaturas HMAC, checar segredos compartilhados ou verificar esquemas de autenticação específicos de cada provedor. Cada provedor tem o seu método, então um webhook gateway precisa suportar muitas estratégias de verificação ao mesmo tempo.

Comparação de recursos

CapacidadeAPI GatewayWebhook Gateway
Modelo de comunicaçãoRequisição-resposta síncronaPush de eventos assíncrono
Direção do tráfegoCliente -> Gateway -> BackendProvedor -> Gateway -> Backend
Tratamento de falhasRetorna erro ao clienteEnfileira o evento e faz retry da entrega
Rate limitingRejeita requisições excedentes (429)Aceita todos os eventos e controla a taxa de entrega
AutenticaçãoValida credenciais do clienteVerifica assinaturas do provedor
EnfileiramentoNão (pass-through sem estado)Sim (fila durável de eventos)
DeduplicaçãoNormalmente nãoSim (exata e por campo)
Replay de eventosNãoSim (replay em massa para recuperação)
CacheSimNão se aplica
Balanceamento de cargaSim (entre instâncias do serviço)Roteamento e fan-out (entre destinos)
Tradução de protocoloSim (REST para gRPC, etc.)Normalização de payload

Exemplos do mundo real

Comparações abstratas só vão até certo ponto. Veja como cada tipo de gateway funciona em um cenário concreto.

API gateway na prática: um app de delivery de comida

Imagine uma plataforma de delivery de comida com um app mobile que conversa com um backend de microsserviços, com serviços separados para contas de usuário, cardápios de restaurantes, pedidos, pagamentos e rastreamento da entrega.

Quando um cliente abre o app e navega pelos restaurantes, a requisição chega primeiro ao API gateway. O gateway valida o token JWT do usuário, verifica se a requisição não ultrapassou os rate limits e a roteia para o serviço de cardápios. O serviço devolve a lista de restaurantes, o gateway repassa a resposta ao app e todo o ciclo se completa em milissegundos.

Quando o cliente faz um pedido, o gateway roteia a requisição para o serviço de pedidos, que se coordena com o serviço de pagamentos. Se o serviço de pagamentos estiver temporariamente fora do ar, o gateway retorna um erro 502 ao app. O app mostra uma mensagem de erro ao cliente e permite que ele tente de novo. A interação é síncrona: o cliente está esperando e precisa saber na hora se o pedido foi concluído.

O papel do API gateway aqui é gerenciar o tráfego entre o cliente e o backend: autenticar cada requisição, rotear para o serviço correto, aplicar rate limits para que um cliente mal comportado não derrube o sistema e oferecer ao time de operações dashboards com latência de requisições, taxas de erro e throughput de todos os serviços.

Webhook gateway na prática: uma plataforma de e-commerce

Agora pense no backend dessa mesma plataforma de delivery, mas focando no que acontece depois que o pedido é feito. A plataforma se integra à Stripe para pagamentos, à Twilio para notificações por SMS e a um parceiro de logística para o despacho da entrega — todos se comunicando via webhooks.

Quando a Stripe processa o pagamento, ela envia um webhook payment_intent.succeeded para a plataforma. Quando a Twilio entrega o SMS de confirmação ao cliente, ela envia um webhook de status de entrega. Quando o parceiro de logística atualiza o status da entrega, ele envia o próprio webhook. Cada provedor tem um formato de payload diferente, um esquema de autenticação diferente e um comportamento de retry diferente.

Sem um webhook gateway, a plataforma precisa de um endpoint dedicado para cada provedor, código próprio de verificação de assinatura para cada um, lógica própria de retry para quando o serviço de pedidos estiver ocupado e correlação manual de logs quando algo dá errado. Durante um deploy ou uma breve indisponibilidade, os webhooks recebidos dos três provedores falham silenciosamente. A Stripe pode tentar de novo, mas no cronograma dela, e o parceiro de logística pode nem tentar.

Com um webhook gateway, os três provedores enviam eventos para endpoints gerenciados pelo gateway. O gateway verifica cada evento usando o método correto de cada provedor (a assinatura HMAC da Stripe, o auth token da Twilio, a API key do parceiro de logística), enfileira todos os eventos em um armazenamento durável e os entrega ao serviço de pedidos no ritmo que ele suporta. Se o serviço de pedidos ficar fora do ar por cinco minutos durante um deploy, nenhum evento se perde: eles ficam na fila e são entregues quando o serviço volta. Se a Stripe enviar um evento payment_intent.succeeded duplicado (o que acontece), o gateway faz a deduplicação antes que ele chegue ao serviço de pedidos.

O papel do webhook gateway aqui é diferente do papel do API gateway: ele absorve tráfego imprevisível iniciado externamente e garante que todo evento seja verificado, enfileirado e entregue, mesmo quando as coisas dão errado.

Quando você precisa de cada um?

Você precisa de um API gateway quando:

O seu sistema expõe APIs que os clientes chamam sob demanda. Se você roda um backend de microsserviços que serve uma aplicação web, um app mobile ou uma API pública, o API gateway cuida das preocupações transversais de autenticação, roteamento, rate limiting e observabilidade desse tráfego síncrono.

Você precisa de um webhook gateway quando:

O seu sistema recebe eventos de serviços externos que você não controla. Se você se integra a plataformas SaaS que enviam webhooks (processadores de pagamento, plataformas de e-commerce, ferramentas de comunicação, sistemas de CI/CD), o webhook gateway resolve os desafios específicos de receber, verificar, enfileirar e entregar de forma confiável esse tráfego assíncrono.

Você precisa dos dois quando:

A maioria dos sistemas em produção que se integram a serviços externos precisa dos dois. O API gateway gerencia o tráfego da sua API voltado para fora. O webhook gateway gerencia o tráfego de eventos voltado para dentro. Eles ficam em pontos diferentes da sua arquitetura e resolvem problemas diferentes.

O erro que os times costumam cometer é rotear webhooks pelo API gateway. API gateways não foram projetados para a durabilidade, o enfileiramento e a semântica de retry que o tráfego de webhooks exige. O resultado normalmente é a perda de eventos durante indisponibilidades, ausência de deduplicação, ausência de replay de eventos e a necessidade de investigar falhas de webhook por logs genéricos de API que não foram feitos para tracing de eventos assíncronos.

Conclusão

API gateways e webhook gateways são infraestruturas complementares, não alternativas. Um API gateway gerencia tráfego síncrono de requisição-resposta em que o cliente controla a interação. Um webhook gateway gerencia tráfego assíncrono orientado a eventos em que os provedores externos controlam o momento e o volume.

As diferenças arquiteturais (durabilidade, enfileiramento, tratamento de falhas, comportamento do rate limiting e modelo de autenticação) significam que cada tipo de gateway foi construído para o seu padrão de comunicação. Usar um API gateway para tráfego de webhooks (ou o contrário) cria lacunas que aparecem como eventos perdidos, serviços sobrecarregados ou pontos cegos na investigação de problemas.

Se o seu sistema se integra a serviços externos via webhooks, um webhook gateway construído para isso, como o Hookdeck Event Gateway, oferece a confiabilidade de ingestão, a verificação de assinatura, o enfileiramento e a observabilidade que o tráfego de webhooks exige. Para um olhar mais aprofundado sobre como os webhook gateways funcionam e o que observar, veja o nosso guia completo sobre webhook gateways.