The ngrok alternative for webhooks
ngrok is a great general-purpose tunnel, but for debugging webhooks it's pricey and captures nothing. Webhook Toolkit's Relay is a tunnel built for webhooks: permanent URL, install-free CLI. Alongside it, the Receiver keeps your request history and replays it to your handler.
npx webhook-toolkit relay --token rly_xxx --to 3000
Frequently asked questions
Does the Relay replace ngrok?
For webhooks, yes. The Relay gives you a permanent public URL that forwards every request to your localhost. To expose a general-purpose website, ngrok is still a better fit; to debug Stripe/GitHub/Shopify webhooks, the Relay is simpler, and the Receiver keeps the history next to it.
Do I need to install anything?
No. Run it with npx, nothing to install globally: npx webhook-toolkit relay --token … --to 3000. It works on Node.js 18+ and the CLI is open source (MIT).
Does the URL change on every restart?
No, unlike free ngrok URLs. Your Relay URL is permanent — you can leave it configured in your third-party API.
Can I replay a request?
Yes, on requests captured by the Receiver: open the inspector, pick the request, paste your handler URL and hit Replay. We re-send the original method, headers and body — signature included — then show you the status code and the response. The Relay itself forwards live and stores nothing: if you want replay, point a /r/<token> capture URL at it too.