更新工作流

修改已有工作流的定义或配置。请求成功表示修改已保存;变更定义或运行配置时,服务会重新提交工作流定义,但不会启动一次作业。

PATCH https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/{workflow_id}

调用前准备

查看工作流详情,确认要修改的工作流。准备具有工作流更新权限的个人访问令牌目标工作区 ID

路径参数

$AI_STUDIO_API_KEY$WORKSPACE_ID$WORKFLOW_ID 替换为实际值。

curl -X PATCH "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/$WORKFLOW_ID" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "description": "每日同步销售数据"
  }'

参数

类型

是否必填

说明

workflow_id

string

要更新的工作流 ID。

请求体

所有字段均为可选,但请求中至少提交一个可更新字段。不要传 runtime_context。将示例中的工作流名称、DSL、资源 ID 和触发器配置替换为实际值。

curl -X PATCH "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/$WORKFLOW_ID" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "daily-import-v2",
    "description": "每日同步销售数据",
    "compute_resource_id": "compute-001"
  }'
curl -X PATCH "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/$WORKFLOW_ID" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "execution_mode": "cron",
    "cron_expression": "0 2 * * *"
  }'
curl -X PATCH "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/$WORKFLOW_ID" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "execution_mode": "volume_trigger",
    "volume_trigger": {
      "volume_id": 1001,
      "enabled": true
    }
  }'
curl -X PATCH "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-apps/$WORKFLOW_ID" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "execution_mode": "dynamic_service",
    "dynamic_service": {
      "service_name": "order-query-service"
    }
  }'

字段

类型

是否必填

说明

name

string

工作流名称;传入时不能为空。

description

string

工作流说明。

dsl_yaml

string

工作流 DSL 的 YAML 文本;传入时不能为空。

runtime_fields

object

运行时输入表单配置。

runtime_layout

object

运行时输入表单布局配置。

default_values

object

运行时输入表单的默认值。

design_graph

object

工作流设计图配置。

compute_resource_id

string

关联的计算资源 ID。

status

string

工作流状态;可填写 readydisabled

session_id

string

工作流会话 ID。

字段

类型

是否必填

说明

execution_mode

string

填写 cron 时启用定时触发。

cron_expression

string

条件必填

定时触发的 Cron 表达式;运行方式为 cron 时必须提供。

字段

类型

是否必填

说明

execution_mode

string

填写 volume_trigger 时启用卷触发。

volume_trigger

object

卷触发配置。

volume_trigger.volume_id

integer

条件必填

卷 ID;运行时输入表单未提供卷 ID 时必填。

volume_trigger.enabled

boolean

是否启用卷触发。

volume_trigger.auto_dispatch_enabled

boolean

是否自动派发卷触发的运行。

volume_trigger.vars_json

string

卷触发使用的变量 JSON 文本。

volume_trigger.max_concurrency

integer

卷触发运行的最大并发数。

字段

类型

是否必填

说明

execution_mode

string

填写 dynamic_service 时启用动态服务。

dynamic_service

object

动态服务配置。

dynamic_service.service_name

string

动态服务名称。

dynamic_service.input_schema

string

动态服务输入的 Schema。

dynamic_service.output_schema

string

动态服务输出的 Schema。

dynamic_service.result_mode

string

动态服务的结果模式。

dynamic_service.runtime_spec_json

string

动态服务运行时配置的 JSON 文本。

成功响应

成功时返回 200,并返回更新后的完整工作流对象。响应字段如下。

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "workflow": {
      "id": "wf-001",
      "name": "daily-import-v2",
      "description": "每日同步销售数据",
      "source_type": "manual_dsl",
      "status": "ready",
      "available_actions": ["update", "delete", "run", "pause"],
      "execution_mode": "cron",
      "cron_expression": "0 2 * * *",
      "dsl_yaml": "workflow:\\n  name: daily-import-v2\\n  root: main\\nroot:\\n  chain: []\\n",
      "default_values": {},
      "latest_workflow_version_id": "ver-002",
      "latest_version": 4,
      "latest_version_status": "ready",
      "execution_summary": {
        "total_executions": 8,
        "active_executions": 0
      },
      "trigger_summary": {
        "mode": "cron",
        "configured": true,
        "enabled": true,
        "cron_expression": "0 2 * * *"
      },
      "updated_at": "2026-08-18T11:00:00Z"
    }
  }
}

