更新工作流

修改已有工作流的定义或配置。保存成功不表示已有或后续执行已经完成。

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

调用前准备

查询工作流详情,确认要修改的字段和当前状态。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。

下方示例使用:

  • $AI_STUDIO_API_KEY:实际个人访问令牌,通过 X-API-Key Header 传递。

  • $WORKSPACE_ID:目标工作区 ID,通过 X-Workspace-ID Header 传递。

  • $WORKFLOW_ID:要更新的工作流 ID。

请求体不能包含运行时上下文字段。

路径参数

参数

类型

说明

workflow_id

string

要更新的工作流 ID。

请求体

请求体中的所有字段均为可选;只提交需要修改的字段。

字段

类型

是否必填

说明

name

string

工作流名称。

description

string

工作流说明。

dsl_yaml

string

工作流 DSL。

execution_mode

string

执行模式。

cron_expression

string

Cron 表达式。

runtime_fields

object

运行时输入表单定义。

default_values

object

默认输入值。

compute_resource_id

string

计算资源 ID。

status

string

工作流状态。

volume_trigger

object

卷触发器配置。

dynamic_service

object

动态服务配置。

runtime_layout

object

运行表单布局。

design_graph

object

设计图。

session_id

string

工作流 Copilot 会话上下文 ID。

请求示例

curl -X PATCH "https://moi.matrixorigin.cn/newmoi/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": "<DESCRIPTION>",
    "compute_resource_id": "<COMPUTE_RESOURCE_ID>"
  }'

成功响应

成功时返回 200data.workflow 返回更新后的完整工作流对象。

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "workflow": {
      "id": "wf-001",
      "name": "daily-import",
      "description": "更新后的说明",
      "status": "ready",
      "execution_mode": "cron",
      "default_values": {},
      "compute_resource_id": "compute-001",
      "updated_at": "2026-08-18T11:00:00Z"
    }
  }
}

响应字段如下。

字段

类型

说明

code

string

成功时为 OK

msg

string

成功时为 OK

data.workflow

object

更新后的工作流详情。

data.workflow.id

string

工作流 ID。

data.workflow.name

string

更新后的名称。

data.workflow.description

string

更新后的说明。

data.workflow.status

string

当前状态。

data.workflow.execution_mode

string

执行模式。

data.workflow.default_values

object

当前默认运行输入。

data.workflow.compute_resource_id

string

当前关联的计算资源 ID。

data.workflow.source_type

string

工作流来源类型。

data.workflow.available_actions

string(字符串数组)

当前状态下允许的操作。

data.workflow.cron_expression

string

Cron 表达式;仅定时模式返回。

data.workflow.goal

string

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

data.workflow.planner_model

string

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

data.workflow.draft_id

string

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

data.workflow.candidate_id

string

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

data.workflow.dsl_yaml

string

工作流 DSL YAML。

data.workflow.runtime_fields

object

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

data.workflow.runtime_layout

object

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

data.workflow.run_context

object

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

data.workflow.latest_workflow_version_id

string

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

data.workflow.latest_version

integer

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

data.workflow.latest_version_status

string

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

data.workflow.compute_resource_bindings

object(对象数组)

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

data.workflow.execution_summary

object

执行汇总。

data.workflow.trigger_summary

object

触发器汇总。

data.workflow.created_at

string

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

data.workflow.updated_at

string

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

错误响应

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

常见 HTTP 错误

HTTP 状态码

错误代码

常见原因

建议操作

400

ErrParamInvalid

请求体无法解析,或字段组合不符合工作流定义。

只提交此页列出的字段,并核对配置值。

401

ErrUnauthorized

缺少或无效的访问凭据。

检查 API Key 和工作区 Header。

403

ErrForbidden

当前身份没有更新权限。

请求授予工作流更新权限。

404

ErrNotFound

工作流不存在或不属于当前工作区。

核对工作区和工作流 ID。

409

ErrConflict

当前状态或并发修改与本次更新冲突。

重新读取详情后按最新状态提交。

500

ErrServer

服务端更新失败。

稍后重试。

后续操作

查询工作流详情确认更新结果。

最后更新于