Flow Studio
Wait For Workflow Completion
Suspending the current workflow until another execution completes — the WaitForWorkflowNode, how it uses HIL-style suspension, and accessing the target execution's output.
Node Configuration
{
"nodeType": "WaitForWorkflow",
"name": "waitForPayroll",
"config": {
"executionId": "$output.startPayrollRun.executionId",
"timeoutMinutes": 120,
"onTimeout": "error"
}
}
Configuration Fields
| Field | Type | Description |
|---|---|---|
executionId | string / expr | The execution to wait for. |
timeoutMinutes | int | Maximum wait time. If the target hasn't completed by then, routes to onTimeout. Default: 60. Max: 10080 (7 days). |
onTimeout | error | continue | error: route to error port. continue: continue with null output (use status check to determine what happened). |
Node Output (on success)
When the target execution completes successfully, the WaitForWorkflowNode resumes with the target execution's final output:
{
"executionId": "exec-payroll-abc123",
"status": "completed",
"completedAt": "2026-05-25T10:47:00Z",
"output": {
"processedEmployees": 342,
"totalGrossPay": 1842400.00
}
}
How It Works
The WaitForWorkflowNode suspends the current execution using the same HIL-style suspension mechanism as approval nodes. The IWorkflowOrchestrator registers the waiting execution as a subscriber to the target execution's completion event. When the target completes, the orchestrator fires a resume signal to all waiting subscribers.
Fan-in pattern: Start multiple child workflows in parallel (fan-out using fan-out edges from a Start node), then use multiple sequential
WaitForWorkflowNode calls — one per child execution — to collect all results before the orchestrator continues.