Portal Community

Node Configuration

{
  "nodeType": "WaitForWorkflow",
  "name": "waitForPayroll",
  "config": {
    "executionId": "$output.startPayrollRun.executionId",
    "timeoutMinutes": 120,
    "onTimeout": "error"
  }
}

Configuration Fields

FieldTypeDescription
executionIdstring / exprThe execution to wait for.
timeoutMinutesintMaximum wait time. If the target hasn't completed by then, routes to onTimeout. Default: 60. Max: 10080 (7 days).
onTimeouterror | continueerror: 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.