sendport webhooks▾
sendport webhooks
Tunnel live webhooks to localhost, replay deliveries and fire test events.
Webhooks cannot reach localhost. sendport webhooks listen opens a tunnel, forwards every event to a local URL and prints them as they arrive — no ngrok, no public URL.
$
sendport webhooks listenStream live events to a local endpoint until you Ctrl-C.
Usage
sendport webhooks listen --forward <url> [--events <list>]| Flag | Type | Description |
|---|---|---|
| --forward <url> | string | Local URL to POST to, e.g. http://localhost:3000/hooks/sendport. Required. |
| --events <list> | string | Comma-separated event names. Default: all. |
| --skip-verify | boolean | Do not sign forwarded requests. Only for debugging. |
| boolean | Pretty-print each payload to stdout as well. |
Session
$ sendport webhooks listen --forward http://localhost:3000/hooks/sendport
✓ listening — forwarding to http://localhost:3000/hooks/sendport
signing secret whsec_9f2c… (set this in your app)
09:41:02 message.received evt_01JZQ6F5H7 → 200 12ms
09:41:03 message.sent evt_01JZQ6F5J1 → 200 8ms
09:41:08 message.delivered evt_01JZQ6F5K4 → 200 9ms$
sendport webhooks triggerFire a synthetic event with realistic data, without needing a real message. Works alongside listen.
Usage
sendport webhooks trigger <event> [--to <e164>]| Flag | Type | Description |
|---|---|---|
| <event> | string | Event name, e.g. message.received. |
| --to <e164> | string | Contact to attribute the event to. |
$
sendport webhooks deliveriesList recent delivery attempts with status codes and durations.
Usage
sendport webhooks deliveries [--endpoint <id>] [--failed]| Flag | Type | Description |
|---|---|---|
| --endpoint <id> | string | Limit to one endpoint. |
| --failed | boolean | Only non-2xx attempts. |
| --replay <id> | string | Replay one delivery by its id. |
The tunnel signs like production
Forwarded requests carry a real
Sendport-Signature, using the secret printed on start. Wire your verification against it locally and it will work unchanged in production.