v1 is shipping — read the launch notes

Webhooks your customers will actually love.

Hookshot is the managed webhook delivery platform for SaaS teams. Reliable retries, deep analytics, and a developer experience that turns your event firehose into a feature your customers ship against.

See live demo

No credit card. Free tier forever. SOC 2-aligned controls.

POST /v1/events
// Fire an event — Hookshot fans it out to your subscribers
await hookshot.events.create({
  type:    "invoice.paid",
  channel: "acct_8312",
  data:    { amount: 9900, currency: "usd" },
});

// → queued, signed, retried, observed. zero infra.

Trusted by builders shipping mission-critical events

Northwind Lattice OS Helix Cloud Quanta Pinecast Stratus Foundry Labs Bramble Argo Pay Driftnet
Northwind Lattice OS Helix Cloud Quanta Pinecast Stratus Foundry Labs Bramble Argo Pay Driftnet
Northwind Lattice OS Helix Cloud Quanta Pinecast Stratus Foundry Labs Bramble Argo Pay Driftnet
Northwind Lattice OS Helix Cloud Quanta Pinecast Stratus Foundry Labs Bramble Argo Pay Driftnet

The platform

Everything between your event and their endpoint.

We built Hookshot so you can ship a webhook product in an afternoon, not a quarter — and trust that it will still work when your customers are asleep.

evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered
evt_8a31invoice.paiddelivered
evt_a112user.signed_updelivered
evt_b45corder.shippedretrying
evt_de91report.readydelivered
evt_f8c1subscription.canceleddelivered
evt_2274team.invite_accepteddelivered

One API, every subscriber

Let your customers manage their own endpoints, secrets, and event filters. We handle the fan-out so you ship a feature, not a queue.

00:00POST → 503queued
00:30retry #1 → 503backoff
01:30retry #2 → 504backoff
04:00retry #3 → 200delivered

Exponential retries

Tunable backoff up to 7 days. Hookshot keeps trying when your customer's edge is having a bad day.

Live observability

Every delivery, every status code, every payload — searchable, scoped per subscriber, and exportable.

One-click replay

Replay any delivery, any time window, to any subscriber. Customer broke prod? Fixed in two clicks.

Signed, scoped, safe

HMAC-signed payloads, per-subscriber rotating secrets, IP allowlists, and outbound proxying so you never ping a private endpoint by accident.

How it works

Webhooks in three honest steps.

  1. 01

    Drop in the SDK

    Three lines to fire an event. Node, Python, Go, Ruby, or plain HTTP — your CI doesn't change.

    import Hookshot from "hookshot";
    
    const hookshot = new Hookshot(process.env.HOOKSHOT_KEY);
    await hookshot.events.create({ type: "invoice.paid", data });
  2. 02

    Your customers subscribe

    Embed the subscriber portal or use the API to let your customers register endpoints, pick events, and rotate secrets — without you writing a UI.

    <HookshotPortal
      channel={user.accountId}
      token={await hookshot.tokens.mint(user)}
    />
  3. 03

    We handle the hard parts

    Signing, retries, idempotency, observability, replay, and the 3 a.m. pages — all on us. You watch the dashboard.

    // Hookshot fans out, signs, retries, logs.
    // You ship product.
0 %

delivery success rate

0 ms

p50 fan-out latency

0 B+

events delivered to date

0 d

max retry window

From the trenches

Loved by people who hated webhooks.

“We yanked 4,000 lines of webhook code and a queue cluster on the day we shipped Hookshot. The dashboard alone paid for it.”
Priya Anand Staff Engineer, Lattice OS
“Our customers used to email us to ask which delivery failed. Now they have a portal. Now I have a quiet inbox.”
Noah Castaneda Head of Platform, Northwind
“The replay tool turned a Sev-2 into a non-event. I’ve never been so happy to be a paying customer.”
Mira Okafor CTO, Helix Cloud

Pricing

Honest pricing. No per-seat games.

Start free with the tier you need. Pay only when you ship at scale.

Getting Started

Spin up the integration, ship a public webhook product.

Free forever
  • 100,000 events / month
  • 10 deliveries / second
  • All core features
  • Community support
Sign up

Pay-as-you-Go

For products in production. No rate limits, no surprises.

$1 per 10,000 deliveries
  • Unlimited events
  • No rate limits
  • Priority deliveries
  • Audit log + SSO
  • Email support
Request access

Enterprise

Dedicated infra, custom regions, signed SLAs.

Custom talk to us
  • Private hosting / VPC
  • Dedicated support
  • Custom SLAs
  • Procurement-friendly
Schedule a call

FAQ

Questions we hear a lot.

Ship the webhooks. Skip the queue.

100,000 events a month, free, with the same dashboard the paid tier gets. Stand up an integration in an afternoon, then graduate when you scale.

Talk to sales