
# 批量扩容云硬盘 - BatchExtendVolume
#### 功能介绍
对按需或者包周期云硬盘进行批量扩容。在批量扩容存在包周期云硬盘的场景下：- 如果您需要查看订单可用的优惠券，请参考"[查询订单可用优惠券](https://support.huaweicloud.com/api-oce/api_order_00015.html)"。- 如果您需要支付订单，请参考"[支付包周期产品订单](https://support.huaweicloud.com/api-oce/api_order_00030.html)"。- 如果您需要退订该包周期资源，请参考"[退订包周期资源](https://support.huaweicloud.com/api-oce/zh-cn_topic_0082522030.html)"。
#### 接口约束
- 扩容状态为available的云硬盘时，没有约束限制。
  
- 扩容状态为in-use的云硬盘时，有以下约束：
  - 不支持共享云硬盘，即multiattach参数值必须为false。
    
  
  - 云硬盘所挂载的云服务器状态必须为ACTIVE、PAUSED、SUSPENDED、SHUTOFF才支持扩容。
    
  
  - 批量扩容云硬盘的数量上限：控制台支持50个，API支持60个
    
   
 
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-evs/evs_04_0009.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-evs/evs_04_0023.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
POST /v5/{project_id}/volumes/batch-extend
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                              |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-evs/evs_04_0046.html)。 |
   
#### 请求参数
表2请求Body参数 
| 参数        | 是否必选 | 参数类型                                                                                              | 描述        |
|:---|:---|:---|:---|
| volumes   | 是    | Array of [VolumesForBatchResizeVolume] objects | 扩容云硬盘列表。  |
| bss_param | 否    | [PrepaidParamForBatchResizeVolume] object | 包周期的扩展参数。 |
   
 表3VolumesForBatchResizeVolume 
| 参数       | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| id       | 是    | String  | 云硬盘ID。                                                                                                                                                                                                                                                                                                                                                                                                             |
| new_size | 是    | Integer | 扩容后的云硬盘大小，单位为GiB。扩容的大小必须大于原有云硬盘容量且小于云硬盘最大容量。 云硬盘最大容量： - 数据盘：32768GiB   - 系统盘：1024GiB    |
   
 表4PrepaidParamForBatchResizeVolume 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| is_auto_pay | 否    | String | 功能说明：是否立即支付。该参数只有在云硬盘为包周期的情况下有意义。默认值为false 取值范围： - true：立即支付，从账户余额中自动扣费   - false：不立即支付，创建订单暂不支付    |
   
#### 响应参数
**状态码：202**
表5响应Body参数 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| job_id   | String | **参数解释** 任务ID，云硬盘为按需计费时返回该参数。 如果需要查询job的状态，请参考[查询job的状态](https://support.huaweicloud.com/api-evs/evs_04_0054.html)。 **取值范围** 不涉及。       |
| order_id | String | **参数解释** 订单ID，云硬盘为包周期计费时返回该参数。 如果您需要支付订单，请参考："[支付包周期产品订单](https://support.huaweicloud.com/api-oce/api_order_00016.html)"。 **取值范围** 不涉及。 |
   
**状态码：400**
表6响应Body参数 
| 参数    | 参数类型                                         | 描述                                                                                                                                                                                                                        |
|:---|:---|:---|
| error | [Error] object | **参数解释** 出现错误时，返回的错误码。错误码和其对应的含义请参考[错误码说明](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。 **取值范围** 包含错误码和错误消息的对象 |
   
 表7Error 
| 参数      | 参数类型   | 描述                                                                                                                                                                                                           |
|:---|:---|:---|
| code    | String | **参数解释** 出现错误时，返回的错误码。 **取值范围** 错误码和其对应的含义请参考[错误码说明](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。 |
| message | String | **参数解释** 出现错误时，返回的错误消息。 **取值范围** 描述错误消息的字符串                                                                     |
   
#### 请求示例
```
/v5/{project_id}/volumes/batch-extend
{
  "volumes" : [ {
    "id" : "756889eb-85ca-4ea5-9f07-df6b99ba1b0f",
    "new_size" : 100
  }, {
    "id" : "36d9bbf7-8a93-4e47-8ff0-37b614aa28d6",
    "new_size" : 200
  } ],
  "bss_param" : {
    "is_auto_pay" : "true"
  }
}
```
#### 响应示例
**状态码：202**
Accepted
```
{
  "job_id" : "c6bdaf8975f9478e87365b1474e8774b"
}
```
**状态码：400**
Bad Request
```
{
  "error" : {
    "message" : "XXXX",
    "code" : "XXX"
  }
}
```
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 202 | Accepted    |
| 400 | Bad Request |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。
