video-generate

Create a looping 360-degree product video

Animates one product image through a complete turntable revolution and returns to the starting pose so the result loops cleanly. Video generation runs asynchronously. Poll GET /v1/generations/{generation_id} with the returned generation_id until the generation completes or fails.

post/v2/tool/product-360-video

Request body

direction'clockwise' | 'counter-clockwise' required

Direction the product rotates around its vertical axis.

product_descriptionstring

Optional factual description of the product in the source image.

resolution'480p' | '720p' | '1080p'

The resolution tier of the generated video.

durationinteger

The length of the generated video in seconds. When omitted, the model picks the best duration for the prompt ("auto").

target_collection_idstring

A collection you can write to, by its URL-safe base64 collection id. The output video is added to it when the request completes.

Example request

{
  "duration": 5,
  "target_collection_id": "target_collection_id",
  "image_asset_identifier": {
    "asset_type": "RESPONSE",
    "asset_id": "7uS_VESkRI6O3-sVgHQp_A"
  },
  "product_description": "product_description",
  "resolution": null,
  "direction": null
}

Response

Product video accepted for asynchronous processing.

generation_idstring required

URL-safe base64 ID of the accepted generation. Accepted by the GET /v1/generations/{generation_id} polling endpoint.

createdstring date-time required

The time the request was accepted.

Example response

{
  "generation_id": "generation_id",
  "created": "2000-01-23T04:56:07+00:00"
}

Changes