
# 创建算子-CreateProcessor
#### 功能介绍
创建算子
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-octopus/Permission.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                           | 访问级别  | 资源类型（\*为必须）  | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | octopus:dataProcessors:create | Write | workspace \* | -   | -  | -      |
     
  
 
#### URI
POST /v1.0/{project_id}/data/processors
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释**： 项目ID，获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-octopus/octopus-10-0020.html)。 **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释**： 用户Token，通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值） **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及 |
| Content-Type | 是    | String | **参数解释**： 内容类型。填application/json **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                  |
   
表3请求Body参数 
| 参数            | 是否必选 | 参数类型                                                                                                   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| name          | 是    | String                                                                                                 | **参数解释**： 算子名称 **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| description   | 否    | String                                                                                                 | **参数解释**： 算子描述 **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| output_type   | 是    | String                                                                                                 | **参数解释**： 输出类型 **约束限制**： 不涉及 **取值范围**： - DATA_MARK：数据标记   - OPEN_DATA：数据回放   - DATA_SET：数据集   - REPLAY_SIM：回放仿真   - PLOT_DATA：数据图表    **默认取值**： 不涉及 |
| visibility    | 是    | String                                                                                                 | **参数解释**： 可见范围 **约束限制**： 不涉及 **取值范围**： - PRIVATE：仅创建者可见   - PUBLIC：同一个projectId下的用户可见    **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| image_repo_id | 是    | Integer                                                                                                | **参数解释**： 镜像仓库ID，通过"获取镜像仓库列表"接口获取 **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| image_version | 是    | Integer                                                                                                | **参数解释**： 镜像仓库版本号，通过"获取镜像仓库版本列表"接口获取 **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| config        | 是    | [DataProcessorConfigRequest] object | **参数解释**： 算子配置 **约束限制**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| workspace_id  | 是    | String                                                                                                 | **参数解释**： 工作空间ID **约束限制**： 不涉及 **取值范围**： 不涉及 **默认取值**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
 表4DataProcessorConfigRequest 
| 参数      | 是否必选 | 参数类型   | 描述                                                                                                                                                                           |
|:---|:---|:---|:---|
| command | 是    | String | **参数解释**： 启动命令 **取值范围**： 不涉及 |
   
#### 响应参数
**状态码：201**
表5响应Body参数 
| 参数        | 参数类型                                                                                              | 描述                                                               |
|:---|:---|:---|
| payload   | [payloadWithSingleNumber] object | **参数解释**： 实际返回信息 |
| meta_info | [RespMetaInfo] object                       | **参数解释**： 元数据    |
   
 表6payloadWithSingleNumber 
| 参数   | 参数类型 | 描述                                                                                                                                                                              |
|:---|:---|:---|
| item | Long | **参数解释**： 创建的资源ID **取值范围**： 不涉及 |
   
 表7RespMetaInfo 
| 参数           | 参数类型   | 描述                                                                                                                                                                                              |
|:---|:---|:---|
| current_time | String | **参数解释**： 请求时间，UTC时间格式，时间为UTC标准时间 **取值范围**： 不涉及 |
   
#### 请求示例
创建算子
```
POST https://{endpoint}/v1.0/{project_id}/data/processors
{
  "name" : "processor",
  "description" : "this is description",
  "output_type" : "DATA_MARK",
  "visibility" : "PUBLIC",
  "image_repo_id" : 1,
  "image_version" : 1,
  "config" : {
    "command" : "this is command"
  }
}
```
#### 响应示例
**状态码：201**
创建成功，返回算子id
```
{
  "meta_info" : {
    "current_time" : "2022-01-01T08:08:29Z"
  },
  "payload" : {
    "item" : 10
  }
}
```
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 201 | 创建成功，返回算子id |
| 400 | 请求参数错误      |
| 403 | 权限校验失败      |
| 409 | 已存在同名算子     |
| 500 | 系统内部错误      |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-octopus/ErrorCode.html)。
