Updated on 2025-03-25 GMT+08:00

Subtitle management

Function

Packages multiple subtitles in HLS VTT or HLS SRT format.

URI

PUT /v1/{project_id}/asset/subtitles

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Obtaining a Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

User token. This parameter is mandatory when token authentication is used.

It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is a token.

Authorization

No

String

Authentication information. This parameter is mandatory for AK/SK authentication.

X-Sdk-Date

No

String

Time when the request is sent. This parameter is mandatory for AK/SK authentication.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

asset_id

Yes

String

Media asset ID assigned by VOD. This parameter can only be queried but cannot be modified.

default_language

No

String

Default subtitle language (The subtitle must exist.)

repackage_mode

No

String

External mode. If this parameter is not specified, the default value 0 is used.

Options:

-0: The subtitle will be inserted into the historical output.

-1: The subtitle will not be inserted into the historical output.

delete_mode

No

String

Deletion mode. If this parameter is not specified, the default value 0 is used.

Options:

-0: Deleting the subtitle will also clear the subtitle information contained in the historical output.

-1: Deleting the subtitle will not clear the subtitle information contained in the historical output.

add_subtitles

No

Array of AddSubtitle objects

Subtitle to be added or modified

delete_subtitles

No

Array of DeleteSubtitle objects

Subtitle to be deleted. The value of language cannot be the same as that of add_subtitles.

Table 4 AddSubtitle

Parameter

Mandatory

Type

Description

type

Yes

String

Subtitle type. Currently, VTT and SRT subtitle files can be packaged.

language

Yes

String

Subtitle language

obs_info

Yes

ObsInfo object

Information about the OBS bucket where subtitles are stored

Table 5 ObsInfo

Parameter

Mandatory

Type

Description

bucket

Yes

String

OBS bucket name

object

Yes

String

OBS object path, which must be specific to the object

region

No

String

OBS bucket region

Table 6 DeleteSubtitle

Parameter

Mandatory

Type

Description

type

Yes

String

Subtitle type. Currently, VTT and SRT subtitle files can be packaged.

language

Yes

String

Subtitle language

Response Parameters

Status code: 202

Table 7 Response body parameters

Parameter

Type

Description

asset_id

String

Media asset ID assigned by VOD. This parameter can only be queried but cannot be modified.

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code

error_msg

String

Error description

Example Requests

Subtitle management.

PUT https://{endpoint}/v1/{project_id}/asset/subtitles

Content-Type: application/json
{
  "asset_id": "f488337c31c8e4622f1590735b134c65",
  "default_language": "cn",
  "type": "custom_template_group",
  "is_default": true,
  "add_subtitles": [
    {
      "obs_info": {
        "bucket": "test",
        "object": "subtitle_test/happyNewYearCn.vtt"
      },
      "type": "VTT",
      "language": "cn"
    }
  ],
  "delete_subtitles": [
    {
      "type": "VTT",
      "language": "cn"
    }
  ]
}

Example Responses

Status code: 202

The information is returned when the request succeeded.

{
  "asset_id" : "a3ef6526e787acff2ca81c7da840f11f"
}

Status code: 400

The information is returned when the request failed.

{
  "error_code" : "VOD.10053",
  "error_msg" : "The request parameter is illegal, illegal field: {xx}."
}

Status Codes

Status Code

Description

202

The information is returned when the request succeeded.

400

The information is returned when the request failed.

Error Codes

See Error Codes.