Test Customer.io webhooks
Customer.io sends reporting webhooks for message sends, deliveries, opens, clicks, conversions, bounces, and failures across channels, plus subscription changes. Capture them on a free webhooks.cc endpoint to see exactly what Customer.io sends, then replay deliveries or forward them to your local handler.
No credit card · 50 requests/day free · or get a guest URL without an account
Prefer a walkthrough? Read the local webhook testing guide.
How to test Customer.io webhooks
- 1
Create a webhook endpoint
Sign in free with GitHub, Google, or email to create a persistent endpoint — or grab an instant guest URL at webhooks.cc without an account.
- 2
Point Customer.io at your URL
Paste the endpoint URL into Customer.io: Integrations → Reporting Webhooks → Add Reporting Webhook, or the App API (POST /v1/reporting_webhooks).
- 3
Inspect what arrives
Each delivery appears live in the dashboard with method, headers, body, query parameters, and source IP.
- 4
Forward to localhost or assert in CI
Run whk tunnel <port> to forward webhooks to a local server, or use the TypeScript SDK to wait for and assert on deliveries in tests.
Customer.io webhook authentication
| Auth header | x-cio-signature |
|---|---|
| Algorithm | HMAC-SHA256 |
| Verification in webhooks.cc | Capture deliveries to inspect raw signature material |
A hex-encoded HMAC of v0:{x-cio-timestamp}:{raw body}, keyed with the signing key shown on the Reporting Webhooks page.
New to signature verification? Read the webhook signature verification guide.
Everything in one place
- Live dashboard — see deliveries the moment they arrive
- Forward to localhost with whk tunnel
- Replay any captured request to any URL
- Mock responses with custom status, headers, and body
- TypeScript SDK assertions for CI
- MCP server for AI coding agents
Customer.io webhook questions
More providers
Your Customer.io webhook URL is seconds away
Sign up free, create an endpoint, and point Customer.io at it.
No credit card · or try without an account