Webhook Delivery Flow
This sequence diagram shows the full lifecycle of a typical content generation integration using webhooks:How It Works
1
Register a webhook URL
Select which events to subscribe to when creating the webhook.
2
Receive events
When an event occurs, Hrizn sends an HTTP POST to your URL with a JSON payload.
3
Verify the signature
Your server verifies the HMAC-SHA256 signature in the
X-Webhook-Signature header.4
Process and acknowledge
Process the payload and return a
2xx response. If delivery fails, Hrizn retries with exponential backoff.Setting Up Webhooks
Via the Dashboard
Go to the API tab in the Dealership Manager, switch to the Webhooks section, and click Add Webhook.Via the API
secret for verifying signatures.
Event Payload
Every webhook delivery sends a JSON payload:Verifying Signatures
Every delivery includes anX-Webhook-Signature header with an HMAC-SHA256 signature of the request body:
Available Events
IdeaCloud Events
IdeaCloud Events
Content Events
Content Events
Content Approval Events
Content Approval Events
Publishing Events
Publishing Events
Quality Events
Quality Events
Inventory Events
Inventory Events
Content Progress Events
Thecontent.progress event provides real-time visibility into content generation stages. Unlike terminal events (content.completed, content.failed), progress events fire at meaningful stage transitions — typically 4-6 events per content item.
Stages
Example Payload
Subscribers must explicitly include
content.progress in their events array when creating or updating a webhook subscription. Existing subscribers only receiving content.completed will not receive progress events unless they update their subscription.Retry Policy
If your endpoint returns a non-2xx status or times out (15s), Hrizn retries with exponential backoff:- Attempt 1: Immediate
- Attempt 2: ~1 minute later
- Attempt 3: ~5 minutes later
- Attempt 4: ~30 minutes later
- Attempt 5: ~2 hours later
After 10 consecutive failures across different events, the webhook subscription is automatically disabled. You’ll need to re-enable it from the dashboard or via
PATCH /webhooks/{id}.Testing
Send a test ping to verify your webhook URL:test.ping event to your URL and returns the response status.

social.post.publishedid,status,platformssocial.post.scheduledid,status,platformssocial.post.failedid,status,platformssocial.review.createdreview_id,platform,star_rating,location_name,account_idsocial.review.updatedreview_id,platform,star_rating,location_name,account_id