Veo Extend API Integration Instructions

This document will introduce the integration instructions for the Veo Extend API. This interface is used to extend the duration of an already generated Veo video, with AI automatically continuing the subsequent scenes.

Application Process

To use the API, you need to first apply on the corresponding Veo service page. If you are not logged in or registered, you will be automatically redirected to the login page.

Basic Usage

To call this interface, the following parameters need to be passed:

  • video_id (required): The task ID of the source video (from /veo/videos or this interface itself).
  • model (required): The model used for extension, only supports veo31-fast and veo31 models, other models are not supported upstream.
  • prompt (optional): A text prompt used to guide the extension of the scene.

Request example:

curl -X POST 'https://api.acedata.cloud/veo/extend' \
  -H 'accept: application/json' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -d '{
    "video_id": "dd01fc69-e1f7-4b68-aa8c-463f6b748d11",
    "model": "veo31-fast",
    "prompt": "the camera slowly zooms out to reveal more of the landscape"
  }'

The return result is the same as /veo/videos:

{
  "success": true,
  "task_id": "5fa2d9a6-7e54-481b-a4b0-3dc6f25dd2ab",
  "data": [
    {
      "id": "9b6f3b6b9c45419fbf2e3fe2f10b2b3a",
      "video_url": "https://platform.cdn.acedata.cloud/veo/5fa2d9a6.mp4",
      "created_at": "2025-07-25 16:07:43",
      "complete_at": "2025-07-25 16:10:28",
      "state": "succeeded"
    }
  ]
}

Important Restrictions

Videos extended from /veo/extend can continue to be extended again using /veo/extend, but cannot be processed by the following interfaces:

  • /veo/reshoot — Cannot change camera movement
  • /veo/objects — Cannot add or remove objects

If the provided video_id is an extended result, the related interfaces will return a 400 error; please use the original video as the source.

Billing Instructions

  • model=veo31-fast: 1.20 Credit / time
  • model=veo31: 7.64 Credit / time

Asynchronous Callback

The interface supports asynchronous mode; by passing in callback_url, you can receive the result via a POST request after the task is completed. If there is no public callback address, you can also set async to true, and the interface will immediately return task_id, after which you can poll the corresponding task query interface to obtain the result.