Test a webhook online — free, no signup
Building or debugging a webhook? Get a unique URL in one click, point your webhook at it, and see every request — method, path, headers, and body — exactly as it arrived.
Docs- No signup. One click (or one
curl) gives you a live URL and a read token. - See everything. Full method, path, query string, headers and raw body, newest first.
- Automate it. A real JSON API means your CI pipeline or test suite can assert on the payload, not just eyeball it.
- Safe. Catchr only receives — it never re-sends your requests anywhere.
# one call, no signup
curl -s -X POST https://catchr.perch-app.workers.dev/api/bins
# → {"id":"a1b2c3d4","url":"https://catchr.perch-app.workers.dev/h/a1b2c3d4","token":"…"}
# send anything to the url, then read it back:
curl "https://catchr.perch-app.workers.dev/api/bins/a1b2c3d4/requests?token=…"
See copy-paste CI & agent recipes →
How to test a webhook in three steps
- Get a URL.
POST /api/bins(or click the button above) returns a live capture URL and a read token — instantly, no account. - Point your webhook at it. Paste the URL into Stripe, GitHub, Shopify, Twilio, a Zapier/n8n step, or your own code, and trigger the event.
- Inspect what arrived. Open the live inspector or call
GET /api/bins/:id/requests?token=…to read the exact method, headers (signatures, auth), query and raw body.
Because reading is a plain JSON call, the same flow drops straight into a test: fire the webhook, then assert that the signature header and payload are what you expect — no staging server, no ngrok tunnel.
Frequently asked questions
Do I need to deploy a server to test a webhook?
No. Catchr gives you a public capture URL instantly, so you can receive and inspect webhook deliveries without deploying anything or opening a local tunnel.
Can I see the exact headers and body a webhook sends?
Yes. Every capture stores the full method, path, query string, all headers (including signature and auth headers) and the raw body up to 64 KB, returned verbatim.
Can I assert on webhook payloads in CI?
Yes. Create a bin, send the webhook, then call the JSON requests endpoint and assert on the payload in bash, pytest, Node or any language — see the recipes page.
How long are captured requests kept?
The last 100 requests per bin are retained, and a bin is pruned after 14 days with no activity. It is meant for testing and debugging, not long-term storage.
Is it really free with no signup?
Yes. There is no account, no email and no paywall on inspecting your own traffic.