Configure
Endpoints
A customer's webhook URL, with the event types it subscribes to and its own signing secret.
An endpoint is a URL one of your customers receives webhooks on. It belongs to a customer, subscribes to a list of event types, and has its own signing secret, status and delivery history. Each endpoint has its own queue, so a slow or broken one never delays another.
Create an endpoint
curl -X POST https://api.getensue.com/v1/dispatch/customers/acme/endpoints \
-H "authorization: Bearer ens_<key>" -H "content-type: application/json" \
-d '{
"url": "https://acme.example.com/hooks",
"description": "Production",
"event_types": ["order.shipped", "order.refunded"]
}'
| Field | Notes |
|---|---|
url |
An HTTPS URL. Ensue refuses URLs that would loop back into itself. |
event_types |
The types to deliver. Leave out for all (["*"]: every active and deprecated type). Archived types are not delivered. |
description |
Up to 200 characters. |
status |
active or paused. |
The response includes the signing secret, whsec_…, once. A customer can have up to 20 endpoints.
Signing secrets
Every endpoint has its own secret. Retrieve it again with GET /v1/dispatch/endpoints/:id/secret and give it to your customer; they use it to verify signatures.
Rotate a secret
POST /v1/dispatch/endpoints/:id/rotate-secret creates a new secret. For the next 24 hours the previous secret keeps signing too, and each delivery carries both signatures, so a customer can switch over at their own pace without rejecting a single webhook. Any Standard Webhooks library accepts a request when any of the signatures matches.
Change and pause
PATCH /v1/dispatch/endpoints/:idchanges the URL, event types, description or status.- Set
statustopausedto hold deliveries to an endpoint while the customer fixes something. Nothing is lost and nothing is retried while paused. - A new URL closes an open circuit breaker.
Disabled endpoints
An endpoint that keeps failing is stopped by its circuit breaker rather than retried forever. When the customer has fixed their server, re-enable it and resend what it missed with recover.
Endpoints in the dashboard
Customers lists each customer with their endpoints and health. Open a customer to see their endpoints, subscriptions and recent deliveries, send a test event, rotate a secret or pause an endpoint.