Developer documentation

Authenticate, register a webhook, and ship your first event in under five minutes. Copy-paste examples, a complete endpoint reference, and official SDKs for every major language.

Get started

Quickstart

Three steps stand between you and your first delivered event. Install a client, create a webhook, and send.

terminalinstall
# 1. install the CLI
$ npm install -g @hooklane/cli

# 2. log in with your API key
$ hooklane login --key sk_live_8fX2...

# 3. send a test event
$ hooklane events send invoice.paid

Authentication

Every request is authenticated with a bearer token. Use a sk_live_ key in production and a sk_test_ key while developing. Keep secret keys server-side and rotate them from the dashboard.

httpAuthorization
GET /v1/webhooks
Authorization: Bearer sk_live_8fX2...
Hooklane-Version: 2026-06-01

Send an event

Create a webhook endpoint, then publish an event. Hooklane signs the payload, delivers it, and retries automatically on failure.

node.js@hooklane/node
import { Hooklane } from "@hooklane/node"

const hl = new Hooklane(process.env.HL_KEY)

// publish an event to all matching webhooks
await hl.events.publish({
  type: "invoice.paid",
  data: { id: "in_91", amount: 4200 }
})

Verify signatures

Always verify the Hooklane-Signature header before trusting a payload. The SDK does it for you in one call using your endpoint secret.

pythonhooklane
import hooklane

event = hooklane.Webhook.construct_event(
    payload=request.body,
    sig_header=request.headers["Hooklane-Signature"],
    secret="whsec_Vd1...9aQ",
)

if event.type == "invoice.paid":
    fulfill_order(event.data)

API endpoints

A small, predictable surface. All endpoints return JSON and use standard HTTP status codes.

POST/v1/webhooksCreate a webhook endpoint
GET/v1/webhooksList all webhooks
GET/v1/webhooks/:idRetrieve a webhook
DEL/v1/webhooks/:idDelete a webhook
POST/v1/eventsPublish a new event
GET/v1/events/:id/attemptsList delivery attempts
POST/v1/events/:id/replayReplay a delivered event

Official SDKs

Generated from our OpenAPI spec and kept in sync with every release. Pick your language and start shipping.

Node.jsnpm i @hooklane/node
Pythonpip install hooklane
Gogo get hooklane.dev/go
Rubygem install hooklane
PHPcomposer require hooklane
Javamaven: dev.hooklane
Rustcargo add hooklane
CLInpm i -g @hooklane/cli

Ready to send your first event?

Grab an API key on the free tier and follow the quickstart. Stuck on something? Our developer relations team is one message away.