Webhooks to Internal Servers
Forward public webhooks to internal servers behind a firewall or NAT with Webhook Relay — no public IP, port forwarding or router changes required.
Webhook Relay forwards webhooks from any public provider to servers on a private network or localhost. A lightweight agent on your side opens an outbound connection, so Stripe, GitHub, Shopify or any other service posts to a stable public Webhook Relay URL and the request is delivered to an internal HTTP endpoint that has no public IP, no open inbound ports and no port forwarding.
How it works
- Create a bucket and give its public URL (
https://<bucket>.hooks.webhookrelay.com) to the provider. - Install the
relayagent on the target machine — laptop, on-prem server, VM or Kubernetes cluster — and start it:relay forward -b example http://localhost:4500/webhooks - Every webhook is stored, forwarded to the internal URL over the agent's outbound connection, and logged together with the response your server returned.
When to use it
- Local development: test Stripe, GitHub or Shopify webhooks on localhost with a URL that never changes.
- On-prem integration: deliver SaaS webhooks to internal systems — ERPs, Jenkins, ticketing tools, internal APIs — behind a corporate firewall.
- Private clusters: receive webhooks in a Kubernetes or Docker network without a public ingress.
- Team broadcast: share one endpoint with a whole team; every connected agent receives the same events.
Forwarding vs. a tunnel vs. polling
| Webhook Relay forwarding | ngrok-style tunnel | Polling the provider's API | |
|---|---|---|---|
| Public IP or open inbound ports | Not required | Not required | Not required |
| Public URL stays the same | Yes — permanent per bucket | Often changes per session | n/a |
| Works while your server is offline | Yes — stored and retried for up to 30 days | No — requests fail | Yes, with delay |
| Several receivers for one endpoint | Yes | No | Manual |
| Filter or transform before delivery | Yes — rules and functions | No | In your own code |
| Exposes your whole service | No — webhooks only | Yes | No |
Key Benefits
- Bypass Firewalls and NATs: Receive webhooks without needing public IP addresses or opening firewall ports. Webhook Relay establishes an outbound connection from your network, which is typically allowed.
- Enhanced Security: Your internal endpoints remain hidden and protected from direct internet exposure. Communication happens over a secure, encrypted tunnel.
- Simplified Development & Testing: Easily test webhook integrations during development by pointing webhooks directly to your local development environment.
- Connect On-Prem Systems: Integrate cloud services with internal applications running on private networks seamlessly.
- Reliability: The agent ensures persistent connectivity and reliable delivery of webhooks.
Delivering to private endpoints is what sets Webhook Relay apart as a webhook gateway — the same platform adds durable retries, throttling, fan-out and delivery logs on top of the tunnel.
