
# 创建桌面池 - CreateDesktopPool
#### 功能介绍
创建桌面池，可将此桌面池分配给用户、用户组，用户登录时会绑定其中一个桌面。
注:需通过开通委托功能接口先对云服务进行授权才可以使用该功能
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/Workspace/doc?api=CreateDesktopPool)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-workspace/workspace_09_0128.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                           | 访问级别  | 资源类型（\*为必须）    | 条件键                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 别名 | 依赖的授权项                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  |:---|:---|:---|:---|:---|:---|
  | workspace:desktopPools:create | Write | desktopPool \* | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | -  | - ims:images:get  - ims:images:list  - ims:images:share  - ims:images:updateMemberStatus  - ims:images:deleteMember  - ims:images:addMember  - vpc:networks:get  - vpc:ports:create  - vpc:ports:delete  - vpc:ports:get  - vpc:ports:update  - vpc:securityGroups:get  - vpc:subnets:get  - vpc:vpcs:get  - dss:pools:list   |
  | workspace:desktopPools:create | Write | user           | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | -  | - ims:images:get  - ims:images:list  - ims:images:share  - ims:images:updateMemberStatus  - ims:images:deleteMember  - ims:images:addMember  - vpc:networks:get  - vpc:ports:create  - vpc:ports:delete  - vpc:ports:get  - vpc:ports:update  - vpc:securityGroups:get  - vpc:subnets:get  - vpc:vpcs:get  - dss:pools:list   |
  | workspace:desktopPools:create | Write | userGroup      | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | -  | - ims:images:get  - ims:images:list  - ims:images:share  - ims:images:updateMemberStatus  - ims:images:deleteMember  - ims:images:addMember  - vpc:networks:get  - vpc:ports:create  - vpc:ports:delete  - vpc:ports:get  - vpc:ports:update  - vpc:securityGroups:get  - vpc:subnets:get  - vpc:vpcs:get  - dss:pools:list   |
  | workspace:desktopPools:create | Write | -              | - g:RequestTag/\<tag-key\>   - g:TagKeys   - g:EnterpriseProjectId    | -  | - ims:images:get  - ims:images:list  - ims:images:share  - ims:images:updateMemberStatus  - ims:images:deleteMember  - ims:images:addMember  - vpc:networks:get  - vpc:ports:create  - vpc:ports:delete  - vpc:ports:get  - vpc:ports:update  - vpc:securityGroups:get  - vpc:subnets:get  - vpc:vpcs:get  - dss:pools:list   |
     
  
 
#### URI
POST /v2/{project_id}/desktop-pools
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述    |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。 |
   
