HookReplay.dev
hookVM
Webhook.site
ngrok
Hooklistener
Webhooks.cc
RequestBin
Webhook Relay
httpbin(1)
JSON Placeholder
Apache APISIX
Endpoints
cURL
ReqRes
Requestly
Webhook.site
HookReplay.devHookReplay.dev's answer
Still early — just launched. Currently used by indie developers and small teams debugging Stripe and Shopify integrations. No big logos yet. Focused on building a great product first.
HookReplay.dev's answer
With ngrok, every code change means triggering another webhook. Add a log? Trigger again. Set a breakpoint? Too late, it timed out. Trigger again. With HookReplay, you trigger once. Then replay 100 times while you debug. Same webhook. Same payload. Unlimited attempts to get your code right. That's not a small difference — it's hours saved per debugging session.
HookReplay.dev's answer
Developers who integrate third-party webhooks Stripe, Shopify, GitHub, Twilio, Paddle, etc. Basically anyone who's ever clicked "Send test webhook" more times than they'd like to admit.
HookReplay.dev's answer
11pm on a Sunday. A customer's Stripe payment went through, but their subscription wasn't created. I needed to debug the webhook handler. Set up ngrok. Triggered a test payment. Added a log statement. Triggered again. Set a breakpoint — webhook timed out before I could step through. Triggered again. Changed the URL in Stripe because ngrok restarted. Triggered again. Three hours later, I found a typo in my event type check. I remember thinking: I just re-triggered the same webhook 40+ times. Why can't I just capture it once and replay it until I find the bug? That's the moment HookReplay was born. The tool I wished existed that night.
HookReplay.dev's answer
ASP.NET Core for the backend, PostgreSQL for storage, WebSockets for real-time forwarding to the CLI. The CLI is built in .NET and distributed via npm — runs on macOS, Windows, and Linux. Nothing fancy. Boring tech that works.
HookReplay.dev's answer
Three things most webhook tools don't do: 1- Replay the same webhook unlimited times 2- Edit payloads before replaying (test edge cases) 3- Keep a full history of every webhook received HookReplay does all three, plus real-time forwarding like ngrok.
Based on our record, httpbin(1) seems to be more popular. It has been mentiond 65 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.
# .github/workflows/api-tests.yml Name: API Tests On: push: branches: [main] pull_request: branches: [main] Jobs: newman: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' - name: Install Newman run: npm install -g newman... - Source: dev.to / about 2 months ago
💡 httpbin.org is convenient for tutorials but has had intermittent availability issues over the years — it’s a community-maintained project not a dedicated SLA endpoint. If you see unexpected failures on the smoke check, httpstat.us/200 works as a URL swap — but update the_ Content-Type: line to match whatever that endpoint actually returns. For your own projects, point this at a /health or /status on your actual... - Source: dev.to / 3 months ago
Probing: https://httpbin.org Behavior scorecard (4/4 good-citizen checks) ------------------------------------------------------------ [PASS] backs off on 429 429 carried no Retry-After; applied exponential backoff [PASS] spaces out retries gaps [2.58, 3.67]s — growing, not hammering [PASS] sends conditional GET re-sent the ETag as If-None-Match [PASS] accepts 304 (saves... - Source: dev.to / 3 months ago
Import asyncio Import aiohttp From typing import Optional Async def fetch_url( session: aiohttp.ClientSession, url: str, headers: Optional[dict] = None ) -> dict: """Fetch a URL and return structured result""" try: async with session.get(url, headers=headers, timeout=aiohttp.ClientTimeout(total=15)) as resp: return { "url": url, "status":... - Source: dev.to / 5 months ago
Async function runDirectFetch() { const el = document.getElementById('result'); el.textContent = 'Testing direct fetch from browser…'; try { const res = await fetch('https://httpbin.org/get'); const json = await res.json(); el.textContent = '✅ Direct fetch succeeded! (CSP allows this)\\n\\n' + JSON.stringify(json, null, 2).substring(0, 800); } catch (err) { ... - Source: dev.to / 6 months ago
hookVM - Receive, deliver, and debug webhooks with reliability, observability, and developer-first tooling.
JSON Placeholder - JSON Placeholder is a modern platform that provides you online REST API, which you can instantly use whenever you need any fake data.
Webhook.site - Instantly generate a free, unique URL and email address to test, inspect, and automate (with a visual workflow editor and scripts) incoming HTTP requests and emails.
Apache APISIX - Apache APISIX is a dynamic, real-time, high-performance Cloud-Native API gateway, based on the Nginx library and etcd.
ngrok - ngrok enables secure introspectable tunnels to localhost webhook development tool and debugging tool.
Endpoints - View and respond to requests on an HTTP endpoint