Skip to main content
Generations are asynchronous image or video workloads submitted through the regional /v1 API. This page covers lifecycle fields, retry safety, and content management routes.

Lifecycle

Use webhooks for production completion handling. Polling is useful for CLIs, tests, and low-throughput workflows.

Create a generation

Image and video generations use separate routes. Use the model schema reference, the models page, or GET /v1/library/models to inspect supported fields for each model_identifier.
Terminal
A successful create response returns a generation_id immediately.
JSON

Retry safely

Send an Idempotency-Key header on generation create requests when retries can happen from your queue, browser, worker, or SDK client. See Idempotency for the replay window and full contract.

Provider order

generation_provider_order controls the order used for a model that supports more than one inference provider. The create response returns the resolved generation_provider_order as an array.

Fetch a generation

Poll GET /v1/content/{generation_id} until generation_status is terminal.
Terminal
JSON

List generations

GET /v1/content/list returns paginated generation records for the authenticated account.
Terminal
Paginated responses include total, limit, and offset next to data.

Cancel a generation

Use POST /v1/content/generation/cancel/{generation_id} when a generation is still cancelable.
Terminal
Cancel requests can return: Eligible cancellations refund reserved credits. See Errors for the current cancel window.

Delete a generation

DELETE /v1/content/{generation_id} deletes the generation record and stored output files for that generation.
Terminal
JSON
Deletion is irreversible. Output file and generation record retention windows are listed in billing.