
# 外部第三方集成商创建IDE实例 - CreateInstanceBy3rd
#### 功能介绍
外部第三方集成商创建IDE实例的过程与普通用户创建IDE实例类似，需要确保创建IDE实例所需的权限和API访问权限。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CloudIDE/doc?api=CreateInstanceBy3rd)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-cloudide/cloudide_03_0027.html)。
| 授权项                               | 访问级别                  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| CodeArtsIDEOnline:instance:create | Permission_management | -           | -   | -  | -      |
   
#### URI
POST /v2/instances
表1Query参数 
| 参数             | 是否必选 | 参数类型   | 描述                                                                       |
|:---|:---|:---|:---|
| instance_label | 否    | String | **参数解释：** 实例标签。 **约束限制：** 不涉及。 **取值范围：** 长度为0\~255。 **默认取值：** classroom。 |
#### 请求参数
表2请求Header参数 
| 参数               | 是否必选 | 参数类型   | 描述                                                                       |
|:---|:---|:---|:---|
| X-Auth-Token     | 是    | String | **参数解释：** 用户Token。 **约束限制：** 不涉及。 **取值范围：** 长度为1\~100000。 **默认取值：** 不涉及。 |
| X-Sdk-Date       | 是    | String | **参数解释：** 请求发起时间。 **约束限制：** 不涉及。 **取值范围：** 长度为1\~100。 **默认取值：** 不涉及。     |
| host             | 是    | String | **参数解释：** 请求host地址。 **约束限制：** 不涉及。 **取值范围：** 长度为1\~100。 **默认取值：** 不涉及。   |
| x-security-token | 是    | String | **参数解释：** IAM 5.0鉴权token。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。   |
| Authorization    | 是    | String | **参数解释：** AK/SK签名。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。          |
   
表3请求Body参数 
| 参数                      | 是否必选 | 参数类型                                                                                         | 描述                                                                                                                                       |
|:---|:---|:---|:---|
| arch                    | 否    | String                                                                                       | **参数解释：** CPU架构。 **取值范围：** - x86：x86架构。 - arm：arm架构。                                                                                     |
| cpu_memory              | 是    | String                                                                                       | **参数解释：** cpu规格。 **取值范围：** - arm架构：支持4U8G。 - x86架构：支持1U1G、2U4G、2U8G。                                                                     |
| description             | 否    | String                                                                                       | **参数解释：** 实例描述。 **取值范围：** 长度不超过100个字符。                                                                                                   |
| instance_name           | 是    | String                                                                                       | **参数解释：** 实例名。 **取值范围：** 输入中文、数字、字母、下划线、点、破折号，长度介于3\~100之间。                                                                              |
| instance_user_domain_id | 否    | String                                                                                       | **参数解释：** 租户id（对应华为云账号的domainId）。 **取值范围：** 满足正则表达式：\^\[a-zA-Z0-9\]\[-_. a-zA-Z0-9\]{1,253}$                                             |
| instance_user_id        | 否    | String                                                                                       | **参数解释：** 用户ID。 **取值范围：** 满足正则表达式：\^\[a-zA-Z0-9\]\[-_. a-zA-Z0-9\]{1,253}$                                                               |
| is_temporary            | 否    | Boolean                                                                                      | **参数解释：** 是否页面显示（以标签配置为准）。 **取值范围：** 不涉及                                                                                                 |
| plugins                 | 否    | Array of [Plugin] objects | **参数解释：** 插件列表。 **取值范围：** 不涉及                                                                                                            |
| pvc_quantity            | 是    | String                                                                                       | **参数解释：** PVC规格。 **取值范围：** - 5GB - 10GB - 20GB                                                                                           |
| refresh_time            | 否    | String                                                                                       | **参数解释：** 自动休眠时长。实例无操作超过自动休眠时长后，将会被暂停（已保存的数据不会被删除）。 **取值范围：** - arm架构：取值为30，60，单位为分钟。 - x86架构：取值为30，60，240，1440和-1，单位为分钟。其中-1表示实例不会自动停止。 |
| stack_id                | 是    | String                                                                                       | **参数解释：** 技术栈ID，通过技术栈管理ListStacks接口获取。 **取值范围：** 满足正则表达式：\^\[a-zA-Z0-9\]\[-_.a-zA-Z0-9\]{0,126}\[a-zA-Z0-9\]$                            |
   
 表4Plugin 
| 参数        | 是否必选 | 参数类型   | 描述                                   |
|:---|:---|:---|:---|
| attribute | 否    | String | **参数解释：** 插件属性。 **取值范围：** 长度为0\~255。 |
| name      | 否    | String | **参数解释：** 插件名称。 **取值范围：** 长度为0\~255。 |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数     | 参数类型   | 描述                                                                      |
|:---|:---|:---|
| result | Object | **参数解释：** 参数返回值。 **取值范围：** 不涉及                                          |
| status | String | **参数解释：** 请求响应的状态，表明请求是否成功。 **取值范围：** - success：请求响应成功。 - error：请求响应失败。 |
   
**状态码：403**
表6响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                             |
|:---|:---|:---|
| error_msg  | String | **参数解释：** 错误描述信息。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~255。 |
| error_code | String | **参数解释：** 错误码。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~100。    |
   
**状态码：404**
表7响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                             |
|:---|:---|:---|
| error_msg  | String | **参数解释：** 错误描述信息。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~255。 |
| error_code | String | **参数解释：** 错误码。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~100。    |
   
**状态码：406**
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                             |
|:---|:---|:---|
| error_msg  | String | **参数解释：** 错误描述信息。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~255。 |
| error_code | String | **参数解释：** 错误码。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~100。    |
   
**状态码：500**
表9响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                             |
|:---|:---|:---|
| error_msg  | String | **参数解释：** 错误描述信息。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~255。 |
| error_code | String | **参数解释：** 错误码。详情请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。 **取值范围：** 长度为0\~100。    |
   
#### 请求示例
外部第三方集成商创建IDE实例
```
POST https://{endpoint}/v2/instances
{
  "instance_name" : "testjava",
  "stack_id" : "java",
  "description" : "",
  "cpu_memory" : "2U4G",
  "pvc_quantity" : "5GB",
  "refresh_time" : "30",
  "is_temporary" : false,
  "instance_user_id" : "test",
  "instance_user_domain_id" : "test"
}
```
#### 响应示例
**状态码：200**
OK
```
{
  "result" : {
    "link" : "https://*****/cloudide/loading?instanceId=mpdrao",
    "arch" : "x86",
    "id" : "mpdrao",
    "private" : false
  },
  "status" : "success"
}
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 200 | OK                    |
| 403 | Forbidden             |
| 404 | Not Found             |
| 406 | Not Acceptable        |
| 500 | Internal Server Error |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-cloudide/ErrorCode.html)。
