工作流

核心平台
workflow_definitions_read工作流

读取设施的工作流自动化:工作流、单个工作流的完整图、图可以使用的节点类型,以及精选模板。构建或编辑图之前先读取 node_types,确保每个类型和参数在该设施均有效。

操作:

  • list:列出工作流。每个工作流是否已上线、其已发布版本、运行次数、最近一次运行及其节点(id、name、type)。不列出品牌和组织级别的工作流。
  • get:获取工作流。完整的草稿图(nodes、connections、notes、settings)和 meta:active、publishedVersionId,以及发布后的 publishedWorkflow,即当前已上线的图。仅限此设施的工作流。需要 workflowId。
  • node_types:节点类型。节点面板条目,包含 type、label、category、outputs(分支)和 inputSchema(需要填写的参数)。设施缺少节点所需的模块时,available 为 false 并附原因。MCP 工具显示为 mcp.. 节点。
  • templates:模板。常见自动化的起点,包含 risk 和 riskNote(草率发布可能出现的问题)、节点类型、所需模块、在此设施的可用性以及预览图。使用 workflow_definitions_write instantiate_template 将模板转换为图。

参数

名称类型描述
action*"list" | "get" | "node_types" | "templates"要执行的操作;每个操作的说明见工具描述。
limitinteger每页条目数(默认 25,最多 100) (list, node_types, templates)
cursorstring上一页返回的 nextCursor (list, node_types, templates)
facilityIdstring设施 ID。如果所指的就是已连接的设施,则可省略。
workflowIdstring工作流 ID,来自 workflow_definitions_read list (get)
querystring要在类型、标签、描述或搜索词中查找的词语 (node_types)
categorystring仅此类别:trigger、action、logic 或 ai (node_types)
typesarray要描述的精确类型,例如正在编辑的工作流中的类型。包括节点面板中已不再显示的停用类型;忽略 query 和 category。(node_types)
workflow_definitions_write工作流

创建、编辑、发布、停止和删除设施的工作流自动化。编写流程:使用 workflow_definitions_read 读取 node_types,构建图(或从 instantiate_template 开始),将其创建为草稿,使用 workflow_runs_write test(模拟)试运行,然后发布。对草稿的编辑在发布之前绝不会改变已上线的内容。

操作:

  • create:创建工作流。根据至少包含一个节点的完整图保存一个新的未激活草稿;name 默认为 "Untitled workflow"。验证问题会在 errors 中返回,并附节点详情。需要 nodes。
  • update:保存草稿。替换整个草稿:发送所有节点和连接,而不仅是更改的部分。已上线的版本会继续运行,直到你发布。验证问题会在 errors 中返回,并附节点详情。需要 workflowId、nodes。
  • patch_meta:重命名。仅更改名称或描述;图和已上线的内容保持不变。两者都已匹配时 changed 为 false。需要 workflowId。
  • duplicate:复制。将工作流复制为名为 " (copy)" 的新草稿,使用新的节点 ID,不会发布或激活。原工作流保持不变。需要 workflowId。
  • delete:删除。永久删除工作流:草稿、已发布版本、运行历史和触发器路由。set_active 为 false 会停止但保留工作流;discard_draft 仅重置草稿编辑。需要 workflowId。需要确认。
  • discard_draft:放弃草稿编辑。将草稿重置为最近发布的版本,丢弃此后的编辑。已上线的版本不受影响;需要有已发布版本。需要 workflowId。需要确认。
  • publish:发布。验证草稿,将其保存为上线版本并开启工作流,使其触发器触发、操作真实执行。进行中的运行会在旧版本上完成。如果等待中的 Delay 步骤需要重新计时,结果会包含代码 WAIT_RETARGET_CONFIRMATION_REQUIRED 和 impacts:带上 confirmWaitRetargets 和这些 impacts 再次调用。需要 workflowId。需要确认。
  • set_active:开启或关闭。active 为 true 会重新开启已发布的工作流。active 为 false 会停止工作流:触发器停止触发,待处理的 Delay 步骤会被取消,永远不会完成。不会删除任何内容。除非已处于该状态,否则会先询问。需要 workflowId、active。可能需要确认。
  • instantiate_template:从模板生成图。将模板转换为可用于 create 的图:{ name, description, nodes, connections },使用新的节点 ID。模板有意将收件人、门和时间留空;先填写这些内容。不保存任何内容。需要 templateId。
  • generate:生成图。使用设施的 AI 根据通俗语言提示构建图,并返回仅使用有效节点类型的 { name, description, nodes, connections }。传入 workflow 可修改现有工作流;会返回完整的修改后图。不保存任何内容,但会消耗设施的 AI 额度。需要 prompt。需要确认。

