Free forever · no account · 2-hour purge

Inspect any webhook in seconds.

SnapHook gives you a disposable HTTPS endpoint that captures every request sent to it — method, headers, query string and body — and streams it to your browser the moment it lands.

Read the docs

No signup No logging Unlimited endpoints Open HTTP, any method

Quickstart

Point anything at it.

Generate a URL, paste it into the provider you are debugging — Stripe, GitHub, Shopify, Twilio, your own cron job — and requests appear in the inspector instantly.

Example request

# send a test payload to your own SnapHook endpoint
curl -X POST https://snaphook.site/w/YOUR_SESSION_ID/orders/created \
  -H "Content-Type: application/json" \
  -d '{"order_id": 4021, "status": "paid"}'

Get started in 3 simple steps.

Step 01

Generate a URL

One click mints a 12-character session with its own ingestion endpoint. No form, no email, no password.

Step 02

Send requests

Any method, any sub-path, any content type. Query strings and headers are captured exactly as sent.

Step 03

Inspect live

The dashboard streams each capture over Server-Sent Events and pretty-prints JSON bodies as they arrive.

Built for debugging

See the whole request, not a summary.

Every capture is stored whole: the request line, the protocol, the client IP, all headers, parsed query parameters, and the raw body with JSON formatting applied on top rather than instead.

  • Complete header map, in arrival order
  • Sub-path and raw query string preserved
  • Pretty-printed JSON with a raw view one click away
  • Bodies up to 256 KB, with oversize flagged not dropped

Privacy by construction

Nothing is written to disk. Ever.

SnapHook keeps captures in process memory and nowhere else. There is no database, no object store, no log of payloads. Two hours after your last request and your last open tab, the session and everything in it is gone.

  • In-memory only — no persistence layer exists
  • No cookies, no analytics, no third-party scripts
  • Session URLs are 60 bits of random and never indexed
  • Clear your history on demand, instantly

What you get

Free, and free of catches.

No signup

No email, no OAuth, no trial timer. Click once and you have an endpoint.

2-hour purge

Sessions self-destruct 2 hours after the last request and the last open tab.

Zero logging

Payloads are never written to disk or forwarded anywhere else.

100% free

No paid tier gating the features that make it useful. There is no paid tier.

Questions

Frequently asked.

Do I need an account to test a webhook?

No. SnapHook has no accounts at all. Generating a URL creates an anonymous in-memory session identified only by a random 12-character slug, which acts as the capability key for that session.

How long does my webhook URL stay alive?

It stays alive as long as it is being used. A session is purged 2 hours after the last of two things: the last request it received, and the last dashboard disconnecting from it. An open tab keeps a session alive indefinitely.

Can I send any HTTP method, or just POST?

Any method. GET, POST, PUT, PATCH, DELETE, HEAD and anything else are all captured, along with any sub-path you append to the URL — useful for verifying that a provider is calling the route you expect.

How large can a payload be?

Bodies are captured up to 256 KB. Anything larger is stored truncated and clearly flagged in the inspector, so you still see the beginning of the payload rather than losing the request entirely.

Is it safe to send production secrets to a test endpoint?

No — and that is true of every webhook testing service, not just this one. Anyone who learns your session URL can read what was sent to it. Use test-mode credentials and synthetic data. Never point a live payment, auth or PII webhook at a public inspection endpoint.

Is there an API I can script against?

Yes. POST /api/new mints a session, GET /api/{slug}/requests returns the captured history as JSON, and GET /api/{slug}/sse streams captures live. All three are documented on the docs page.

Ready when you are.

No setup, no install, no card. Your endpoint is one click away.