Forward events to localhost

Send the real events an endpoint receives to a server on your machine while you build.

Beginner Available on All plans Updated 8 October 2026

These pages describe ShellOrbit as it runs today. Breaking changes to the HTTP API are announced before they ship, and existing request and response shapes stay supported.

What does it do?

shellorbit-listen is a small command line script that watches one endpoint and sends a copy of every new event to a URL on your machine. You build and debug your handler against real provider traffic, with the original headers and body, without a tunnel and without exposing your machine to the internet.

Your endpoint’s destinations still get every event as usual. The local copy is extra.

How do I run it?

You need Node 18 or later, and an API key from Settings, API keys. A read only key is enough.

bash
curl -O https://shellorbit.com/downloads/shellorbit-listen.mjs
export SHELLORBIT_API_KEY=your_key
node shellorbit-listen.mjs ep_example http://localhost:3000/webhooks

Replace ep_example with the endpoint id from its page in the dashboard, and the URL with your local handler. Every new event is sent there as a POST, and one line per event shows the result:

text
Forwarding new events on ep_example to http://localhost:3000/webhooks. Press Ctrl+C to stop.
evt_2Lq9 checkout.session.completed -> 200 in 41 ms

Events that arrived before you started are not replayed. To send an older one again, use replay in the dashboard.

Will my provider’s signature still verify?

Yes. The original headers and body are forwarded byte for byte, so code that checks a Stripe, GitHub, or Standard Webhooks signature works locally with the same secret. Signatures carry a timestamp, so check them within a few minutes of the event arriving, or relax the tolerance while developing.

If the endpoint has privacy masking on, the forwarded body is the masked one, the signature will not match, and the script says so.

Options

Forward events to localhost: Option, Default, What it does
OptionDefaultWhat it does
--interval2Seconds between checks for new events
--apihttps://api.shellorbit.comAPI address, also read from SHELLORBIT_API_URL

The script checks for new events every two seconds and handles up to 50 new events per check, which is plenty for development traffic. It is a single file with no dependencies: read it before you run it.