POST that HydraDB sends to your endpoint when ingested content reaches a terminal indexing state, completed or errored, so you do not have to poll Ingestion Status. One webhook is registered per organization, for the indexing.status_changed event. The Webhooks guide covers the payload, signature verification, and receiver examples.
Endpoints
Set up the webhook:- Register Webhook:
POST /webhooks/indexingregisters your endpoint, or replaces the current registration. Sendgenerate_signing_secret: trueto get a signing secret in the same call. - Send Test Delivery:
POST /webhooks/indexing/testsends a synthetic, signed payload to confirm your endpoint and your signature check work. - Get Webhook:
GET /webhooks/indexingreads the current registration and whether a signing secret is set.
- List Deliveries:
GET /webhooks/indexing/deliverieslists delivery attempts, most recent first. Filter bystatusto find failures. - Get Delivery:
GET /webhooks/indexing/deliveries/{delivery_id}reads one delivery, using the id from theX-HydraDB-Delivery-IDheader. - Retry Delivery:
POST /webhooks/indexing/deliveries/{delivery_id}/retryqueues afailedorpermanently_faileddelivery for another attempt.
- Set Signing Secret:
POST /webhooks/indexing/signing-secretgenerates a new signing secret, or stores one you supply. The secret is returned once and takes effect immediately. If you supply the new secret, configure your receiver to accept it before this call. - Disable Signing:
DELETE /webhooks/indexing/signing-secretturns signing off. - Delete Webhook:
DELETE /webhooks/indexingremoves the registration and its signing secret.
Typical call sequence
POST /webhooks/indexingwith your HTTPS endpoint andgenerate_signing_secret: true. Store the secret it returns.POST /webhooks/indexing/testto check your receiver accepts the delivery and verifies the signature.- Ingest content as usual. Each item that finishes indexing produces one delivery.
GET /webhooks/indexing/deliveries?status=failedto find deliveries your endpoint rejected, then retry them once the problem is fixed.
Delivery and retries
- Each delivery contains the event body and an
X-HydraDB-Delivery-IDheader. Signed deliveries also includeX-HydraDB-Signature. - Failed deliveries retry with exponential backoff. HydraDB Cloud marks a delivery
permanently_failedafter 16 attempts or 48 hours after the first failure, whichever comes first. - Automatic and manual retries use your current signing secret.
- Test deliveries do not appear in the delivery history.
Related resources
- Webhooks guide: payload fields, signature verification, receiver examples, and secret rotation
- Ingestion Status: polling instead of a webhook
- Ingest Context: the ingestion that produces deliveries
