Test webhooks on localhost—without exposing a port.
RelayFox is a capture-first webhook inbox that keeps receiving while your laptop is offline, then forwards or replays the exact request to localhost. Start with a disposable URL in seconds. No tunnel, deployment, or signup required.
No signup needed. Free webhook URLs last 24 hours.
/stripe/checkout
/github/push
/health
{
"event": "checkout.session.completed",
"amount_total": 900,
"customer_email": "dev@example.com"
}
Replay target
http://localhost:3000/api/webhooks
CLI
npx relayfox forward
Built for the webhook loop
Everything you need between the provider and your code.
RelayFox keeps the first delivery, the replay, and the localhost handoff in one place, so debugging stays concrete.
Watch payloads land live
Headers, query strings, body text, method, path, and source IP appear in one focused timeline the moment a provider sends them.
Forward to localhost
Keep Stripe, GitHub, Clerk, Shopify, and Slack pointed at one URL while RelayFox streams the same traffic to your dev server.
Replay the exact request
Retry a failed webhook against your app without asking the provider to send a new event or rebuilding your test fixture.
Share the receipt
Send teammates a read-only history link so everyone can debug the same payload instead of trading screenshots.
Clear next step
One screen, one payload, one obvious fix.
Inspired by simple, readable landing pages: each step has one job. Create the endpoint, inspect the request, replay it until your app behaves.
Create a URL
Generate a clean endpoint and paste it into any webhook provider.
Inspect every detail
See the raw delivery shape before your app transforms or rejects it.
Forward or replay
Push real traffic to localhost, then retry the payload until the handler is solid.
Use it anywhere
A better default URL for webhook testing.
Use the same RelayFox flow across providers and environments. Your team gets a repeatable debugging habit instead of one-off scripts.
Why developers switch
Less setup, more evidence.
No tunnel choreography
Create a public endpoint first, then forward only when you need local delivery.
Raw request stays visible
Keep the provider's original payload visible while your app logs only the processed result.
Disposable first, permanent when useful
Anonymous URLs clean themselves up. Sign in to keep one URL free, or add more on Pro.
Start from the next webhook