Vibecode Webhook.site

track this build5 phases, 10 steps, beginner friendly
YES · one-shottable
price $9/moyou'd save $108/yrbuild time one sittingcategory 🛠️ dev toolsreplaced by 0 people

Catch a request, store it, display it. This is the smallest useful server there is, and the paid tier mostly buys permanence and the workflow actions. One process on any host covers the inspector in a sitting.

the project pack5 files · written for this build, step by step
README.md
# Webhook.site · indie build

A webhook inspector you host: mint a URL, catch anything sent to it with headers and body intact, watch requests arrive live, replay one to your localhost, and let bins expire. Nine dollars a month buys permanence and scripting; this buys understanding.

Estimated effort: **one sitting**. Work `BUILD_PLAN.md` top to bottom · every phase ends in a check that has to pass before the next one starts.

## Stack

| Part | Choice | Why |
| --- | --- | --- |
| Runtime | Node 22, node:http and node:sqlite | store and display |
| Live updates | A 2-second vanilla-JS poll | no websocket library for a dev tool |
| Hosting | A VPS behind Caddy | the catcher must be public |

## Before you start

Have every one of these ready. The plan assumes them from step one.

- [ ] **Node.js 22 or newer** · free
  - Why: Everything in this build runs on it: the server, the scripts, the tests.
  - Get it: Download the LTS installer from nodejs.org, or install with your package manager (brew install node, or nvm install 22). Restart the terminal afterwards.
  - Verify: node --version prints v22 or higher
- [ ] **A terminal and a code editor** · free
  - Why: Every step below is a command you type or a file you edit.
  - Get it: VS Code (code.visualstudio.com), Cursor or Zed. Open a folder for the project and use the editor's built-in terminal.
  - Verify: You can open a folder and run a command in its terminal
- [ ] **Git** · free
  - Why: History for your code, and the way most hosts deploy.
  - Get it: Install from git-scm.com or with your package manager, then run git init in the project folder once it exists.
  - Verify: git --version prints a version
- [ ] **A small always-on server (VPS)** (optional) · about $5 a month
  - Why: This needs one process running all the time with a public address. The URL must be reachable from the services that call it.
  - Get it: Hetzner Cloud (from about 4 EUR), DigitalOcean or Fly.io. Ubuntu 24.04, the smallest size. You need SSH access and a public IP. Only needed for the deploy phase; develop locally first.
- [ ] **A domain or subdomain** (optional) · roughly $10 a year, or free on an existing domain
  - Why: A public address you own, so links you share never break when a provider changes.
  - Get it: Register at Cloudflare Registrar, Porkbun or Namecheap, or use a subdomain of one you already own. You add one DNS record in the deploy phase.
- [ ] **Caddy on the server** (optional) · free
  - Why: Automatic HTTPS in front of the Node process. Without TLS the browser features this relies on (and your visitors' trust) do not work.
  - Get it: On the VPS: follow the install steps at caddyserver.com/docs/install for Ubuntu. One Caddyfile with your domain and a reverse_proxy line is the whole config.
  - Verify: caddy version prints a version on the server
- [ ] **Something that sends webhooks to test with** · free
  - Why: Phase 1 and 3 need real deliveries.
  - Get it: Stripe test mode, a GitHub repository webhook, or curl.

## Quick start

```sh
mkdir hooks && cd hooks && git init && npm init -y && npm pkg set type=module
mkdir -p data && cp .env.example .env
```

Then copy `.env.example` to `.env` and fill in the values it documents.

## Honest limits

This build deliberately does not replace:

- Custom actions, email hooks, DNS hooks, teams.
- custom actions and workflow scripting
- email and DNS hooks
- team accounts
- someone else hosting the public endpoint

If one of those is essential to you, that is the reason to keep paying for Webhook.site, and the README should say so rather than pretend.

$ choose a build depth, inspect the files, then open the complete pack in your agent

why people still pay

Nine dollars to never think about hosting a public catcher, plus the scripting layer that turns a webhook into a Slack message without code.

what you lose

xcustom actions and workflow scripting

xemail and DNS hooks

xteam accounts

xsomeone else hosting the public endpoint

prior art · use these instead of building, if you'd rathersmee.iowebhook payload delivery service, open source
share on X ↗"I just replaced Webhook.site ($9/mo) with one prompt"
the numbers

Webhook.site pricing

basic$9/mo · monthly flat · $108/yr

free tierFree URLs work without an account but expire after 7 days and cap stored requests.

verified 2026-09-04 · source ↗

questions
Is Webhook.site free?

Free URLs work without an account but expire after 7 days and cap stored requests. Paid is Basic at $9/mo (checked 2026-09-04).

Vibecode Webhook.site

Yes. A competent AI coding agent (Claude Code, Codex, Cursor) can build a usable personal Webhook.site replacement in one session with the prompt on this page. It runs on your own machine or server with no subscription.

How much does Webhook.site cost?

Webhook.site costs about $9/month (Basic, checked 2026-09-04), which is $108 per year. That's what you save by replacing it with one prompt.

What do I lose by replacing Webhook.site?

Honestly: custom actions and workflow scripting; email and DNS hooks; team accounts; someone else hosting the public endpoint. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to Webhook.site?

Yes: smee.io (webhook payload delivery service, open source). Using prior art is also vibecoding; the prompt is for when you want it exactly your way.