1. 接口描述
接口请求域名: cbs.tencentcloudapi.com 。
本接口(CreateDisks)用于创建云硬盘。
- 预付费云盘的购买会预先扣除本次云盘购买所需金额,在调用本接口前请确保账户余额充足。
- 本接口支持传入数据盘快照来创建云盘,实现将快照数据复制到新购云盘上。
- 本接口为异步接口,当创建请求下发成功后会返回一个新建的云盘ID列表,此时云盘的创建并未立即完成。可以通过调用DescribeDisks接口根据DiskId查询对应云盘,如果能查到云盘,且状态为'UNATTACHED'或'ATTACHED',则表示创建成功。
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateDisks。 |
Version | 是 | String | 公共参数,本接口取值:2017-03-12。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
Placement | 是 | Placement | 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目。若不指定项目,将在默认项目下进行创建。 |
DiskChargeType | 是 | String | 云硬盘计费类型。 各类型价格请参考云硬盘价格总览。 示例值:PREPAID |
DiskType | 是 | String | 硬盘介质类型。取值范围: 示例值:CLOUD_HSSD |
DiskName | 否 | String | 云盘显示名称。不传则默认为“未命名”。最大长度不能超60个字节。 |
Tags.N | 否 | Array of Tag | 云盘绑定的标签。 |
SnapshotId | 否 | String | 快照ID,如果传入则根据此快照创建云硬盘,快照类型必须为数据盘快照,可通过DescribeSnapshots接口查询快照,见输出参数DiskUsage解释。 |
DiskCount | 否 | Integer | 创建云硬盘数量,不传则默认为1。单次请求最多可创建的云盘数有限制,具体参见云硬盘使用限制。 示例值:1 |
ThroughputPerformance | 否 | Integer | 可选参数。使用此参数可给云硬盘购买额外的性能。 当前仅支持极速型云盘(CLOUD_TSSD)和增强型SSD云硬盘(CLOUD_HSSD) 示例值:100 |
DiskSize | 否 | Integer | 云硬盘大小,单位为GB。SnapshotId 则可不传DiskSize ,此时新建云盘的大小为快照大小SnapshotId 同时传入DiskSize ,则云盘大小必须大于或等于快照大小示例值:500 |
Shareable | 否 | Boolean | 可选参数,默认为False。传入True时,云盘将创建为共享型云盘。 |
ClientToken | 否 | String | 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。 |
Encrypt | 否 | String | 传入该参数用于创建加密云盘,取值固定为ENCRYPT。 |
DiskChargePrepaid | 否 | DiskChargePrepaid | 预付费模式,即包年包月相关参数设置。通过该参数指定包年包月云盘的购买时长、是否设置自动续费等属性。 创建预付费云盘该参数必传,创建按小时后付费云盘无需传该参数。 |
DeleteSnapshot | 否 | Integer | 销毁云盘时删除关联的非永久保留快照。0 表示非永久快照不随云盘销毁而销毁,1表示非永久快照随云盘销毁而销毁,默认取0。快照是否永久保留可以通过DescribeSnapshots接口返回的快照详情的IsPermanent字段来判断,true表示永久快照,false表示非永久快照。 示例值:0 |
AutoMountConfiguration | 否 | AutoMountConfiguration | 创建云盘时指定自动挂载并初始化该数据盘。 |
DiskBackupQuota | 否 | Integer | 指定云硬盘备份点配额。 示例值:0 |
BurstPerformance | 否 | Boolean | 创建云盘时是否开启性能突发 示例值:True |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
DiskIdSet | Array of String | 创建的云硬盘ID列表。 注意:此字段可能返回 null,表示取不到有效值。 示例值:["disk-lzrg2pwi"] |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 使用基本参数购买
新购云盘具体配置如下:云盘所在位置为广州二区,云盘大小50GB,云盘类型为普通云盘,所属项目ID为0,付费模式为预付费,购买时长1个月,通知过期且自动续费。
输入示例
POST / HTTP/1.1
Host: cbs.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateDisks
<公共请求参数>
{
"Placement": {
"ProjectId": "0",
"Zone": "ap-guangzhou-2"
},
"DiskChargeType": "PREPAID",
"DiskCount": "1",
"DiskType": "CLOUD_HSSD",
"ThroughputPerformance": "100",
"DiskSize": "500",
"DiskChargePrepaid": {
"RenewFlag": "NOTIFY_AND_AUTO_RENEW",
"Period": "1"
}
}
输出示例
{
"Response": {
"DiskIdSet": [
"disk-lzrg2pwi"
],
"RequestId": "6a57da9a-2049-7182-2de3-5a1f8014ccfd"
}
}
示例2 根据快照新建云硬盘
传入快照创建云硬盘,未传DiskSize参数,此时新购云盘的大小为快照大小,新购云盘复制了快照数据。
输入示例
POST / HTTP/1.1
Host: cbs.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateDisks
<公共请求参数>
{
"Placement": {
"ProjectId": "0",
"Zone": "ap-guangzhou-2"
},
"DiskChargeType": "PREPAID",
"DiskCount": "1",
"DiskType": "CLOUD_BASIC",
"DiskChargePrepaid": {
"RenewFlag": "NOTIFY_AND_AUTO_RENEW",
"Period": "1"
},
"SnapshotId": "snap-iepc4w3h"
}
输出示例
{
"Response": {
"DiskIdSet": [
"disk-6rz0ilvu"
],
"RequestId": "5e93a212-ca01-0fdc-eedd-5a1fce5e83e6"
}
}
示例3 创建按小时后付费云盘
在广州三区创建一块云硬盘,云盘类型为高性能云硬盘,大小100GB,付费类型为按小时后付费。
输入示例
POST / HTTP/1.1
Host: cbs.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateDisks
<公共请求参数>
{
"DiskName": "postPayDisk",
"Placement": {
"ProjectId": "0",
"Zone": "ap-guangzhou-3"
},
"DiskChargeType": "POSTPAID_BY_HOUR",
"DiskCount": "1",
"DiskType": "CLOUD_PREMIUM",
"DiskSize": "100"
}
输出示例
{
"Response": {
"DiskIdSet": [
"disk-ecjc4cpw"
],
"RequestId": "fe2274fa-eaec-4009-807b-6ffc00963fec"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
InternalError.ComponentError | 依赖组件请求失败,请联系客服人员解决。 |
InvalidAccount.InsufficientBalance | 账户余额不足。 |
InvalidInstanceId.NotFound | 输入实例的InstanceId 不存在。 |
InvalidParameter.DiskConfigNotSupported | 当前地域不支持当前配置的云盘。 |
InvalidParameter.ProjectIdNotExist | 项目ID不存在。 |
InvalidParameterValue | 参数取值错误。 |
InvalidParameterValue.LimitExceeded | 参数值数量超过限制。 |
InvalidSnapshotId.NotFound | 输入的SnapshotId 不存在。 |
LimitExceeded.InstanceAttachedDisk | 实例挂载云盘数量超过限制。 |
MissingParameter | 缺少参数错误。 |
ResourceBusy | 资源繁忙,请稍后重试。 |
ResourceInsufficient | 资源不足。 |
TradeDealConflict | 订单冲突。 |
UnauthorizedOperation | 未授权操作。 |
UnauthorizedOperation.NotCertification | 账号没有实名认证,支付失败。 |
UnauthorizedOperation.NotHavePaymentRight | 没有支付权限。 |
UnauthorizedOperation.RoleNotExists | 授权角色不存在。 |