更新工作流模板¶
替换一个工作流模板的内容。该接口按完整定义更新;要保留的字段也应在请求中提供。
PUT https://moi.matrixorigin.cn/newmoi/workflow-templates/{id}
调用前准备¶
先查询工作流模板详情,取得当前完整定义;要保留的字段应复制到本次请求中。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。更新内置模板还需要管理员权限。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:目标工作区 ID,通过X-Workspace-IDHeader 传递。$TEMPLATE_ID:要更新的模板 ID。
路径参数¶
参数 |
类型 |
说明 |
|---|---|---|
|
integer |
大于 |
请求体¶
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
条件必填 |
更新内置模板时可省略以保留原值;自定义模板中会被忽略并清空。不能借此把自定义模板改为内置模板,或反向修改类型。 |
|
string |
是 |
更新后的模板名称。自定义模板在当前工作区和语言下不能重名。 |
|
string |
否 |
更新后的模板说明;不传时会清空该字段。 |
|
string |
是 |
更新后的工作流 DSL YAML。 |
|
string |
否 |
更新后的运行时字段 JSON 文本;不传时会清空该字段。提供时必须是合法 JSON。 |
|
boolean |
否 |
不能变更模板类型。更新自定义模板时设为 |
请求示例¶
以下示例更新自定义模板:
curl -X PUT "https://moi.matrixorigin.cn/newmoi/workflow-templates/$TEMPLATE_ID" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "<TEMPLATE_NAME>",
"description": "<DESCRIPTION>",
"dsl_yaml": "<WORKFLOW_DSL_YAML>",
"runtime_fields": "{\"fields\":[]}",
"is_builtin": false
}'
成功响应¶
成功时返回 200。data 为更新后的完整模板对象。
{
"code": "OK",
"msg": "OK",
"data": {
"id": 12,
"workspace_id": "ws-001",
"created_by": "user-001",
"updated_by": "user-002",
"template_key": "",
"name": "daily-import-template",
"description": "更新后的每日导入工作流模板",
"language": "zh-CN",
"dsl_yaml": "workflow: {}",
"runtime_fields": "{\"fields\":[]}",
"is_builtin": false,
"created_at": "2026-08-18T10:00:00Z",
"updated_at": "2026-08-18T11:00:00Z"
}
}
响应字段如下。
字段 |
类型 |
说明 |
|---|---|---|
|
string |
成功时为 |
|
string |
成功时为 |
|
integer |
模板 ID。 |
|
string |
所属工作区 ID;内置模板为空字符串。 |
|
string |
创建者标识。 |
|
string |
最后更新者标识。 |
|
string |
内置模板标识;自定义模板为空字符串。 |
|
string |
更新后的名称。 |
|
string |
更新后的说明。 |
|
string |
模板语言。 |
|
string |
更新后的工作流 DSL YAML。 |
|
string |
更新后的运行时字段 JSON 文本。 |
|
boolean |
模板的原有类型。 |
|
string |
创建时间;服务端未提供时可能省略。 |
|
string |
最后更新时间;服务端未提供时可能省略。 |
错误响应¶
失败响应的 data 为 null。
{
"code": "ErrTemplateTypeImmutable",
"msg": "不能修改模板类型",
"data": null
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
请求体无法解析, |
提供完整、合法的模板定义。 |
|
|
请求上下文中缺少工作区。 |
传入有效的 |
|
|
尝试将自定义模板改为内置模板。 |
保持模板原有类型;如需新类型,请新建模板。 |
|
|
尝试更新系统管理的内置模板,或使用受系统管理的内置模板标识。 |
不要修改该内置模板;创建或更新自定义模板。 |
|
|
更新内置模板时当前身份不是管理员。 |
使用有管理员权限的身份。 |
|
|
模板不存在,或自定义模板不属于当前工作区。 |
核对模板 ID 和工作区。 |
|
|
自定义模板名称在当前工作区和语言下已存在。 |
修改 |
|
|
内置模板的 |
更换 |
|
|
服务端未能更新模板。 |
稍后重试。 |
后续操作¶
查询工作流模板详情确认更新结果。