Webhooks and live status
Receive signed, at-least-once lifecycle events without running a polling loop.
Create a webhook
typescript
const webhook = await customer.webhooks.create({
url: 'https://example.com/webhooks/piqae',
events: ['job.updated']
});
// Save webhook.secret now. It is returned once.Delivery rules
- Verify the timestamp and HMAC signature over the exact raw request body.
- Deduplicate at-least-once delivery by event ID.
- Return 2xx only after your application durably records the event.
- Treat status changes as monotonic evidence, not proof of physical output.
- Use API reads to reconcile after downtime or an event gap.