参数

名称类型描述
action*"create" | "update" | "patch_meta" | "duplicate" | "delete" | "discard_draft" | "publish" | "set_active" | "instantiate_template" | "generate"要执行的操作;每个操作的说明见工具描述。
namestring工作流名称 (create, update, patch_meta)
descriptionstring工作流的作用 (create, update, patch_meta)
nodesarray所有节点:{ id, name, type, position, parameters }。类型和参数来自 workflow_definitions_read node_types。(create, update)
connectionsobject以源节点名称为键的连接;只有一个节点时可为空 (create, update)
notesarray画布备注 (create, update)
settingsobject工作流设置 (create, update)
facilityIdstring设施 ID。如果所指的就是已连接的设施,则可省略。
workflowIdstring工作流 ID,来自 workflow_definitions_read list (update, patch_meta, duplicate, delete, discard_draft, publish, set_active)
confirmWaitRetargetsboolean重新计时上一个结果的 impacts 中列出的等待中的 Delay 步骤 (publish)
confirmedWaitRetargetsarrayWAIT_RETARGET_CONFIRMATION_REQUIRED 结果中的 impacts,原样发回 (publish)
activebooleantrue 表示开启,false 表示停止 (set_active)
templateIdstring模板 ID,来自 workflow_definitions_read templates (instantiate_template)
promptstring工作流应执行的操作 (generate)
workflowobject来自 workflow_definitions_read get 的完整工作流,用于在其基础上修改而不是从头开始 (generate)
confirmboolean仅在用户确认第一次调用返回的预览后设置
workflow_runs_read工作流

工作流的运行历史(最新的在前)以及单次运行的逐步详情。用于检查自动化是否已运行、跟踪通过 workflow_runs_write 启动的运行,或查找哪个节点失败及原因。

操作:

  • list:列出运行。每次运行的状态、模式(live 或 test)、副作用、触发器、启动者、时间、步骤数、正在等待的节点以及任何错误。需要 workflowId。
  • get:获取运行。运行状态以及按顺序排列的每个步骤,包含每个节点的输入、输出、备注和错误。运行是异步的:包含 Delay 的运行会等待,直到其后续步骤到期。需要 workflowId、executionId。

参数

名称类型描述
action*"list" | "get"要执行的操作;每个操作的说明见工具描述。
workflowIdstring工作流 ID,来自 workflow_definitions_read list
limitinteger每页项目数(默认 25,最多 100)(list)
cursorstring上一页返回的 nextCursor(list)
facilityIdstring设施 ID。如果所指的就是已连接的设施,则可省略。
executionIdstring运行 ID,来自 workflow_runs_read list (get)
workflow_runs_write工作流

启动、试运行、取消和重放工作流运行。优先使用 test,它以模拟副作用的方式运行草稿;run 会真实执行已发布的工作流。运行是异步的:使用 workflow_runs_read get 跟踪。

操作:

  • run:立即运行。从手动触发器 (custom.manualTrigger) 运行已发布的工作流,产生真实副作用。计划、webhook 和事件触发器会自行触发。返回运行的 executionId 和初始状态。需要 workflowId。需要确认。
  • test:测试草稿。运行已保存的草稿而不发布,记录为测试运行。默认模拟副作用:不发送或切换任何内容,每个节点会报告其本应执行的操作。sideEffects 为 live 时会先询问。需要 workflowId。可能需要确认。
  • cancel:取消等待中的运行。取消正在等待 Delay 的运行:其待处理的等待会关闭,之后的步骤永远不会运行。已完成的运行和正在执行步骤的运行无法取消。需要 workflowId、executionId。需要确认。
  • retry:重放运行。根据记录的触发器输入重放已完成的运行,并通过 retryOf 关联回原运行。published(默认)会真实重新运行其所用的版本,并先询问;draft-test 以模拟方式运行当前草稿,适合在修复故障时使用。需要 workflowId、executionId。可能需要确认。

参数

名称类型描述
action*"run" | "test" | "cancel" | "retry"要执行的操作;每个操作的说明见工具描述。
workflowIdstring工作流 ID,来自 workflow_definitions_read list
nodeIdstring作为起点的触发器节点 ID;省略则使用手动触发器 (run, test)
payloadobject触发器之后节点的输入,例如 { "visitorName": "Ada" } (run, test)
facilityIdstring设施 ID。如果所指的就是已连接的设施,则可省略。
sideEffects"simulate" | "live"节点操作是否真实执行 (test)
executionIdstring运行 ID,来自 workflow_runs_read list (cancel, retry)
mode"published" | "draft-test"重放所针对的版本 (retry)
confirmboolean仅在用户确认第一次调用返回的预览后设置