sk_v1_test_… key manages test-mode endpoints, a live key manages live ones.
On Node, npm install @ionicfi/sdk gives you typed calls for every request
below; the server SDK guide has details. Each example also
shows raw curl.
Every write on this API (create, update, delete, rotate) requires an
Idempotency-Key header; the SDK types it as a required field on those
calls.
Create an endpoint
The response is the endpoint object. The
secret is present only in this create response and in a rotate response — store it now; it’s never returned again.
Filtering events
event_types accepts three forms, which you can mix in one array:
Subscribe only to what you handle — it keeps your endpoint’s traffic and your logs focused. You can change the set any time with an update.
List, retrieve, update
data:
POST or PATCH and only the fields you’re changing — url, description, or event_types:
Disable and delete
Disable an endpoint to stop deliveries while keeping it (and its secret) intact — useful during maintenance:disabled and status are two views of the same flag — {"disabled": true} is equivalent to {"status": "disabled"}, and status is only ever active or disabled. Re-enable with {"disabled": false}.
Delete removes the endpoint permanently:
Rotate the signing secret
Rotating issues a new secret and returns it once. The previous secret keeps verifying for a brief overlap window, so deliveries already in flight (or signed just before the rotation) still pass — which is why a delivery’swebhook-signature header can carry more than one signature.
1
Rotate
Call
rotate_secret and capture the new whsec_ from the response.2
Accept both
Deploy your handler to verify against the new secret while still accepting the old one during the overlap.
3
Retire the old
Once the window has passed and all deliveries verify with the new secret, drop the old one.

