A alternativa ao ngrok para webhooks
O ngrok é um ótimo túnel genérico, mas para debugar webhooks ele é caro e não captura nada. O Relay do Webhook Toolkit é um túnel dedicado a webhooks: URL permanente, CLI sem instalação. Ao lado, o Receiver guarda o histórico das suas requisições e sabe reexecutá-las no seu handler.
curl -fsSL https://webhook-toolkit.com/relay.js -o relay.js node relay.js --token=rly_xxx --to=localhost:3000
Perguntas frequentes
O Relay substitui o ngrok?
Para webhooks, sim. O Relay te dá uma URL pública permanente que encaminha cada requisição para o seu localhost. Para expor um site genérico, o ngrok continua mais adequado; para debugar webhooks de Stripe/GitHub/Shopify, o Relay é mais simples, e o Receiver guarda o histórico ao lado.
Precisa instalar alguma coisa?
Não. A CLI do Relay é um arquivo único sem dependências que usa o WebSocket nativo do Node 21+. Você baixa e roda: node relay.js --token=… --to=localhost:3000.
A URL muda a cada reinício?
Não, diferente das URLs grátis do ngrok. Sua URL de Relay é permanente, você pode deixá-la configurada na sua API de terceiros.
Posso reexecutar uma requisição?
Sim, nas requisições capturadas pelo Receiver: abra o inspetor, escolha a requisição, cole a URL do seu handler e clique em Reexecutar. Reenviamos o método, os headers e o body originais — assinatura incluída — e mostramos o código de status e a resposta. O Relay em si encaminha ao vivo e não guarda nada: se quiser poder reexecutar, coloque também uma URL de captura /r/<token> na frente.