Pulling Media Files from URLs (in OBT)
Function
This API is used to pull a source media file from its URL into VOD. This method is applicable to files smaller than 5 TB. If the file size exceeds 5 TB, you need to use a migration tool to upload the file to VOD. Submit a service ticket to obtain the tool and operations guide.
Constraints
-
A maximum of 16 audio/video clips can be pulled at a time by calling this API.
-
When a URL is used to pull an M3U8 file, the URL cannot contain authentication parameters such as hotlink protection.
Authorization Information
Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions. For details about the required permissions, see Permissions Policies and Supported Actions.
URI
POST /v1.0/{project_id}/asset/upload_by_url
|
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
|
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 the user token. |
|
Authorization |
No |
String |
Authentication information. This parameter is mandatory for AK/SK authentication. |
|
X-Sdk-Date |
No |
String |
Time when a request is sent. This parameter is mandatory for AK/SK authentication. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
upload_metadatas |
Yes |
Array of UploadMetaDataByUrl objects |
Metadata of a media asset to be created. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
video_type |
Yes |
String |
Uploaded audio/video file format. The options include:
If an audio file is uploaded, transcoding, watermarking, and subtitling are not supported. |
|
title |
Yes |
String |
Media asset title. The value is UTF-8 encoded and contains a maximum of 128 characters. |
|
url |
Yes |
String |
URL of the audio or video file to be pulled.
NOTE:
The URL must end with a file name extension. Currently, only HTTP and HTTPS are supported. HTTPS is more secure than HTTP and is recommended. Do not include sensitive information such as authentication credentials in the URL.
|
|
description |
No |
String |
Video description. The value contains a maximum of 1024 characters. |
|
category_id |
No |
Integer |
Media asset category ID. You can create a media asset category by calling the API for creating a media asset category or on the VOD console and obtain the category ID.
NOTE:
If this parameter is not specified or is set to -1, the uploaded audio/video files fall into the preconfigured Other category.
|
|
tags |
No |
String |
Video tags. Each tag contains up to 24 characters and up to 16 tags are allowed. Use commas (,) to separate tags. All tags must be UTF-8 encoded. |
|
auto_publish |
No |
Integer |
Whether to publish the content automatically. The options include:
Default value: 1 |
|
template_group_name |
No |
String |
Transcoding template group name. If this parameter is specified, the specified transcoding template is used to transcode the uploaded audio/video. You can configure a transcoding template on the VOD console. For details, see "Transcoding Settings" in VOD User Guide.
NOTE:
If both template_group_name and workflow_name are specified, template_group_name takes effect.
|
|
auto_encrypt |
No |
Integer |
Whether to automatically encrypt a file. The options include:
Default value: 0. If encryption is required, a transcoding template must be configured and the transcoded output format must be HLS. |
|
auto_preheat |
No |
Integer |
Whether to automatically pre-load content to CDN. The options include:
Default value: 0 |
|
thumbnail |
No |
Thumbnail object |
Snapshot parameters. Note: You will be billed for the snapshots generated. To avoid snapshot costs, you can leave these parameters unspecified. |
|
review |
No |
Review object |
Media asset review parameters.
NOTE:
Only VOD in AP-Singapore supports this function.
|
|
workflow_name |
No |
String |
Workflow name. If this parameter is specified, the specified workflow is used to transcode the uploaded audio/video. You can configure a workflow on the VOD console. For details, see "Transcoding Settings" in VOD User Guide. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
type |
Yes |
String |
Snapshot capturing mode. The options include:
|
|
quantity |
No |
Integer |
This parameter is mandatory when type is set to quantity. Snapshots are captured based on the specified quantity and video duration. Value range: an integer ranging from 1 to 10 |
|
quantity_time |
No |
Integer |
This parameter is optional when type is set to quantity. Snapshots are captured based on the specified quantity at a specified interval. Value range: an integer ranging from 0 to 2147483647 |
|
time |
No |
Integer |
Interval at which snapshots are captured. Unit: seconds This parameter is available when type is set to time. Default value: 12 Value range: an integer ranging from 0 to 100 |
|
dots |
No |
Array of integers |
This parameter is mandatory when type is set to dots. Array of time points when snapshots are captured. |
|
cover_position |
No |
Integer |
The value indicates which snapshot is specified as the thumbnail. Default value: 1 |
|
format |
No |
Integer |
Snapshot file format. The options include:
Default value: 1 |
|
aspect_ratio |
No |
Integer |
Aspect ratio. The options include:
Default value: 0 |
|
max_length |
No |
Integer |
The longest side of a snapshot. Unit: pixel The width of the snapshot is scaled proportionally with the longest side and input video pixel. Default value: 480 |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
template_id |
No |
String |
Review template ID. You can obtain the value after configuring the review template on the VOD console. For details, see "Review Settings" in VOD User Guide.
NOTE:
Only VOD in AP-Singapore supports this function.
|
|
interval |
No |
Integer |
Snapshot check interval. The value range is (0,100]. This parameter is ignored in request parameters. |
|
politics |
No |
Integer |
Confidence of politically sensitive content moderation. The value can be -1 or range from 0 to 100. This parameter is ignored in request parameters. A higher confidence score indicates a more reliable moderation result. If this function is disabled or the value is set to 0, this check is not performed. politics, terrorism, and porn cannot be set to 0 simultaneously. |
|
terrorism |
No |
Integer |
Confidence of terrorism-related content moderation. The value can be -1 or range from 0 to 100. This parameter is ignored in request parameters. A higher confidence score indicates a more reliable moderation result. If this function is disabled or the value is set to 0, this check is not performed. politics, terrorism, and porn cannot be set to 0 simultaneously. |
|
porn |
No |
Integer |
Confidence of pornographic content moderation. The value can be -1 or range from 0 to 100. This parameter is ignored in request parameters. A higher confidence score indicates a more reliable moderation result. If this function is disabled or the value is set to 0, this check is not performed. politics, terrorism, and porn cannot be set to 0 simultaneously. |
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
upload_assets |
Array of UploadAsset objects |
Metadata of a media asset to be created. |
|
Parameter |
Type |
Description |
|---|---|---|
|
url |
String |
URL of the audio or video file to be pulled. |
|
asset_id |
String |
ID of the new media asset. |
|
error_code |
String |
Error code. |
|
error_msg |
String |
Error description. |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code. |
|
error_msg |
String |
Error description. |
Example Requests
This example creates a media file using the URL pull mode. It pulls a media file offline from its URL and uploads it to VOD.
POST https://{endpoint}/v1.0/{project_id}/asset/upload_by_url
Content-Type: application/json
{
"upload_metadatas": [
{
"url": "https://mpc-test.obs.cn-north-4.myhuaweicloud.com/Avatar_480P.mp4",
"title": "Avatar test test",
"video_type": "MP4",
"description": "Avatar, test",
"category_id": 1,
"tags": "mytags",
"auto_publish": 1
},
{
"url": "https://mpc-test.obs.cn-north-4.myhuaweicloud.com/Avatar_720.mp4",
"title": "Avatar test test",
"video_type": "MP4",
"description": "Avatar, test",
"category_id": 1,
"tags": "mytags",
"auto_publish": 1
}
]
}
Example Responses
Status code: 200
Returned when the request succeeded.
{
"upload_assets" : [ {
"url" : "https://mpc-test.obs.cn-north-4.myhuaweicloud.com/Avatar_480P.mp4",
"asset_id" : "f488337c31c8e4622f1590735b134c65",
"error_code" : null,
"error_msg" : null
}, {
"url" : "https://mpc-test.obs.cn-north-4.myhuaweicloud.com/Avatar_720.mp4",
"asset_id" : "f488337c31c8e4622f1590525b134c65",
"error_code" : null,
"error_msg" : null
} ]
}
Status code: 400
Returned when the request failed.
{
"error_code" : "VOD.10003",
"error_msg" : "The specified key does not exist."
}
Status Codes
|
Status Code |
Description |
|---|---|
|
200 |
Returned when the request succeeded. |
|
400 |
Returned when the request failed. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot