A destination is where the Console forwards the requests it captures. Adding one means requests are captured and delivered, so you also see the response your endpoint returned.

Without one the Console still captures everything, but the response tab stays empty because nothing was delivered anywhere.

Forwarding to an HTTP URL

Choose HTTP and enter the URL that should receive the requests. Any publicly reachable endpoint works, including a staging deployment or a preview URL.

Each forwarded request appears in the events list with the status your endpoint returned, so a 500 from your handler is visible immediately alongside the payload that caused it.

Forward to endpoints you're developing against, not production ones. Console forwarding has no retries, no filtering, and no access control, and anyone with the source ID can send requests through it. For production traffic, use an Event Gateway project.

Forwarding to localhost

A local server has no public URL, which is the whole reason webhook development is awkward. The Hookdeck CLI solves it by forwarding captured requests to a port on your machine.

Choose Localhost in the destination form, which shows you the CLI key for your source. Then run the CLI with no install, replacing 3000 with the port your server listens on:

npx hookdeck-cli listen 3000 <your-source-name> --cli-key <your-cli-key>

--cli-key authenticates the command with the key shown in the form, so there's nothing else to set up. Because the key is passed inline, the same command works unchanged in CI.

If you'll use the CLI regularly, install it so you can drop the npx prefix:

  npm install hookdeck-cli -g
  
  
  yarn global add hookdeck-cli
  
  
    brew install hookdeck
    
    
  1.     scoop bucket add hookdeck https://github.com/hookdeck/scoop-hookdeck-cli.git
        
        
  2.   scoop install hookdeck
      
      
  1. Download the latest release's tar.gz file.

  2.     tar -xvf hookdeck_X.X.X_linux_x86_64.tar.gz
        
        
  3.   ./hookdeck
      
      
hookdeck listen 3000 <your-source-name> --cli-key <your-cli-key>

Passing --cli-key to listen needs CLI v2.4.0 or later. If the machine has no existing Hookdeck login, the first run saves the key and later runs can drop the flag. If you're already logged in, the key applies to that run only and your stored login is left untouched, so pass it each time.

The Console shows a Connected badge once the CLI is listening, and Disconnected when it isn't. Requests captured while you're disconnected are still recorded, so you can resend them once you reconnect.

For the full command reference, including path routing and filtering, see the CLI documentation.

Retries, filters, and transformations

Console destinations exist to close the loop while you're building. They have no retry policy, no filters, and no transformations.

Those are Event Gateway features. To use them, sign up for a Hookdeck account if you don't have one, then create an Event Gateway project. There, a connection routes a source to a destination and adds retries, filters, and transformations.