Skip to navigation

generation status update

Sent when a generation reaches a terminal status (COMPLETED, FAILED or REJECTED). Delivery is attempted up to six times over about two hours: timeouts, connection errors, 429 and 5xx responses are retried with backoff (Retry-After is honored), and any other response outside 2xx ends delivery. Each attempt has a 10-second timeout. Every attempt carries the same Sync-Delivery-Id and a freshly timestamped Sync-Signature, so deduplicate on Sync-Delivery-Id or the generation id.

Headers

Sync-SignaturestringRequired

t=<unix seconds>,v1=<hex HMAC-SHA256>. The HMAC is computed over <t>.<raw request body> with your organization webhook secret from GET /v2/organizations/webhook/secret. Each attempt is signed again with a new timestamp.

Sync-Delivery-IdstringRequired
Identifies this delivery. It stays the same on every retry of the same event, so use it to ignore duplicates.

Payload

The payload of this webhook request is an object.
idstringRequired
A unique identifier for the generation.
createdAtdatetimeRequired
The date and time the generation was created
statusenumRequired
The status of the generation
Allowed values:
modelenumRequired
name of the model to use for generation.
Allowed values:
inputlist of objectsRequired
The input items for the generation
outputUrlstring or nullRequired
url of the generated output media. Null unless the generation completed.
errorstring or nullRequired

Human-readable error message if the generation failed or was rejected, otherwise null.

errorCodestring or nullRequired

Machine-readable error code if the generation failed or was rejected, otherwise null. See Error Handling and GET /v2/errors.

webhookUrlstringOptional
url of the webhook server
optionsobjectOptional
options used for the generation
dubAudioUrlstring or nullOptional

Dubbed audio URL. Omitted without dubParams; null until the dubbed track is available.

dubAudioAssetIdstring or nullOptional

Reusable AUDIO asset for the dubbed track. Omitted without dubParams; null until available or when retention settings or a custom output bucket prevent saving it.

synthesizedAudioUrlstringOptional
url of the speech synthesized from a text input. Present only for generations that used a text input.

Response

200
any
Return a 200 status to indicate that the data was received successfully.