字段

类型

说明

code

string

成功时为 OK

msg

string

成功时为 OK

data

object

响应数据。

workflow

object

更新后的工作流详情。

下面表格展开响应示例中 data 下的 workflow 对象;每一行是该对象的一个字段。

字段

类型

说明

id

string

工作流 ID。

name

string

工作流名称。

description

string

工作流说明;未设置时可能省略。

source_type

string

工作流来源类型。

status

string

当前状态。

available_actions

array of string

当前状态允许的操作;再次调用前应重新读取。

execution_mode

string

已配置的运行方式。

cron_expression

string

Cron 表达式;仅定时触发时返回。

goal

string

工作流目标;服务端提供时返回。

planner_model

string

规划模型;服务端提供时返回。

draft_id

string

草稿 ID;服务端提供时返回。

session_id

string

工作流会话 ID;服务端提供时返回。

candidate_id

string

候选 ID;服务端提供时返回。

字段

类型

说明

dsl_yaml

string

工作流 DSL 的 YAML 文本。

run_context

object

运行上下文;服务端提供时返回。

runtime_fields

object

运行时输入表单;未配置时可能省略。

runtime_layout

object

运行时输入表单布局;未配置时可能省略。

default_values

object

运行时输入表单的默认值;未配置时可能省略。

design_graph

object

工作流设计图配置;未配置时可能省略。

字段

类型

说明

moi_workflow_def_id

string

工作流定义 ID;服务端提供时返回。

latest_workflow_version_id

string

最新工作流版本 ID;服务端提供时返回。

latest_version

integer

最新工作流版本号;服务端提供时返回。

latest_version_status

string

最新工作流版本状态;服务端提供时返回。

execution_summary

object

执行汇总。

trigger_summary

object

触发器汇总。

execution_summary 用于查看执行情况,trigger_summary 用于查看当前触发方式。字段如下。

字段

类型

说明

total_executions

integer

执行总数。

active_executions

integer

活动执行数。

active_execution_id

string

当前活动执行 ID;没有活动执行时可能省略。

active_execution_status

string

当前活动执行状态;没有活动执行时可能省略。

latest_execution_id

string

最近一次执行 ID;没有执行记录时可能省略。

latest_execution_status

string

最近一次执行状态;没有执行记录时可能省略。

latest_execution_at

string

最近一次执行时间;没有执行记录时可能省略。

mode

string

触发方式。

configured

boolean

是否已配置。

enabled

boolean

是否已启用。

volume_id

integer

关联的卷 ID;仅卷触发时返回。

cron_expression

string

Cron 表达式;仅定时触发时返回。

service_name

string

服务名称;仅动态服务时返回。

字段

类型

说明

compute_resource_id

string

工作流级计算资源 ID;未关联时可能省略。

compute_resource_bindings

array of object

工作流或节点的计算资源绑定;未配置时可能省略。

id

string

计算资源 ID。

name

string

计算资源名称;服务端提供时返回。

workflow_level

boolean

是否为工作流级绑定。

node_names

array of string

使用该绑定的节点名称。

created_at

string

创建时间;服务端提供时返回。

updated_at

string

最后更新时间;服务端提供时返回。

错误响应

{
  "code": "ErrParamInvalid",
  "msg": "请求参数无效",
  "data": null
}

字段

类型

说明

code

string

错误代码。

msg

string

错误说明。

data

null

错误时为空。

后续操作

记录 data.workflow.id。需要核对保存的定义时,查看工作流详情;需要运行时,启动工作流作业

最后更新于