All Products
Search
Document Center

ApsaraVideo VOD:ProduceEditingProjectVideo

Last Updated:Apr 07, 2026

Synthesizes one or more videos into a final composite video. You can submit the source videos directly by using the Timeline parameter, or create a cloud editing project first and then submit it for production.

Operation description

  • Important: Cloud editing is a paid feature. Before you call this operation, review the billing methods and pricing of ApsaraVideo VOD. For more information, see Online editing and production.

  • This is an asynchronous API. After you submit a task, the system returns the ID of the cloud editing project. Production does not begin immediately. The task is processed asynchronously, and the final result is sent via a callback. You can also call the GetEditingProject operation to query the task status.

  • A cloud editing timeline can use video resources from material management or the media library. If you use videos from the media library, ensure their status is Normal.

  • The service synthesizes videos based on ProjectId and Timeline. The logic is as follows:

    • You must provide either ProjectId or Timeline.

    • If you provide a Timeline but no ProjectId, the system automatically creates a new cloud editing project. This Timeline becomes the project's timeline, and any material referenced in it is added to the project. The system then proceeds with video synthesis.

    • If you provide a ProjectId but no Timeline, the system retrieves the most recently saved timeline for that project to synthesize the video.

    • If you provide both ProjectId and Timeline, the system uses the specified Timeline to synthesize the video and updates the project's timeline and materials. If you specify other parameters, the system also updates the corresponding project fields.

  • You can use a maximum of 100 tracks for each of the following types: video tracks, image tracks, and subtitle tracks.

  • The total number of materials cannot exceed 200, and the total file size of all materials cannot exceed 1 TB.

  • The Region of the input or output bucket must be the same as the Region where you use the ApsaraVideo VOD service.

  • The output video resolution must meet the following constraints:

    • The width and height cannot be less than 128 px.

    • The width and height cannot be greater than 4,096 px.

    • The shorter dimension cannot be greater than 2,160 px.

  • After the service synthesizes a video, it automatically uploads the video to ApsaraVideo VOD. The service then sends event notifications for media synthesis completion and video upload completion. After the synthesized video is transcoded, the service sends event notifications for TranscodeComplete and AllStreamTranscodeComplete.

  • You can also add special effects to the synthesized video. For more information, see Special effects.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

vod:ProduceEditingProjectVideo

create

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

ProjectId

string

No

The ID of the cloud editing project. You can obtain the ID in one of the following ways:

fb2101bf24b4cb318787dc****

Timeline

string

No

The timeline of the cloud editing project, in JSON format. For more information about the schema, see timeline.

Note

Ensure each VideoTrackClip object contains a valid MediaId. Otherwise, the request fails.

{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"cc3308ac59615a54328bc3443****"},{"MediaId":"da87a9cff645cd88bc6d8326e4****"}]}]}

Title

string

No

The title of the cloud editing project.

Cloud Clip Project Title

Description

string

No

The description of the cloud editing project.

Cloud clip project description

CoverURL

string

No

The cover URL of the cloud editing project.

https://example.aliyundoc.com/6AB4D0E1E1C7446888351****.png

MediaMetadata

string

No

The metadata of the synthesized video, in JSON format. For more information about the schema, see MediaMetadata.

{"Description":"Synthetic Video Description","Title":"Synthetic userData test"}

ProduceConfig

string

No

The synthesis configuration, in JSON format. For more information about the schema, see ProduceConfig.

Important The StorageLocation field can be omitted if the storage Region is Shanghai. This field is required for all other storage Regions.

{"TemplateGroupId":"6d11e25ea30a4c465435c74****"}

UserData

string

No

Custom settings in a JSON string. The string can be up to 256 characters in length and supports settings such as message callbacks. For more information about the schema, see UserData.

Note

To use the message callback feature, you must configure an HTTP callback URL and select the corresponding event types in the ApsaraVideo VOD console. Otherwise, the callback settings do not take effect.

{"Extend":{"width":1280,"id":"028a8e56b1ebf6bb7afc74****","height":720},"MessageCallback":{"CallbackURL":"https://example.aliyundoc.com/2016-08-15/proxy/httpcallback/testcallback/","CallbackType":"http"}}

AppId

string

No

The Application ID. Default value: app-1000000. For more information, see Use apps.

app-****

Response elements

Element

Type

Description

Example

object

The response body.

RequestId

string

The Request ID.

25818875-5F78-4AF6-D7393642CA58****

MediaId

string

The ID of the synthesized video.

Note
  • This operation returns the ID of the synthesized video in its synchronous response.

  • A MediaId in the response indicates that the service has accepted the video synthesis task for asynchronous processing.

006204a11bb386bb25491f95f****

ProjectId

string

The ID of the cloud editing project.

fb2101bf24b4cb318787dc****

Examples

Success response

JSON format

{
  "RequestId": "25818875-5F78-4AF6-D7393642CA58****",
  "MediaId": "006204a11bb386bb25491f95f****",
  "ProjectId": "fb2101bf24b4cb318787dc****"
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.