文件節點
本頁目錄

呼叫工作流程

透過已宣告的輸入和輸出,複用另一個已發布工作流程。

呼叫工作流程節點(Call Workflow)可以呼叫目前帳號名下、已發布且具有開始節點介面的工作流程。平臺根據目標已發布的介面生成連接埠,呼叫方無需重建目標的內部執行圖。

選擇目標

{
  "op": "node.add", "as": "greeting", "type": "workflow", "name": "Call greeting",
  "config": { "flowId": "TARGET_FLOW_ID" },
  "inputs": { "name": { "kind": "value", "value": "Ada" } }
}

公開節點型別是 workflow。選擇的目標應具有呼叫方要傳入的欄位。沒有工作流程輸出節點的目標,會回傳空的業務結果。

儲存的介面

節點會儲存所選目標的介面快照。一般編輯不會更新它;需要載入目標目前已發布的介面時,使用 node.refresh。

{ "op": "node.refresh", "node": "CALL_NODE_REFERENCE" }

如果目標的新修訂版本保留了相同的欄位名、schema 和 null 約束,呼叫方無需更新即可繼續呼叫。介面變化時則需要更新。欄位按名稱精確匹配,無法解析的引用會保留,以便診斷。

呼叫工作流程節點向另一個工作流程傳入姓名,並讀取對方宣告的業務結果。

呼叫工作流程節點向另一個工作流程傳入姓名,並讀取對方宣告的業務結果。
輸入
{"name":"Ada"}
預期結果
被呼叫工作流程的 message 輸出成為目前工作流程的 message 結果。
執行前準備
選擇目前帳號名下、已啟用且已發布、具有匹配的 name/message 介面的工作流程,再更新節點。案例中的目標 ID 僅作示意。
下載工作流程

執行時行為

執行時,部署端檢查目標目前已啟用的 Live 版本,並建立版本固定的子執行。子執行成功後,呼叫方接收它宣告的業務輸出。子工作流程中的等待屬於子執行;父執行取消或失敗時,尚未完成的後代執行也會被取消。

不允許自呼叫和遞迴呼叫鏈。草稿可以保留目前不可用的目標,但實際執行仍需要符合條件的已發布目標。呼叫工作流程節點不支援一般任務的重試策略。

Agent 和程式碼節點也可以使用明確宣告的工作流程工具。詳見 Agent 和程式碼節點。

資料來源

搜尋