查询Workflow工作流
功能介绍
查询Workflow工作流接口用于查看系统中特定的工作流定义。
该接口适用于以下场景:当用户需要查看和管理已定义的工作流时,可以通过此接口查询工作流的详细信息,包括名称、描述、步骤等。使用该接口的前提条件是用户具有查看权限。查询结果将根据用户提供的过滤条件返回。若用户无权限操作或输入参数不合法,接口将返回相应的错误信息。
接口约束
无
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
GET /v2/{project_id}/workflows/{workflow_id}
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
参数解释:用户项目ID。获取方法请参见获取项目ID和名称。 约束限制:1 - 64字符,字母、数字和中划线。 取值范围:不涉及。 默认取值:不涉及。 |
workflow_id |
是 |
String |
参数解释:工作流的ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
workspace_id |
否 |
String |
参数解释:工作空间ID。 约束限制:获取方法请参见查询工作空间列表。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 取值范围:不涉及。 默认取值:不涉及。 |
请求参数
无
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:Workflow工作流名称。 取值范围:不涉及。 |
workflow_id |
String |
参数解释:Workflow工作流ID。创建工作流时后台自动生成。 取值范围:不涉及。 |
created_at |
String |
参数解释:Workflow工作流的创建时间。 取值范围:不涉及。 |
description |
String |
参数解释:Workflow工作流的描述信息。 取值范围:不涉及。 |
steps |
Array of WorkflowStepResp objects |
参数解释:Workflow工作流包含的步骤定义。 |
user_name |
String |
参数解释:创建Workflow工作流的用户名。 取值范围:不涉及。 |
workspace_id |
String |
参数解释:工作空间ID。获取方法请参见查询工作空间列表。 取值范围:不涉及。 |
data_requirements |
Array of DataRequirementResp objects |
参数解释:Workflow需要的数据。 |
data |
Array of DataResp objects |
参数解释:Workflow包含的数据。 |
parameters |
Array of WorkflowParameterResp objects |
参数解释:Workflow包含的参数。 |
source_workflow_id |
String |
参数解释:从指定Workflow工作流进行复制。通过复制来创建Workflow时必填。 取值范围:不涉及。 |
gallery_subscription |
参数解释:来自市场订阅的Workflow。 |
|
latest_execution |
ExecutionBriefResp object |
参数解释:最后一次执行工作流的概要信息。 |
run_count |
Integer |
参数解释:工作流的已运行次数。 取值范围:不涉及。 |
param_ready |
Boolean |
参数解释:当前工作流的必选参数是否都已填完。 取值范围:
|
source |
String |
参数解释:工作流来源。 取值范围:可选值为:
|
storages |
Array of WorkflowStorageResp objects |
参数解释:Workflow包含的统一存储定义。 |
labels |
Array of strings |
参数解释:为Workflow工作流设置的标签。 |
assets |
Array of WorkflowAssetResp objects |
参数解释:工作流绑定的资产。 |
sub_graphs |
Array of WorkflowSubgraphResp objects |
参数解释:工作流包含的子图。 |
extend |
Map<String,Object> |
参数解释:计费工作流使用的拓展字段。 |
policy |
WorkflowPolicyResp object |
参数解释:工作流部分运行策略。 |
with_subscription |
Boolean |
参数解释:工作流SMN消息订阅开关。 取值范围:
|
smn_switch |
Boolean |
参数解释:SMN开关。 取值范围:
|
subscription_id |
String |
参数解释:SMN消息订阅ID。 取值范围:不涉及。 |
exeml_template_id |
String |
参数解释:自动学习模板ID。 取值范围:不涉及。 |
last_modified_at |
String |
参数解释:最近一次修改的时间。 取值范围:不涉及。 |
package |
WorkflowServicePackegeResp object |
参数解释:计费工作流订阅包信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:Workflow工作流节点的名称,在一个DAG中唯一。 取值范围:不涉及。 |
type |
String |
参数解释:节点的类型。 取值范围:枚举值如下:
|
inputs |
Array of JobInputResp objects |
参数解释:节点的输入项。 |
outputs |
Array of JobOutputResp objects |
参数解释:节点的输出项。 |
created_at |
String |
参数解释:节点的创建时间。 取值范围:不涉及。 |
title |
String |
参数解释:工作流节点标题。 取值范围:不涉及。 |
description |
String |
参数解释:节点的描述信息。 取值范围:不涉及。 |
properties |
Map<String,Object> |
参数解释:节点属性。 |
depend_steps |
Array of strings |
参数解释:运行依赖的前置节点。 |
conditions |
Array of StepConditionResp objects |
参数解释:节点执行条件。 |
if_then_steps |
Array of strings |
参数解释:条件节点分支。 |
else_then_steps |
Array of strings |
参数解释:条件节点另一分支。 |
policy |
WorkflowStepPolicyResp object |
参数解释:节点执行策略。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:输入数据的名称。 取值范围:不涉及。 |
type |
String |
参数解释:输入项类型。 取值范围:枚举值如下:
|
data |
Object |
参数解释:输入项数据。 |
value |
Object |
参数解释:输入项的值。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:输出数据的名称。 取值范围:不涉及。 |
type |
String |
参数解释:输出项类型。 取值范围:枚举值如下:
|
config |
Map<String,Object> |
参数解释:输出配置。 |
参数 |
参数类型 |
描述 |
---|---|---|
type |
String |
参数解释:判断类型,例如==(等于)、!=(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、in(包含)、or(或)。 取值范围:不涉及。 |
left |
Object |
参数解释:节点执行条件为true时的分支。 |
right |
Object |
参数解释:节点执行条件为false时的分支。 |
参数 |
参数类型 |
描述 |
---|---|---|
poll_interval_seconds |
String |
参数解释:节点执行间隔。 取值范围:不涉及。 |
max_execution_minutes |
String |
参数解释:最大执行时间。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:训练数据的名称。 取值范围:不涉及。 |
type |
String |
参数解释:数据来源类型。 取值范围:枚举值如下:
|
conditions |
Array of ConstraintResp objects |
参数解释:数据约束条件。 |
value |
Map<String,Object> |
参数解释:数据的值。 |
used_steps |
Array of strings |
参数解释:使用了这条数据的工作流节点。 |
delay |
Boolean |
参数解释:延时参数标记。 取值范围:
|
参数 |
参数类型 |
描述 |
---|---|---|
attribute |
String |
参数解释:条件属性,参数的某个字段值。 取值范围:不涉及。 |
operator |
String |
参数解释:操作。 取值范围:不涉及。 |
value |
Object |
参数解释:取值。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:训练数据的名称。 取值范围:不涉及。 |
type |
String |
参数解释:数据来源的类型,可选值为dataset、obs、swr、model、label_task、service、image。 取值范围:不涉及。 |
value |
Map<String,Object> |
参数解释:数据的值。 |
used_steps |
Array of strings |
参数解释:使用数据的节点。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:Workflow工作流配置参数的名称。 取值范围:不涉及。 |
type |
String |
参数解释:参数的类型。 取值范围:枚举值如下:
|
description |
String |
参数解释:Workflow工作流配置参数的描述。 取值范围:不涉及。 |
example |
Object |
参数解释:Workflow工作流配置参数的样例。 |
delay |
Boolean |
参数解释:是否为延迟输入的参数。 取值范围:
|
default |
Object |
参数解释:配置参数的默认值。 |
value |
Object |
参数解释:参数值。 |
enum |
Array of objects |
参数解释:Workflow工作流配置参数的枚举项。 |
used_steps |
Array of strings |
参数解释:使用这个参数的工作流节点。 |
format |
String |
参数解释:数据格式。 取值范围:不涉及。 |
constraint |
Map<String,Object> |
参数解释:限制条件。 |
参数 |
参数类型 |
描述 |
---|---|---|
content_id |
String |
参数解释:资产ID。 取值范围:不涉及。 |
version_id |
String |
参数解释:版本ID。 取值范围:不涉及。 |
expired_at |
String |
参数解释:超期时间。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
execution_id |
String |
参数解释:工作流执行ID,获取方法请参见查询工作流执行记录列表。。 取值范围:不涉及。 |
created_at |
String |
参数解释:工作流执行的创建时间。 取值范围:不涉及。 |
status |
String |
参数解释:工作流状态。 取值范围:不涉及。 |
running_steps |
Array of strings |
参数解释:运行的节点。 |
current_steps |
Array of strings |
参数解释:当前节点。 |
duration |
Long |
参数解释:运行时长。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:工作流存储的名称。 取值范围:不涉及。 |
type |
String |
参数解释:工作流存储的类型,当前只支持obs。 取值范围:不涉及。 |
path |
String |
参数解释:统一存储的根路径,当前只支持OBS路径。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:资产名称。 取值范围:不涉及。 |
type |
String |
参数解释:资产类型。 取值范围:枚举如下:
|
content_id |
String |
参数解释:资产ID,可在AI Gallery中获取。 取值范围:不涉及。 |
subscription_id |
String |
参数解释:订阅ID,可在AI Gallery中获取。 取值范围:不涉及。 |
expired_at |
String |
参数解释:超期时间。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:子图名称。 取值范围:不涉及。 |
steps |
Array of strings |
参数解释:子图step成员。 |
参数 |
参数类型 |
描述 |
---|---|---|
use_scene |
String |
参数解释:使用场景。 取值范围:不涉及。 |
scene_id |
String |
参数解释:场景ID。 取值范围:不涉及。 |
scenes |
Array of SceneResp objects |
参数解释:场景。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
参数解释:场景ID。 取值范围:不涉及。 |
name |
String |
参数解释:场景名称。 取值范围:不涉及。 |
steps |
Array of strings |
参数解释:节点列表。 |
参数 |
参数类型 |
描述 |
---|---|---|
package_id |
String |
参数解释:资源包的UUID。 取值范围:不涉及。 |
status |
String |
参数解释:资源包状态。 取值范围:不涉及。 |
pool_id |
String |
参数解释:资源池ID。 取值范围:不涉及。 |
service_id |
String |
参数解释:服务ID。 取值范围:不涉及。 |
workflow_id |
String |
参数解释:Workflow工作流ID。 取值范围:不涉及。 |
order |
WorkflowPoolOrderResp object |
参数解释:订阅信息。 |
consume_limit |
Long |
参数解释:订阅限制。 取值范围:不涉及。 |
current_consume |
Long |
参数解释:当前订阅。 取值范围:不涉及。 |
current_date |
String |
参数解释:当前时间。 取值范围:不涉及。 |
limit_enable |
Boolean |
参数解释:限制标记。 取值范围:
|
created_at |
String |
参数解释:创建时间。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
参数解释:订阅ID。 取值范围:不涉及。 |
sku |
SkuInfoResp object |
参数解释:订阅计费信息。 |
sku_count |
String |
参数解释:订阅计数。 取值范围:不涉及。 |
请求示例
GET https://{endpoint}/v2/{project_id}/workflows/{workflow_id}
响应示例
状态码:200
OK
{ "created_at" : "2022-09-09T11:28:29.639658+08:00", "workflow_id" : "6b596c75-fe1f-440b-be83-fe5e240133c4", "name" : "graph-test-has-condition-step", "description" : "", "user_name" : "zuoping", "workspace_id" : "0", "steps" : [ { "created_at" : "2022-09-09T11:28:29.6438+08:00", "name" : "condition_step_test", "title" : "condition_step_test", "description" : "", "type" : "condition", "conditions" : [ { "type" : "==", "left" : "$ref/parameters/is_true", "right" : true } ], "if_then_steps" : [ "training_job1" ], "else_then_steps" : [ "training_job2" ], "policy" : { } }, { "created_at" : "2022-09-09T11:28:29.646244+08:00", "name" : "training_job1", "title" : "labeling", "description" : "", "type" : "job", "inputs" : [ { "name" : "data_url", "type" : "obs", "data" : "$ref/data/a2ff296da618452daa8243399f06db8e" } ], "outputs" : [ { "name" : "train_url", "type" : "obs", "config" : { "obs_url" : "/test-lh/test-metrics/" } }, { "name" : "service-link", "type" : "service_content", "config" : { "config_file" : "$ref/parameters/service_config1" } } ], "properties" : { "algorithm" : { "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43", "parameters" : [ ] }, "kind" : "job", "metadata" : { "name" : "workflow-b0b9fa4c06254b2ebb0e48ba1f7a916c" }, "spec" : { "resource" : { "flavor_id" : "$ref/parameters/train_spec", "node_count" : 1, "policy" : "regular" } } }, "depend_steps" : [ "condition_step_test" ], "policy" : { } }, { "created_at" : "2022-09-09T11:28:29.648868+08:00", "name" : "training_job2", "title" : "labeling", "description" : "", "type" : "job", "inputs" : [ { "name" : "data_url", "type" : "obs", "data" : "$ref/data/f78e46676a454ccdacb9907f589f8d67" } ], "outputs" : [ { "name" : "train_url", "type" : "obs", "config" : { "obs_url" : "/test-lh/test-metrics/" } }, { "name" : "service-link", "type" : "service_content", "config" : { "config_file" : "$ref/parameters/service_config2" } } ], "properties" : { "algorithm" : { "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43", "parameters" : [ ] }, "kind" : "job", "metadata" : { "name" : "workflow-4a4317eb49ad4370bd087e6b726d84cf" }, "spec" : { "resource" : { "flavor_id" : "$ref/parameters/train_spec", "node_count" : 1, "policy" : "regular" } } }, "depend_steps" : [ "condition_step_test" ], "policy" : { } }, { "created_at" : "2022-09-09T11:28:29.649982+08:00", "name" : "training_job3", "title" : "labeling", "description" : "", "type" : "job", "inputs" : [ { "name" : "data_url", "type" : "obs", "data" : "$ref/data/dee65054c96b4bf3b7ac98c0709f9ae0" } ], "outputs" : [ { "name" : "train_url", "type" : "obs", "config" : { "obs_url" : "/test-lh/test-metrics/" } }, { "name" : "service-link", "type" : "service_content", "config" : { "config_file" : "$ref/parameters/service_config3" } } ], "properties" : { "algorithm" : { "id" : "21ef85a8-5e40-4618-95ee-aa48ec224b43", "parameters" : [ ] }, "kind" : "job", "metadata" : { "name" : "workflow-3039303b3ae14f3e9eed416ba6361b1f" }, "spec" : { "resource" : { "flavor_id" : "$ref/parameters/train_spec", "node_count" : 1, "policy" : "regular" } } }, "depend_steps" : [ "training_job1", "training_job2" ], "policy" : { } } ], "labels" : [ "subgraph" ], "data" : [ { "name" : "a2ff296da618452daa8243399f06db8e", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job1" ] }, { "name" : "f78e46676a454ccdacb9907f589f8d67", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job2" ] }, { "name" : "dee65054c96b4bf3b7ac98c0709f9ae0", "type" : "obs", "value" : { "obs_url" : "/test-lh/test-metrics/" }, "used_steps" : [ "training_job3" ] } ], "parameters" : [ { "name" : "is_true", "type" : "bool", "delay" : true, "value" : true, "used_steps" : [ "condition_step_test" ] }, { "name" : "train_spec", "type" : "str", "format" : "flavor", "description" : "training specification", "default" : "modelarts.vm.cpu.8u", "used_steps" : [ "training_job1", "training_job2", "training_job3" ] }, { "name" : "service_config1", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job1" ] }, { "name" : "service_config2", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job2" ] }, { "name" : "service_config3", "type" : "str", "default" : "/test-lh/test-metrics/metrics.json", "used_steps" : [ "training_job3" ] } ], "sub_graphs" : [ { "name" : "stage_A", "steps" : [ "training_job1", "training_job2" ] } ], "policy" : { }, "last_modified_at" : "2022-10-28T16:49:13.056726+08:00", "source_workflow_id" : "05427e9d-42ac-4816-bd45-360c1bfd780b", "latest_execution" : { "execution_id" : "43e317e2-34b0-4348-9c1b-08d3083512e1", "created_at" : "2022-10-28T16:49:03.894771+08:00", "status" : "completed", "duration" : 209 }, "run_count" : 2, "param_ready" : true }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
错误码
请参见错误码。