#### 请求参数
表2请求Body参数 
| 参数                            | 是否必选 | 参数类型                                                                                    | 描述                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| name                          | 是    | String                                                                                  | 桌面池名称，桌面池名称必须保证唯一。桌面名称只允许输入中文、大写字母、小写字母、数字、中划线，长度范围为1\~64。                                                                                                                                                                                                                                                                                                                                      |
| type                          | 是    | String                                                                                  | 桌面池类型，DYNAMIC：动态池，STATIC：静态池。                                                                                                                                                                                                                                                                                                                                                                   |
| size                          | 是    | Integer                                                                                 | 桌面池大小：当前桌面池要创建多少台桌面。                                                                                                                                                                                                                                                                                                                                                                            |
| description                   | 否    | String                                                                                  | 桌面池描述。                                                                                                                                                                                                                                                                                                                                                                                          |
| availability_zone             | 否    | String                                                                                  | 可用分区。将桌面创建到指定的可用分区。                                                                                                                                                                                                                                                                                                                                                                             |
| product_id                    | 是    | String                                                                                  | 套餐ID。                                                                                                                                                                                                                                                                                                                                                                                           |
| flavor_id                     | 否    | String                                                                                  | 产品规格ID。                                                                                                                                                                                                                                                                                                                                                                                         |
| image_type                    | 是    | String                                                                                  | 镜像类型。默认值为private。 - private：私有镜像。   - gold：公共镜像。    |
| image_id                      | 是    | String                                                                                  | 镜像ID，用于私有镜像创建桌面场景，配合product_id使用。                                                                                                                                                                                                                                                                                                                                                               |
| root_volume                   | 是    | [VolumeInfo] object                             | 系统盘。                                                                                                                                                                                                                                                                                                                                                                                            |
| data_volumes                  | 否    | Array of [VolumeInfo] objects                   | 数据盘列表。                                                                                                                                                                                                                                                                                                                                                                                          |
| vpc_id                        | 否    | String                                                                                  | 创建桌面时的VPC ID。                                                                                                                                                                                                                                                                                                                                                                                   |
| subnet_ids                    | 是    | Array of strings                                                                        | 创建桌面使用的子网ID。                                                                                                                                                                                                                                                                                                                                                                                    |
| security_groups               | 否    | Array of [SecurityGroupIdInfo] objects | 桌面使用的安全组，如果不指定则默认使用桌面代理中指定的安全组。                                                                                                                                                                                                                                                                                                                                                                 |
| authorized_objects            | 否    | Array of [AuthorizedObjects] objects     | 要授权的用户/用户组列表。                                                                                                                                                                                                                                                                                                                                                                                   |
| ou_name                       | 否    | String                                                                                  | OU名称，在对接AD时使用，需提前在AD中创建OU。                                                                                                                                                                                                                                                                                                                                                                      |
| tags                          | 否    | Array of [Tag] objects                                 | 标签列表。                                                                                                                                                                                                                                                                                                                                                                                           |
| enterprise_project_id         | 否    | String                                                                                  | 企业项目ID，默认"0。"                                                                                                                                                                                                                                                                                                                                                                                   |
| disconnected_retention_period | 否    | Integer                                                                                 | 动态池桌面断连多少分钟内，保留用户与桌面的绑定关系，超时后自动解绑。                                                                                                                                                                                                                                                                                                                                                              |
| enable_autoscale              | 否    | Boolean                                                                                 | 桌面池是否开启弹性伸缩类型，为false则表示不开启弹性伸缩，为true则表示开启弹性伸缩。                                                                                                                                                                                                                                                                                                                                                  |
| autoscale_policy              | 否    | [AutoscalePolicy] object                   | 弹性伸缩策略。                                                                                                                                                                                                                                                                                                                                                                                         |
| user_reset_policy             | 否    | [UserResetPolicy] object                   | 用户重置策略。                                                                                                                                                                                                                                                                                                                                                                                         |
| desktop_name_policy_id        | 否    | String                                                                                  | 策略id，用于指定生成桌面名称策略。                                                                                                                                                                                                                                                                                                                                                                              |
| domain                        | 否    | String                                                                                  | 桌面分配的域。                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表3VolumeInfo 
| 参数                 | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| id                 | 否    | String  | 批量操作磁盘的磁盘集合id。                                                                                                                                                                                                                                                                                                                                                                                         |
| type               | 是    | String  | 桌面数据盘对应的磁盘类型，需要与系统所提供的磁盘类型相匹配。 - SAS：高IO。   - SSD：超高IO。    |
| size               | 是    | Integer | 磁盘容量，单位GB。                                                                                                                                                                                                                                                                                                                                                                                             |
| iops               | 否    | Integer | iops，云硬盘每秒进行读写的操作次数。                                                                                                                                                                                                                                                                                                                                                                                   |
| throughput         | 否    | Integer | 吞吐量，云硬盘每秒成功传送的数据量，即读取和写入的数据量。                                                                                                                                                                                                                                                                                                                                                                          |
| resource_spec_code | 否    | String  | 规格。                                                                                                                                                                                                                                                                                                                                                                                                    |
| kms_id             | 否    | String  | kms密钥Id                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表4SecurityGroupIdInfo 
| 参数 | 是否必选 | 参数类型   | 描述     |
|:---|:---|:---|:---|
| id | 是    | String | 安全组ID。 |
   
 表5AuthorizedObjects 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| object_type | 是    | String | 绑定对象类型枚举。 - USER：用户   - USER_GROUP：用户组                                                                                                                                                                                                                                                                                                                                                                                                                  |
