更新时间:2025-07-08 GMT+08:00
分享

创建流程

功能介绍

创建流程。

URI

POST /v1/{project_id}/eihealth-projects/{eihealth_project_id}/workflows

表1 路径参数

参数

是否必选

参数类型

描述

eihealth_project_id

String

参数解释

平台空间ID,您可以在平台单击所需的空间名称,进入空间设置页面查看。

约束限制

不涉及

取值范围

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值

不涉及

project_id

String

参数解释

项目ID,您可以从获取项目ID中获取。

约束限制

不涉及

取值范围

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释

用户Token。

Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,获取Token接口响应消息头中X-Subject-Token的值即为Token。

约束限制

不涉及

取值范围

长度为[1-32768]个字符。

默认取值

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

参数解释

流程名称。

约束限制

更新流程时,流程名称不支持修改。

取值范围

取值范围[1,56],允许大小写字母、数字、以及特殊字符中划线(-)。

默认取值

不涉及

version

String

参数解释

流程版本。

约束限制

更新流程时,流程版本不支持修改。

取值范围

取值范围[1,24],以小写字母或数字或大写字母开头,允许出现中划线,必须以小写字母或数字或大写字母结尾。

默认取值

不涉及

summary

String

参数解释

流程简述。

约束限制

不涉及

取值范围

取值范围[0,128]。

默认取值

不涉及

description

String

参数解释

流程描述。

约束限制

不涉及

取值范围

取值范围[0,65535],后续支持markdown文本。

默认取值

不涉及

labels

Array of strings

参数解释

流程标签。

约束限制

取值范围[0,5],单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。

取值范围

不涉及

默认取值

不涉及

timeout

Integer

参数解释

流程超时时间。

约束限制

不涉及

取值范围

取值范围[1,144000],单位分钟,默认1440。

默认取值

不涉及

output_dir

String

参数解释

流程的当前工作目录。

约束限制

不涉及

取值范围

默认为根目录,用户可显式指定;输出路径必须以斜杠(/)开头且不能以斜杠(/)结尾,不能包含两个以上相邻的斜杠(/),不能包含以下特殊字符:\ : ; * ? < " > | 。其中单个文件夹名称不能以中划线(-)开头,不能以英文句号(.)或斜杠(/)或空格开头或结尾。

默认取值

不涉及

tasks

Array of TaskDto objects

参数解释

流程中子任务的描述信息。

约束限制

子任务数量取值范围:[0,64]。

取值范围

不涉及

默认取值

不涉及

表4 TaskDto

参数

是否必选

参数类型

描述

task_name

String

参数解释

子任务实际名称。

约束限制

不涉及

取值范围

取值范围[1,32],只能以大小写字母开头,由大小写字母、数字、中划线(-)、下划线(_)组成,以大小写字符或数字结尾。

默认取值

不涉及

app_id

String

参数解释

应用ID。

约束限制

不涉及

取值范围

取值范围[1,135],正则限制不能有中文;支持如下两种格式。特殊ID,采用{app_name}::{app_version}::{src_project_name}格式,用于手动创建场景;其他场景,app_id为系统分配的唯一标识。

默认取值

不涉及

display_name

String

参数解释

流程的子任务展示名称。

约束限制

不涉及

取值范围

取值范围[0,64]。

默认取值

不涉及

output_dir

String

参数解释

子任务的输出存放路径。

约束限制

不涉及

取值范围

长度[0,128]。

默认取值

不涉及

resources

TaskResourceDto object

参数解释

应用申请资源。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

location

VertexLocationDto object

参数解释

子任务的画布坐标。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

inputs

Array of TaskParameterDto objects

参数解释

任务的输入参数信息。

约束限制

最多支持128个参数。

取值范围

不涉及

默认取值

不涉及

outputs

Array of TaskParameterDto objects

参数解释

任务的输出参数信息。

约束限制

最多支持128个参数。

取值范围

不涉及

默认取值

不涉及

表5 TaskResourceDto

参数

是否必选

参数类型

描述

cpu

String

参数解释

cpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

cpu_type

String

参数解释

cpu架构类型。

约束限制

不涉及

取值范围

取值范围,支持X86|ARM。

默认取值

X86。

memory

String

参数解释

内存申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu_type

String

参数解释

gpu架构类型。

约束限制

不涉及

取值范围

gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu

String

参数解释

gpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

表6 VertexLocationDto

参数

是否必选

参数类型

描述

x

Double

参数解释

子任务的画布横坐标。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

y

Double

参数解释

子任务的画布纵坐标。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表7 TaskParameterDto

参数

是否必选

参数类型

描述

name

String

参数解释

子任务的参数名称。

约束限制

不涉及

取值范围

长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。

默认取值

不涉及

source

String

参数解释

子任务的参数类型。

约束限制

不涉及

取值范围

  • MANUAL:手动填写参数。

  • DATABASE:数据库来源参数。

默认取值

MANUAL

values

Array of strings

参数解释

子任务的参数数值。

约束限制

最多支持设置128个参数,每个参数长度取值范围[0,2048]。

取值范围

不涉及

默认取值

不涉及

响应参数

状态码:201

表8 响应Body参数

参数

参数类型

描述

id

String

参数解释

流程ID。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

请求示例

创建流程,流程的名称为demo-workflow,版本为1.0.0。

https://{endpoint}/v1/{project_id}/eihealth-projects/{eihealth_project_id}/workflows

{
  "name" : "demo-workflow",
  "version" : "1.0.0",
  "summary" : "summary",
  "description" : "description",
  "labels" : [ "labelA", "labelB" ],
  "timeout" : 1440,
  "tasks" : [ {
    "task_name" : "app1-1",
    "app_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
    "display_name" : "步骤1",
    "output_dir" : "/task",
    "resources" : {
      "cpu_type" : "X86",
      "cpu" : "1C",
      "memory" : "1G",
      "gpu_type" : "GPU",
      "gpu" : 0
    },
    "location" : {
      "x" : 100,
      "y" : 100
    },
    "inputs" : [ {
      "name" : "dir-parameter",
      "values" : [ "test-project:/300M_NA12878_clean_1.fastq" ]
    } ],
    "outputs" : [ {
      "name" : "dir-parameter",
      "values" : [ "test-project:/output-dir/" ]
    } ]
  } ]
}

响应示例

状态码:201

CREATED

{
  "id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1"
}

状态码

状态码

描述

201

CREATED

错误码

请参见错误码

相关文档