Skip to content
§P05ProductWebhooks

Events that are signed, retried and replayable.

Publish what happened to your own systems, with a signature you can verify, a retry curve you can read, and a delivery log you can replay from.

FIG P2.1Webhooks · where it sits
DeliveriesSample data
  • flow.run.partialevt_9c21f0 · attempt 1/5200118 ms
  • record.quarantinedevt_9c21ea · attempt 1/5200104 ms
  • flow.run.succeededevt_9c21d4 · attempt 1/520096 ms
  • connection.unhealthyevt_9c21c1 · attempt 3/550230,008 ms
§MMechanisms

How it works

Mechanisms, not promises.

  • 01

    Signed with a shared secret

    Zentrix-Signature carries a timestamp and an HMAC-SHA256 over the timestamp and the body, with a documented tolerance window and a verification sample in each language.

  • 02

    Retries you can predict

    Five attempts on an exponential backoff curve that is published, not guessed at. Every attempt is recorded with its response code and latency.

  • 03

    Replay from the log

    Replay a single event or every failed event for an endpoint, after you have fixed the receiver — without re-running the flow.

  • 04

    Automatic disabling, explained

    An endpoint that fails consecutively past a configurable threshold is disabled with a banner stating exactly why, and re-enabled in one click.

  • 05

    Payload preview

    Every delivery can be expanded to the exact payload sent and the headers received, so a disagreement about what was delivered is settled by the record.

§AAPI

In the API

The same thing, from a terminal.

http
POST https://api.example.com/hooks/zentrixZentrix-Signature: t=1790000531,v1=6f1c4e…Content-Type: application/json {  "id": "evt_9c21f0",  "type": "flow.run.partial",  "created": 1790000531,  "environment": "production",  "data": {    "run": "run_8f21b7e0",    "flow": "customer-sync",    "records": { "in": 1284, "out": 1282, "quarantined": 2 }  }}

Example payload. Verify with HMAC-SHA256 over "t.body" using your endpoint secret.

Event catalogue
flow.run.succeeded · flow.run.failed · flow.run.partial · record.quarantined · connection.unhealthy · connection.auth_required · usage.limit_approaching
Secret handling
The signing secret is revealed once at creation and can be rotated with an overlap window.
Delivery log
Event id, event type, attempt, response code, latency and timestamp — retained per plan.
Testing
Send a test event to an endpoint before any real traffic reaches it.