Overview
Webhooks let your backend receive push notifications when key actions happen on your account — a call ends, a dubbing job completes, a workflow runs, and so on. Indigenius sends an HTTPPOST to your configured endpoint with a JSON payload describing the event.
Configure your webhook URL when creating an API key (callbackUrl) or when creating a workflow (webhook.url).
Delivery model
- Events are delivered via HTTP
POSTto your endpoint. - Your endpoint must return a
2xxstatus code within 10 seconds. If it times out or returns a non-2xx, delivery is retried with backoff. - Process events asynchronously — do your actual work in a background job, not in the request handler.
Event payload shape
Every webhook delivery shares the same outer envelope:Event types
call.completed
Fired when a web or phone call ends.
call.failed
Fired when a call fails before completing.
workflow.completed
Fired when a workflow execution finishes successfully.
dubbing.completed
Fired when a dubbing job finishes and media is ready to download.
dubbing.failed
Fired when a dubbing job fails during processing.
tts.completed
Fired when a text-to-speech job finishes.
Receiver checklist
1
Use HTTPS
Indigenius only delivers to
https:// endpoints. Plain HTTP URLs are
rejected.2
Respond quickly
Return
200 OK (or any 2xx) as soon as you receive and validate the
payload. Do not block the response while processing.3
Make handlers idempotent
Deliveries can be retried. Always check whether you have already processed
an event before acting on it — use
data.callId or data.jobId as your
deduplication key.4
Log event IDs
Log the event type, timestamp, and relevant IDs on every delivery. This
makes it easy to cross-reference against Webhook
History.
Example receiver (Node/Express)
Retry behaviour
If your endpoint returns a non-2xx status or times out, Indigenius retries delivery with exponential backoff. You can inspect all delivery attempts — successful and failed — in Webhook History.