接口功能介绍
从快照创建云硬盘。
接口约束
1、云硬盘类型、加密属性、所在地域可用区快照源云硬盘保持一致;
2、创建磁盘容量不小于快照源盘容量;
3、只有快照状态为可用时才能从快照创建云硬盘;
4、单个快照支持创建云硬盘个数最多为128个;
接口是否审批
否
URI
POST /v4/ebs/new-from-snapshot-ebs-snap
Content-Type
application/json
路径参数
无
Query参数
无
请求头header参数
无
请求体body参数
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
snapshotID | 是 | String | 快照ID | 参考请求示例 | |
clientToken | 否 | String | 客户端存根,用于保证订单幂等性。要求单个云平台账户内唯一。 | 参考请求示例 | |
regionID | 是 | String | 资源池ID | 参考请求示例 | |
multiAttach | 否 | Boolean | 是否多云主机挂载,默认false。 | false | |
projectID | 否 | String | 企业项目ID,默认为”0” | 参考请求示例 | |
diskMode | 是 | String | 磁盘模式,VBD/ISCSI/FCSAN | 参考请求示例 | |
diskName | 是 | String | 磁盘命名,单账户单资源池下,命名需唯一。 | 参考请求示例 | |
diskSize | 是 | Integer | 磁盘大小,单位GB,容量不小于快照容量。 | 1024 | |
onDemand | 否 | Boolean | 是否按需下单。默认为true。 | true | |
cycleType | 否 | String | 包周期类型,year/month。onDemand为false时,必须指定。 | 参考请求示例 | |
cycleCount | 否 | Integer | 包周期数。onDemand为false时必须指定。周期最大长度不能超过5年。 | 2 |
响应参数
响应参数
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
statusCode | Integer | 返回状态码(800为成功,900为处理中/失败,详见errorCode)。 | 800 | |
message | String | 失败时的错误描述,一般为英文描述。 | 参考响应示例 | |
description | String | 失败时的错误描述,一般为中文描述。 | 参考响应示例 | |
returnObj | Object | 返回数据结构体 | returnObj | |
details | String | 可忽略 | 参考响应示例 | |
errorCode | String | 业务细分码,为product.module.code三段式码. 请参考错误码。 | 参考响应示例 | |
error | String | 业务细分码,为product.module.code三段式大驼峰码. 请参考错误码。 | 参考响应示例 | |
errorDetail | Object | 错误明细。一般情况下,会对订单侧(bss)的云硬盘订单业务相关的错误做明确的错误映射和提升,有唯一对应的errorCode。 其他订单侧(bss)的错误,以ebs.order.procFailed的errorCode统一映射返回,并在errorDetail中返回订单侧的详细错误信息。 | errorDetail |
表 returnObj
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
masterOrderID | String | 订单ID。调用方在拿到masterOrderID之后,在若干错误情况下,可以使用materOrderID进一步确认订单状态及资源状态。 | 参考响应示例 | |
masterOrderNO | String | 订单号 | 参考响应示例 | |
masterResourceID | String | 主资源ID。云硬盘场景下,无需关心。 | 参考响应示例 | |
masterResourceStatus | String | 主资源状态。只有主订单资源会返回。 | 参考响应示例 | |
regionID | String | 资源所属资源池ID | 参考响应示例 | |
resources | Array of Objects | 资源明细列表,参考表resources。 | resources |
表 resources
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
diskID | String | 云硬盘ID | 参考响应示例 | |
orderID | String | 无需关心 | 参考响应示例 | |
startTime | Integer | 启动时刻,epoch时戳,毫秒精度。 | 1660295761000 | |
createTime | Integer | 创建时刻,epoch时戳,毫秒精度。 | 1660295761000 | |
updateTime | Integer | 更新时刻,epoch时戳,毫秒精度。 | 1660295761000 | |
status | Integer | 资源状态,无需关心。 | 1660295761000 | |
isMaster | Boolean | 是否是主资源项 | true | |
itemValue | Integer | 资源规格,磁盘资源为磁盘大小GB。 | 1024 | |
diskName | String | 云硬盘名称 | 参考响应示例 | |
resourceType | String | 云硬盘资源类型EBS(只有一种) | 参考响应示例 | |
masterOrderID | String | 订单ID | 参考响应示例 | |
masterResourceID | String | 主资源ID | 参考响应示例 |
表 errorDetail
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
bssErrCode | 是 | String | bss错误明细码,包含于bss格式化JSON错误信息中 | 参考响应示例 | |
bssErrMsg | 是 | String | bss错误信息,包含于bss格式化JSON错误信息中 | 参考响应示例 | |
bssOrigErr | 是 | String | 无法明确解码bss错误信息时,原样透出的bss错误信息 | 参考响应示例 | |
bssErrPrefixHint | 是 | String | bss格式化JSON错误信息的前置提示信息 | 参考响应示例 |
枚举参数
无
请求头header示例
{
}
请求url示例
无
请求体body示例
{
"snapshotID":"3f868846-f47f-4619-a5b4-a02e9714f744",
"clientToken":"cbe3840c-bda4-4102-b68f-98c9d7190d69",
"regionID":"41f64827f25f468595ffa3a5deb5d15d",
"multiAttach":false,
"projectID":"0",
"diskMode":"VBD",
"diskName":"mydisk-0001",
"diskSize":200,
"onDemand":false,
"cycleType":"month",
"cycleCount":2
}
响应示例
下单后会先显示订单处理中:
{
"httpstatus": 200,
"httpresult": {
"description": "订单处理中,可使用订单ID查询或使用原clientToken重试下单",
"returnObj": {
"masterOrderNO": "20220812171600203284",
"regionID": "41f64827f25f468595ffa3a5deb5d15d",
"masterOrderID": "beacf51a20dd4889bfc99877d89e03e2"
},
"details": "",
"errorCode": "ebs.order.inProgress",
"error": "Ebs.Order.InProgress",
"message": "order in progress",
"statusCode": 900
}
}
已经成功下单后,使用重复的clientToken时,返回订单信息:
{
"returnObj": {
"masterResourceStatus": "started",
"regionID": "41f64827f25f468595ffa3a5deb5d15d",
"masterOrderID":"beacf51a20dd4889bfc99877d89e03e2",
"masterResourceID":"2ec9776a9ad94343b4ece701ce18e688",
"masterOrderNO": "20220812171600203284",
"resources": [
{
"orderID": "a71317c1efee48c2b44de52eb9a2d4a7",
"status": 2,
"isMaster": true,
"diskID": "61f69121-4036-4f31-a148-457eb8a45fee",
"updateTime": 1660295799000,
"itemValue": "10",
"startTime": 1660295799000,
"createTime": 1660295761000,
"masterOrderID": "beacf51a20dd4889bfc99877d89e03e2",
"masterResourceID":"2ec9776a9ad94343b4ece701ce18e688",
"diskName":"mydisk-0001",
"resourceType":"EBS"
}
]
},
"details": "",
"message": "success",
"description": "成功",
"statusCode": 800
}
状态码
请参考状态码
错误码
请参考错误码