
# 创建媒资：URL拉取注入（公测中） - UploadMetaDataByUrl
#### 功能介绍
通过音视频源文件URL，离线拉取音视频文件至点播服务。
- 单文件URL拉取场景：单片源文件最大支持400G。
  
- 媒资批量搬迁场景：如果音视频文件大小在5TB以下，可以使用这种方式。如果文件大小超出5TB，请提交工单处理。
  
 
#### 接口约束
- 用户调用该API一次最多支持拉取16条音视频。
  
- URL拉取m3u8文件时，URL中不支持携带防盗链等鉴权参数。
  
 
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/VOD/doc?api=UploadMetaDataByUrl)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-vod/vod_04_0012.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                             | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项                                                                                                                                                                                                            |
  |:---|:---|:---|:---|:---|:---|
  | vod:asset:createUploadTaskByUrl | Write | assets \*   | -   | -  | - obs:bucket:getBucketAcl  - obs:bucket:putBucketAcl   |
     
  
 
#### URI
POST /v1.0/{project_id}/asset/upload_by_url
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                             |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID，获取方法请参考[获取项目ID](https://support.huaweicloud.com/api-vod/vod_04_0211.html) |
   
#### 请求参数
表2请求Header参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                      |
|:---|:---|:---|:---|
| X-Auth-Token  | 否    | String | 用户Token，使用Token鉴权方式时必选。 通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
| Authorization | 否    | String | 使用AK/SK方式认证时必选，携带的鉴权信息。                                                                                 |
| X-Sdk-Date    | 否    | String | 使用AK/SK方式认证时必选，请求的发生时间。                                                                                 |
   
表3请求Body参数 
| 参数               | 是否必选 | 参数类型                                                                              | 描述          |
|:---|:---|:---|:---|
| upload_metadatas | 是    | Array of [UploadMetaDataByUrl] objects | 待拉取创建的媒资元数据 |
   
 表4UploadMetaDataByUrl 
| 参数                  | 是否必选 | 参数类型                                                | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| video_type          | 是    | String                                              | 上传音视频文件的格式。 取值如下： - 视频文件：MP4、TS、MOV、MXF、MPG、FLV、WMV、AVI、M4V、F4V、MPEG、3GP、ASF、MKV、WEBM、M3U8   - 音频文件：MP3、OGG、WAV、WMA、APE、FLAC、AAC、AC3、MMF、AMR、M4A、M4R、WV、MP2    若上传格式为音频文件，则不支持转码、添加水印和字幕。 |
| title               | 是    | String                                              | 媒资标题，长度不超过128个字节，UTF-8编码。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| url                 | 是    | String                                              | 待拉取音视频文件的URL。 说明： URL必须以扩展名结尾，暂只支持http和https协议，其中HTTP方式存在安全风险，建议使用HTTPS。不建议您将认证凭据等敏感信息写在URL。                                                                                                                                                                                                                                                                                                                                                                                          |
| description         | 否    | String                                              | 视频描述，长度不超过1024个字节。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| category_id         | 否    | Integer                                             | 媒资分类ID。 您可以调用[创建媒资分类](https://support.huaweicloud.com/api-vod/vod_04_0028.html)接口或在点播控制台的分类设置中创建对应的媒资分类，并获取分类ID。 说明： 若不设置或者设置为-1，则上传的音视频归类到系统预置的"其它"分类中。                                                                                                                                                                                                                                                                                               |
| tags                | 否    | String                                              | 视频标签。 单个标签不超过24个字节，最多不超过16个标签。 多个用逗号分隔，UTF8编码。                                                                                                                                                                                                                                                                                                                                                                                                         |
| auto_publish        | 否    | Integer                                             | 是否自动发布。 取值如下： - 0：表示不自动发布。   - 1：表示自动发布。    默认值：1。                                                                                                                                        |
| template_group_name | 否    | String                                              | 转码模板组名称。 若不为空，则使用指定的转码模板对上传的音视频进行转码，您可以在视频点播控制台配置转码模板，具体请参见《点播服务用户指南》中的"转码设置"。 说明： 若同时设置了"**template_group_name** "和"**workflow_name** "字段，则"**template_group_name**"字段生效。                                                                                                                                                                                                                                                                             |
| auto_encrypt        | 否    | Integer                                             | 是否自动加密。 取值如下： - 0：表示不加密。   - 1：表示需要加密。    默认值：0。若设置为需要加密，则必须配置转码模板，且转码的输出格式是HLS。                                                                                                          |
| auto_preheat        | 否    | Integer                                             | 是否自动预热到CDN。 取值如下： - 0：表示不自动预热。   - 1：表示自动预热。    默认值：0。                                                                                                                                    |
| thumbnail           | 否    | [Thumbnail] object | 截图参数。 须知：设置截图参数会产生相应的截图费用。为避免产生截图费用，可不设置此参数。                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| review              | 否    | [Review] object       | 媒资审核参数。 说明： 仅"华北-北京一"、"华北-北京四"点播服务支持此功能。                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| workflow_name       | 否    | String                                              | 工作流名称。 若不为空，则使用指定的工作流对上传的音视频进行处理，您可以在视频点播控制台配置工作流，具体请参见《点播服务用户指南》中的"工作流设置"。                                                                                                                                                                                                                                                                                                                                                                                                           |
   
 表5Thumbnail 
| 参数             | 是否必选 | 参数类型              | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| type           | 是    | String            | 截图类型。 取值如下： - time：每次进行截图的间隔时间。   - dots: 按照指定的时间点截图。   - quantity： 按照指定张数，根据视频时长等分视频截图。    |
| quantity       | 否    | Integer           | **type**取值为quantity时必填。 按照指定张数，根据视频时长等分视频截图。 取值范围：\[1,10\]之间的整数。                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| quantity_time  | 否    | Integer           | **type**取值为quantity时选填。 按照指定时间间隔取指定张数截图。 取值范围：\[0,2147483647\]之间的整数。                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| time           | 否    | Integer           | 根据时间间隔采样时的时间间隔值。单位：秒。 **type**取值为time时。 默认值：12 取值范围：\[0,100\]之间的整数。                                                                                                                                                                                                                                                                                                                                                                      |
| dots           | 否    | Array of integers | **type**取值为dots时必填。指定时间截图时的时间点数组。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| cover_position | 否    | Integer           | 该值表示指定第几张截图作为封面。 默认值：1。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| format         | 否    | Integer           | 截图文件格式。 取值如下： - 1：jpg。    默认值：1 。                                                                                                                                                                                                                                                                                         |
| aspect_ratio   | 否    | Integer           | 纵横比，图像缩放方式。 取值如下： - 0：自适应（保持原有宽高比）。   - 1：16:9。    默认值：0。                                                                                                                                                  |
| max_length     | 否    | Integer           | 截图最长边的尺寸。 单位：像素。 宽边尺寸按照该尺寸与原始视频像素等比缩放计算。 默认值：480。                                                                                                                                                                                                                                                                                                                                                                                        |
   
 表6Review 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                                               |
|:---|:---|:---|:---|
| template_id | 否    | String  | 审核模板ID。您可以在视频点播控制台配置审核模板后获取，具体请参见《点播服务用户指南》中的"审核设置"。 说明： 仅"华北-北京一"、"华北-北京四"点播服务支持此功能。                       |
| interval    | 否    | Integer | 截图检测时间间隔，取值范围为(0,100\]，该参数在请求参数中忽略。                                                                                                              |
| politics    | 否    | Integer | 鉴政内容检测置信度，取值范围为-1或者\[0,100\]，该参数在请求参数中忽略。 置信度越高，说明审核结果越可信。未开启或设置为0时，表示未进行此项检测。politics、terrorism、porn三个参数不能同时为0。  |
| terrorism   | 否    | Integer | 鉴恐内容的检测置信度，取值范围为-1或者\[0,100\]，该参数在请求参数中忽略。 置信度越高，说明审核结果越可信。未开启或设置为0时，表示未进行此项检测。politics、terrorism、porn三个参数不能同时为0。 |
| porn        | 否    | Integer | 鉴黄内容的检测置信度，取值范围为-1或者\[0,100\]，该参数在请求参数中忽略。 置信度越高，说明审核结果越可信。未开启或设置为0时，表示未进行此项检测。politics、terrorism、porn三个参数不能同时为0。 |
   
#### 响应参数
**状态码：200**
表7响应Body参数 
| 参数            | 参数类型                                                               | 描述          |
|:---|:---|:---|
| upload_assets | Array of [UploadAsset] objects | 待拉取创建的媒资元数据 |
   
 表8UploadAsset 
| 参数         | 参数类型   | 描述            |
|:---|:---|:---|
| url        | String | 待拉取音视频文件的URL。 |
| asset_id   | String | 新创建媒资的媒资id    |
| error_code | String | 错误码。          |
| error_msg  | String | 错误描述。         |
   
**状态码：400**
表9响应Body参数 
| 参数         | 参数类型   | 描述    |
|:---|:---|:---|
| error_code | String | 错误码。  |
| error_msg  | String | 错误描述。 |
   
#### 请求示例
创建媒资，使用URL拉取方式。基于音视频源文件URL，将音视频文件离线拉取上传到点播服务
```
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
    }
  ]
}
```
#### 响应示例
**状态码：200**
处理成功返回。
```
{
  "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
  } ]
}
```
**状态码：400**
处理失败返回。
```
{
  "error_code" : "VOD.10003",
  "error_msg" : "The specified key does not exist."
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 200 | 处理成功返回。 |
| 400 | 处理失败返回。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-vod/ErrorCode.html)。
