Getting Started
What is Huk Relay and how you can use it.
What is Huk Relay?
Huk Relay is a secure tunneling solution that provides:
- Webhook Forwarding - secure, unidirectional by default with optional request/response transformation.
- Bidirectional Tunnelling - fast tunnels for direct access to any HTTP service. This is ideal for accessing internal APIs and demoing websites.
Check out our dashboard's home page to get started quickly.
Use Cases
Popular use cases:
- Receive Stripe, Shopify, GitHub and other webhooks on your local machine while developing your application.
- Allow remote clients to connect to your backend, for example AWS EC2 instances communicating with your MacBook Pro.
- Forward a single webhook to multiple destinations, for example Slack and GCP PubSub.
- Transform webhooks, for example Docker push webhook into a Slack message.
- Demo your website to clients or customers.
- Access IoT devices and sensors remotely.
Webhook Forwarding
Webhook forwarding is by default a uni-directional ("one way") way to send webhooks to other internal and public destinations.
Huk Relay forwarding
Key facts:
- Unidirectional by default, but you can enable it to wait for the response.
- Single received webhook can be forwarded to multiple destinations.
- You can use Functions to execute custom code when a webhook is received, for example to filter or modify requests.
Use webhook forwarding when:
- Your requirement is primarily "fire and forget".
- You need to forward webhooks to internal destinations (quick start).
- You need to forward a single webhook to multiple destinations (quick start).
- You need to transform webhook, for example Docker push webhook into a Slack message.
Inputs
Inputs represent your public endpoints. These are the unique URLs (e.g., https://huk.dev/hooks/XXXXXXXX). Each input has several configuration options:
- Static response code, headers and body.
- Dynamic response coming from any destination.
- Each input can have an attached Function which can modify response and request.
Destinations
Outputs define your destination, where webhooks will be sent. These destinations can either be an HTTP server running on your local machine (e.g., http://localhost:8080) or a public server such as https://example.com.
Main options for output configuration:
- Destination (where to forward).
- Path lock - whether to dynamically append URL paths.
- Attached function to execute on a webhook.
Forwards
Forwards (often referred to as Buckets) are a grouping mechanism in Huk Relay for Inputs and Outputs. You can configure:
- Transform Scripts: Processing payloads before forwarding.
- Ephemeral Storage: Retaining logs only for a short period.
Huk Relay Docs