
# 修改媒资文件在OBS的存储模式 - UpdateStorageMode
#### 功能介绍
修改媒资文件在OBS的存储模式。
媒资上传默认为标准存储模式，支持转为低频或者归档存储模式。
- 低频存储可恢复为标准存储或者降级为归档存储。
  
- 归档存储仅支持恢复为标准存储，不支持直接转为低频存储。
  
- 当媒资处于截图、转码等任务处理中状态时无法修改存储模式。
  
OBS存储计费注意事项，如下所示：
- 低频模式最低存储时间为30天，归档模式最低存储时间为90天。未满此时间提前取回或删除媒资文件，仍会按最低存储时间收费。
  
- 媒资从低频或归档模式恢复成标准模式也会收取媒资取回的费用。
  
以低频存储模式为例进行说明，如果存储时间为28天（＜30天），则按照最低存储时间30天计费；如果存储时间为31天（≥30天），则按实际天数计费。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/VOD/doc?api=UpdateStorageMode)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-vod/vod_04_0012.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                         | 访问级别  | 资源类型（\*为必须） | 条件键            | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | vod:asset:updateStorageMode | Write | assets \*   | vod:AssetLabel | -  | -      |
     
  
 
#### URI
PUT /v1/{project_id}/asset/storage-mode
表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参数 
| 参数           | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| asset_id     | 是    | String  | 原媒资ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| storage_mode | 是    | String  | 存储模式。 取值如下： - STANDARD：标准存储。   - WARM：低频存储。   - COLD：归档存储。    |
| restore_mode | 否    | String  | 归档恢复方式。 取值如下： - TEMP：临时   - FOREVER：永久                                                                                                                                                         |
| days         | 否    | Integer | 从归档存储临时恢复为标准存储的时间。 取值范围：1-30。单位：天。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| restore_tier | 否    | String  | 归档恢复选项。 - EXPEDITED：快速恢复   - STANDARD：标准恢复    默认值：EXPEDITED。                                                                                                                                                                        |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数                | 参数类型                                                                   | 描述               |
|:---|:---|:---|
| task_result_array | Array of [TaskResult] objects | 修改媒资存储模式任务的下发结果。 |
   
 表5TaskResult 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| asset_id | String | 媒资ID                                                                                                                                                                                                                                                                                                                                                                                           |
| status   | String | 查看修改媒资存储模式的任务是否下发成功。 - SUCCEED：成功   - FAILED：失败    |
   
**状态码：400**
表6响应Body参数 
| 参数         | 参数类型   | 描述    |
|:---|:---|:---|
| error_code | String | 错误码。  |
| error_msg  | String | 错误描述。 |
   
#### 请求示例
修改媒资文件在OBS的存储模式
```
PUT https://{endpoint}/v1/{project_id}/asset/storage-mode
Content-Type: application/json
{
  "asset_id": "2305739f855413a84af9e6ad6e2b21be",
  "storage_mode": "WARM"
}
```
#### 响应示例
**状态码：200**
处理成功返回。
```
{
  "task_result_array" : [ {
    "asset_id" : "2305739f855413a84af9e6ad6e2b21be",
    "status" : "SUCCEED"
  } ]
}
```
**状态码：400**
处理失败返回。
```
{
  "error_code" : "VOD.10053",
  "error_msg" : "The request parameter is illegal, illegal field: {xx}."
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 200 | 处理成功返回。 |
| 400 | 处理失败返回。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-vod/ErrorCode.html)。
