Skip to content

Quickstart

This guide takes you from zero to a working webhook routing setup. You’ll need a Hookman account — the free tier is enough for everything here.

Time to complete: ~3 minutes.


  1. Create a project

    A project maps to one webhook integration — for example, your Stripe checkout webhooks, or your GitHub repository webhooks. Each project gets its own Hookman endpoint.

    Go to your dashboard, click New project, and give it:

    • Name — human-readable, shown in the dashboard
    • Default deployment label — a name for the first target, e.g. production
    • Default target URL — where webhooks go until you add a rule

    The slug is derived from the name (lowercased, non-alphanumerics become hyphens) and shown under the field as you type. It forms your endpoint URL and can’t be changed later, so pick the name deliberately.

    Your endpoint will be:

    https://hookman.dev/w/{org}/{project}

    For example: https://hookman.dev/w/acme/payments

  2. Register your first deployment

    Tell Hookman where your branch deployment lives. Pick your preferred method:

    Install the CLI and register your deployment:

    Terminal window
    # Install globally (installs the `hookman` binary)
    npm install -g @hookman/cli
    # Authenticate — opens your browser
    hookman login
    # Register a deployment
    hookman register \
    --org acme \
    --project payments \
    --branch main \
    --url https://myapp.com/api/webhooks/stripe
  3. Set this as your webhook URL

    Configure your webhook provider to POST to your Hookman endpoint. Do this once — you’ll never need to change it.

    Terminal window
    # Stripe CLI
    stripe webhooks update wh_xxx \
    --url https://hookman.dev/w/acme/payments

    Or via the Stripe Dashboard: open your endpoint, click Update details, paste your Hookman URL.

  4. Switch to a branch deployment

    When you want webhooks to go to a specific branch, set it as active:

    In your project view, find the deployment you want to activate and click Set active. The green indicator moves to that deployment. All incoming webhooks are now forwarded there.


Verify it’s working

Send a test webhook from your provider and check the Logs tab in your project dashboard. You should see an entry with:

  • The routing method used (e.g. switch)
  • The deployment it was forwarded to
  • The response status from your target
  • The end-to-end latency

If the log shows a routing failure, check troubleshooting common errors.


What’s next