Skip to main content

Choose Your Setup Method

The fastest way to get started with Unhook is using our VS Code extension:
1

Install Extension

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X / Cmd+Shift+X)
  3. Search for “Unhook - Webhook Development”
  4. Click Install
2

Authenticate

  1. Click the Unhook icon in the Activity Bar
  2. Click “Sign in to Unhook” in the status bar
  3. Complete the OAuth flow in your browser
3

Configure

Create an unhook.yml file in your workspace:
webhookUrl: https://unhook.sh/your-org/your-webhook-name
destination:
  - name: local
    url: http://localhost:3000/api/webhooks
delivery:
  - source: "*"
    destination: local
4

Start Receiving Webhooks

  1. Create a webhook URL at unhook.sh/app
  2. Configure your provider to use the Unhook URL
  3. View events in the VS Code sidebar as they arrive
The VS Code extension provides a complete webhook development environment with real-time monitoring, request replay, and team collaboration features. Learn more →

Configuration

Basic Configuration

Create an unhook.yml file in your project root:
# Required: Your unique webhook URL
webhookUrl: https://unhook.sh/your-org/your-webhook-name

# Optional: Enable debug mode
debug: false

# Optional: Enable telemetry
telemetry: true

# Required: Array of destination endpoints
destination:
  - name: local
    url: http://localhost:3000/api/webhooks
    ping: true  # Optional: Health check configuration

# Optional: Array of webhook sources
source:
  - name: stripe
  - name: github

# Required: Array of delivery rules
delivery:
  - source: "*"  # Optional: Source filter (defaults to "*")
    destination: local  # Name of the destination from 'destination' array

Environment Variables

Configure via environment variables:
# Core settings
WEBHOOK_ID=wh_your_webhook_id
WEBHOOK_DEBUG=true
WEBHOOK_TELEMETRY=true

# Destination settings
WEBHOOK_DESTINATION_0_NAME=local
WEBHOOK_DESTINATION_0_URL=http://localhost:3000/api/webhooks
WEBHOOK_DESTINATION_0_PING=true

# Source settings
WEBHOOK_SOURCE_0_NAME=stripe
WEBHOOK_SOURCE_1_NAME=github

# Delivery settings
WEBHOOK_DELIVERY_0_SOURCE=*
WEBHOOK_DELIVERY_0_DESTINATION=local

Provider Setup

Stripe

  1. Go to your Stripe Dashboard
  2. Click “Add Endpoint”
  3. Enter your Unhook URL:
https://unhook.sh/wh_your_webhook_id

GitHub

  1. Go to your repository settings
  2. Navigate to “Webhooks”
  3. Click “Add webhook”
  4. Enter your Unhook URL:
https://unhook.sh/wh_your_webhook_id

Clerk

  1. Go to your Clerk Dashboard
  2. Navigate to “Webhooks”
  3. Click “Add Endpoint”
  4. Enter your Unhook URL:
https://unhook.sh/your-org/your-webhook-name

Team Development

Shared Configuration

Teams can share a single webhook configuration:
webhookUrl: https://unhook.sh/your-org/your-team-webhook
destination:
  - name: dev1
    url: http://localhost:3000/api/webhooks
    ping: true
  - name: dev2
    url: http://localhost:3001/api/webhooks
    ping: true
source:
  - name: clerk
  - name: stripe
delivery:
  - source: clerk
    destination: dev1
  - source: stripe
    destination: dev2

Team Features

  • Shared Webhook URL: All team members use the same webhook URL
  • Individual Routing: Each developer can receive specific webhook types
  • Request History: View and replay requests across the team
  • Real-time Monitoring: See incoming requests in real-time
  • Team Dashboard: Monitor team activity and webhook status

Security Features

  • API key authentication for private webhooks
  • Method restrictions
  • Source restrictions
  • Request body size limits
  • Header filtering
  • End-to-end encryption

Authentication

Authentication data is stored locally at ~/.unhook/auth-storage.json:
  • Authentication state
  • User tokens
  • Organization ID
  • Basic user info
To clear auth data:
rm ~/.unhook/auth-storage.json

Next Steps

VS Code Extension

Complete webhook development environment in VS Code

Team Setup

Learn how to configure Unhook for your entire team

Dashboard

Monitor and debug your webhooks in real-time

Provider Guides

Detailed setup guides for all supported webhook providers

Support