
# 创建CPI作业
#### 功能介绍
创建CPI作业。
#### URI
POST /v1/{project_id}/eihealth-projects/{eihealth_project_id}/drug-jobs/cpi
表1路径参数 
| 参数                  | 是否必选 | 参数类型   | 描述                                                                                                        |
|:---|:---|:---|:---|
| project_id          | 是    | String | 项目ID，您可以从获取项目ID中获取。 最小长度：**1** 最大长度：**128** |
| eihealth_project_id | 是    | String | 平台项目ID。 最小长度：**1** 最大长度：**128**            |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                          |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。Token认证就是在调用API的时候将Token加到请求消息头，从而通过身份认证，获得操作API的权限，获取Token接口响应消息头中X-Subject-Token的值即为Token。 最小长度：**1** 最大长度：**32768** |
   
表3请求Body参数 
| 参数         | 是否必选 | 参数类型                                                                    | 描述                                                      |
|:---|:---|:---|:---|
| basic_info | 是    | [CreateDrugJobBasicInfo] object       | 创建药物作业基本信息。                                             |
| receptors  | 是    | Array of [CpiReceptor] objects       | 受体文件列表。 数组长度：**1 - 100** |
| ligands    | 是    | Array of [MoleculeFileDto] objects | 小分子。 数组长度：**1 - 1**        |
   
 表4CreateDrugJobBasicInfo 
| 参数                | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| name              | 是    | String           | 作业的名称，取值范围：\[5,64\]，允许大小写字母、数字、空格、下划线(_)和中划线(-),只能以数字或字母开头。 最小长度：**5** 最大长度：**64**                                                 |
| labels            | 否    | Array of strings | 标签，取值范围\[0,5\]，单个标签最大长度32字符，支持中文、字母、数字、空格、下划线和中划线，且不能以空格开头或者结尾。 最小长度：**1** 最大长度：**32** 数组长度：**0 - 5** |
| upstream_job_info | 否    | String           | 上游作业信息。 最小长度：**1** 最大长度：**10240**                                                                                                      |
   
 表5CpiReceptor 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| source      | 是    | String  | 受体的数据源：外部网络数据（如RCSB在线数据库）、用户私有数据中心、承载租户公共数据（含样例/公共库）。 枚举值： - **EXTRANET**  - **PRIVATE**  - **PUBLIC**  - **RAW**   |
| url         | 否    | String  | 文件URL，当数据源为外部网络数据时为https地址；用户私有数据中心为项目路径、公共数据场景为obs地址。 最小长度：**1** 最大长度：**2000**                                                                                                                                                                                                                                                                                                                              |
| format      | 否    | String  | 文件格式，仅支持FASTA，仅数据源为RAW时提供。 最小长度：**1** 最大长度：**6**                                                                                                                                                                                                                                                                                                                                                            |
| data        | 否    | String  | 文件原始数据，仅数据源为RAW时提供。 最小长度：**0** 最大长度：**10000000**                                                                                                                                                                                                                                                                                                                                                                |
| fasta_count | 否    | Integer | fasta文件中氨基酸数量。 最小值：**1** 最大值：**100**                                                                                                                                                                                                                                                                                                                                                                         |
   
 表6MoleculeFileDto 
| 参数    | 是否必选 | 参数类型                                                     | 描述                                                                                            |
|:---|:---|:---|:---|
| file  | 是    | [MoleculeFile] object | 分子文件。                                                                                         |
| count | 是    | Integer                                                  | 分子个数。 最小值：**1** 最大值：**1000000** |
   
 表7MoleculeFile 
| 参数     | 是否必选 | 参数类型   | 描述                                                                                                                      |
|:---|:---|:---|:---|
| source | 是    | String | 文件来源，支持用户私有数据中心、公共数据和源数据。 最小长度：**1** 最大长度：**8**            |
| url    | 否    | String | 文件URL，用户私有数据中心为项目路径、公共数据场景为obs地址。 最小长度：**1** 最大长度：**2000** |
| format | 否    | String | 文件格式，支持PDB、SDF、MOL2、SMI，仅数据源为RAW时提供。 最小长度：**1** 最大长度：**6** |
| data   | 否    | String | 文件原始数据，仅数据源为RAW时提供。 最小长度：**0** 最大长度：**10000000**         |
   
#### 响应参数
**状态码： 201**
表8响应Body参数 
| 参数                | 参数类型    | 描述      |
|:---|:---|:---|
| id                | String  | 作业id。   |
| limit_concurrency | Integer | 限制的并发量。 |
   
#### 请求示例
创建CPI作业，作业名称为demo-job， 受体文件为project:/dir/file， 配体文件为project:/dir/file。
```
https://{endpoint}/v1/{project_id}/eihealth-projects/{eihealth_project_id}/drug-jobs/cpi 
 
{ 
  "basic_info" : { 
    "name" : "demo-job", 
    "labels" : [ "labelA" ] 
  }, 
  "receptors" : [ { 
    "source" : "PRIVATE", 
    "url" : "project:/dir/file" 
  } ], 
  "ligands" : [ { 
    "file" : { 
      "source" : "PRIVATE", 
      "url" : "project:/dir/file" 
    }, 
    "count" : 10000 
  } ] 
}
```
#### 响应示例
**状态码： 201**
CREATED
- 创建CPI作业成功。
  ```
  { 
     "id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1" 
   }
  ```
  
- 创建CPI作业成功，当前运行作业数已达配额限制，此作业会等待。
  ```
  { 
     "id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1", 
     "limit_concurrency" : 50 
   }
  ```
  
 
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 201 | CREATED |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-eihealth/ErrorCode.html)。