| object_id   | 是    | String | 用户/用户组id。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| object_name | 是    | String | 用户/用户组名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| domain      | 否    | String | 用户/用户组所属域名。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| user_group  | 是    | String | 桌面用户所属的用户权限组。 - sudo：Linux管理员组。   - default：Linux默认用户组。   - administrators：Windows管理员组。管理员拥有对该桌面的完全访问权，可以做任何需要的更改（禁用操作除外）。   - users：Windows标准用户组。标准用户可以使用大多数软件，并可以更改不影响其他用户的系统设置。    |
| created_at  | 否    | String | 创建时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   
 表6Tag 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                   |
|:---|:---|:---|:---|
| key   | 是    | String | 标签的键，不能为空，最大长度128个unicode字符。大小写字母，数字，可以包含中划线"-"，下划线"_"，不能包含以下字符"=","\*","\<","\>","\\",",","\|","/"。 |
| value | 否    | String | 标签的值，最大长度43个unicode字符。大小写字母，数字，可以包含中划线"-"，下划线"_"，不能包含以下字符"=","\*","\<","\>","\\",",","\|","/"。       |
   
 表7AutoscalePolicy 
| 参数                      | 是否必选 | 参数类型    | 描述                                             |
|:---|:---|:---|:---|
| autoscale_type          | 否    | String  | 弹性伸缩类型，ACCESS_CREATED：接入时创建，AUTO_CREATED：弹性伸缩。 |
| max_auto_created        | 否    | Integer | 最大自动创建桌面数。                                     |
| min_idle                | 否    | Integer | 预留空闲桌面数。                                       |
| once_auto_created       | 否    | Integer | 一次自动创建桌面的数量(已弃用)。                              |
| min_retention           | 否    | Integer | 最小桌面数。                                         |
| idle_retention_duration | 否    | Integer | 空闲桌面保留时长（分钟）。                                  |
| auto_isolation_enable   | 否    | Boolean | 自动故障隔离开关。                                      |
| auto_isolation_max_num  | 否    | Integer | 自动隔离桌面数量上限，默认上限1000。                           |
   
 表8UserResetPolicy 
| 参数                  | 是否必选 | 参数类型    | 描述                     |
|:---|:---|:---|:---|
| enable              | 否    | Boolean | 开关                     |
| reset_count_per_day | 否    | Integer | 用户每天自动重试次数,重置次数每天0点刷新。 |
   
#### 响应参数
**状态码：200**
表9响应Body参数 
| 参数     | 参数类型   | 描述          |
|:---|:---|:---|
| job_id | String | 创建云桌面总任务id。 |
   
**状态码：400**
表10响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：401**
表11响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：403**
表12响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：404**
表13响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
**状态码：500**
表14响应Body参数 
| 参数                            | 参数类型   | 描述                                                           |
|:---|:---|:---|
| error_code                    | String | 错误码，失败时返回。                                                   |
| error_msg                     | String | 错误描述。                                                        |
| error_detail                  | String | 错误详情。                                                        |
| encoded_authorization_message | String | 加密后的详细拒绝原因，用户可以自行调用STS服务的decode-authorization-message接口进行解密。 |
   
#### 请求示例
```
POST /v2/0bec5db98280d2d02fd6c00c2de791ce/desktop-pools
{
  "name" : "POOL01",
  "type" : "STATIC",
  "size" : 50,
  "image_type" : "gold",
  "image_id" : "a866298d-67db-44b0-a1f1-9d09bdddc20f",
  "root_volume" : {
    "type" : "SAS",
    "size" : 80
  },
  "availability_zone" : "az3.manage.x86",
  "subnet_ids" : [ "5dee0216-2260-47c2-9368-98a27d910e55" ],
  "product_id" : "workspace.c2.large.windows.2"
}
```
#### 响应示例
**状态码：200**
创建桌面池响应。
```
{
  "job_id" : "3979904c-7beb-4f34-835f-2fa989a5550a"
}
```
#### 状态码
| 状态码 | 描述                      |
|:---|:---|
| 200 | 创建桌面池响应。                |
| 400 | 由于包含语法错误，当前请求无法被服务器理解。  |
| 401 | 鉴权失败。                   |
| 403 | 没有操作权限。                 |
| 404 | 找不到资源。                  |
| 500 | 服务内部错误，具体返回错误码请参见错误码说明。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-workspace/ErrorCode.html)。
