Webhooks quickstart
Receive your first Pivotal event on a local server in under five minutes. The flow: tunnel a local port to a public URL, register the URL as a Pivotal webhook endpoint, send a test event from the dashboard, verify the signature on receipt.
PREREQUISITES
- Node 20+ or Python 3.10+
- An admin role on your Pivotal workspace (you’ll need to register the endpoint)
- A local tunnel — ngrok, Cloudflare tunnel, or Tailscale Funnel
1. RUN A LOCAL RECEIVER
webhook-receiver.ts
2. EXPOSE THE PORT
Pick whichever tunnel you already use. ngrok example:
Copy the https:// URL.
3. REGISTER THE ENDPOINT
- Open Admin → Developer → Webhooks
- Click Add endpoint
- Paste the ngrok URL
- Pick
customer.createdandtask.completedfor now - Copy the signing secret and
export PIVOTAL_WEBHOOK_SECRET=…in your receiver shell
4. FIRE A TEST EVENT
In the Webhooks dashboard, click your endpoint, then Send test event. Pick customer.created. Your terminal logs the event type + id, the dashboard shows a green check, and the Logs tab records the delivery with the full payload.
5. WHAT TO READ NEXT
- Event envelope — the standard shape of every payload
- Signature verification — what the Svix SDK does under the hood
- Retries and backoff — what happens when your server returns non-2xx
Stuck? Email help@pivotal.app with your endpoint URL and the Pivotal event id (evt_…) from the delivery log.