接受工作流候选

接受工作流助手生成并校验的候选,保存后续部署需要的确认记录。本接口不部署或运行工作流。

POST https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-candidates/accept

调用前准备

通过 API 用自然语言搭建工作流,取得已完成任务中的有效候选。候选必须属于当前工作区及当前调用用户。

准备具有目标工作区工作流创建权限的个人访问令牌工作区 ID

请求示例

$TASK_ID 来自生成任务的 result.id$ARTIFACT_ID 来自同一任务候选产物的 artifactId$AI_STUDIO_API_KEY$WORKSPACE_ID 分别为调用凭据与目标工作区。

curl -X POST "https://api.moi.matrixorigin.cn/v5/workflow/v2/workflow-candidates/accept" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H 'Content-Type: application/json' \
  -d '{
    "candidate_ref": {
      "task_id": "'"$TASK_ID"'",
      "artifact_id": "'"$ARTIFACT_ID"'"
    }
  }'

请求体

字段

类型

是否必填

说明

candidate_ref

object

待接受的服务端候选引用。

candidate_ref.task_id

string

生成候选的已完成 A2A 任务 ID。

candidate_ref.artifact_id

string

该任务中的工作流候选产物 ID。

只提交引用。不要提交候选正文、DSL、表单、画布或 runtime_context。服务端读取并检查原始产物,不能使用客户端构造的候选替换它。

成功响应

成功时返回 HTTP 200 和接受记录,其中保留完整候选。接受记录用于后续部署;接受成功不表示已经创建工作流。

以下节选用于后续部署的引用和接受时间;实际响应还包含下表所列的 data.candidate

{
  "code": "OK",
  "msg": "OK",
  "data": {
    "candidate_ref": {
      "task_id": "task_01",
      "artifact_id": "workflow_candidate_01"
    },
    "accepted_at": "2026-09-15T02:00:00Z"
  }
}

响应字段如下。

字段

类型

说明

code

string

成功时为 OK

msg

string

响应说明。

data.candidate_ref

object

已接受的候选引用。

data.candidate_ref.task_id

string

生成任务 ID。

data.candidate_ref.artifact_id

string

候选产物 ID。

data.accepted_at

string

服务端记录的接受时间。

data.candidate

object

服务端保存的候选内容。

data.candidate.ok

boolean

候选是否有效。

data.candidate.candidate_id

string

候选标识。

data.candidate.summary

string

候选摘要;有值时返回。

data.candidate.message

string

候选说明;有值时返回。

data.candidate.workflow

object

用于部署的工作流定义。

data.candidate.runtime_fields

object

运行输入表单;有配置时返回。

data.candidate.runtime_layout

object

表单布局;有配置时返回。

data.candidate.diagnostics

object(对象数组)

编译诊断;有值时返回。

data.candidate.diagnostics[].message

string

诊断说明。

data.candidate.diagnostics[].severity

string

诊断级别;有值时返回。

data.candidate.diagnostics[].suggestion

string

修改建议;有值时返回。

字段路径中的 [] 表示数组中的每一项。例如,diagnostics[].message 表示每项诊断的说明。候选还可包含源码、编译版本、摘要及自定义算子快照;保留原始响应用于核对,不将这些内容重新作为部署请求提交。

错误响应

{
  "code": "ErrParamInvalid",
  "data": null,
  "msg": "候选 task_id 和 artifact_id 不能为空"
}

常见 HTTP 错误

HTTP 状态码

错误代码

常见原因

建议操作

400

ErrParamInvalid

引用缺失、候选校验失败,或请求包含不支持的字段。

核对任务和产物来源,只提交候选引用。

409

workflow_candidate_not_accepted

候选接受状态不满足当前操作。

核对实际候选及其接受记录,不自行构造接受状态。

500

ErrServer

服务端处理失败。

保留请求时间与错误响应,联系管理员排查。

503

ErrServiceUnavailable

依赖服务不可用。

恢复服务后再操作。

后续操作

使用 data.candidate_ref 创建工作流,选择自然语言候选部署方式。

最后更新于