Get started in seconds

Three paths. Pick yours.

Three ways to get started

No signup

Playground

Test without signup

  • Instant webhook URL
  • See payloads in real-time
  • No account needed
100 events · 24h expiry
Open playground
Agent-native
Programmatic

Agent API

Integrate programmatically

  • Get API key via POST
  • MCP + Skill available
  • OpenAPI spec at /openapi.json
No 2FA · Structured JSON responses
Read API docs

From zero to first webhook in 4 steps

Copy, paste, done. No SDK needed. Works with any HTTP client.

Get your API key

Sign up for a free account (no credit card). Your API key is available immediately in the dashboard under Settings → API Keys. Export it as an env variable — never hardcode it.

bash
# Export your API key as an environment variable
export HOOKWING_API_KEY="hwk_live_YOUR_KEY_HERE"

# Verify it's set
echo "Key loaded: ${HOOKWING_API_KEY:0:12}..."

Create a webhook endpoint

One POST request creates a persistent endpoint. The response includes your unique webhook URL — share it with any service that can send HTTP POST requests.

bash
curl -X POST https://api.hookwing.com/v1/endpoints \
  -H "Authorization: Bearer $HOOKWING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "my-first-endpoint", "description": "Testing Hookwing"}'
json
{
  "id":          "ep_01HX9Z3KQMR8TVYF2N",
  "name":        "my-first-endpoint",
  "url":         "https://hook.hookwing.com/ep_01HX9Z3K",
  "status":      "active",
  "created_at":  "2026-03-03T17:00:00Z"
}

Send a test event

POST any JSON payload to your webhook URL. Hookwing accepts any valid JSON body — no schema required. Headers, method, and timing are all recorded.

bash
# Send a test event to your webhook URL
curl -X POST https://hook.hookwing.com/ep_01HX9Z3K \
  -H "Content-Type: application/json" \
  -H "X-Event-Type: order.created" \
  -d '{
    "event": "order.created",
    "order_id": "ord_9876",
    "customer": "alice@example.com",
    "amount": 49.99,
    "currency": "USD"
  }'

Check delivery

Retrieve delivered events via API or the dashboard inspector. Each event includes the full payload, headers, delivery status, and timestamp. Replay any event with a single call.

bash
# List events received by your endpoint
curl https://api.hookwing.com/v1/endpoints/ep_01HX9Z3K/events \
  -H "Authorization: Bearer $HOOKWING_API_KEY"
json
{
  "events": [
    {
      "id":           "evt_01HX9Z7ABCDEF",
      "endpoint_id":  "ep_01HX9Z3K",
      "status":       "delivered",
      "method":       "POST",
      "latency_ms":   142,
      "received_at":  "2026-03-03T17:01:32Z",
      "body": {
        "event":     "order.created",
        "order_id": "ord_9876",
        "amount":   49.99
      }
    }
  ],
  "total": 1
}

Choose your language

No SDK required — but we've got you covered if you prefer one.

Python
# pip install hookwing
from hookwing import Client
client = Client(api_key="hwk_...")
ep = client.endpoints.create("my-ep")
Node.js
// npm install hookwing
import { Hookwing } from 'hookwing'
const hw = new Hookwing(process.env.HW_KEY)
await hw.endpoints.create('my-ep')
Go
// go get hookwing.com/go
hw := hookwing.New(os.Getenv("HW_KEY"))
ep, _ := hw.Endpoints.Create(ctx,
  &hookwing.CreateEndpoint{Name: "ep"})
Ruby
# gem install hookwing
require 'hookwing'
hw = Hookwing::Client.new(ENV['HW_KEY'])
ep = hw.endpoints.create(name: 'my-ep')
REST / curl
# No install needed
curl -X POST \
  https://api.hookwing.com/v1/endpoints \
  -H "Authorization: Bearer $HW_KEY"

All SDKs are open-source and MIT-licensed. View full SDK docs →

Questions? We're here.

Something not clicking? We keep support human — reach out and a real person will respond.

Ready to ship

Your first webhook is 60 seconds away.

Start free. No credit card. Pick your path and go.