Call a workflow node
The Call a workflow node allows calling another workflow (a precise version) from the current workflow, like a reusable subroutine. It allows factorizing a common logic between several workflows, orchestrating complex workflows by chaining already validated building blocks and reusing deployed or tested versions without duplicating the nodes.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| App | — | ❌ | — | Application associated with the node. See Apps. |
| Workflow (version) | — | ✅ | — | Version of the workflow to execute. |
| Context inheritance | Boolean | ✅ | — | Transmit the whole parent context or a sub-part via a key. |
Context key (contextKey) | JSONPath | Depending on the mode | — | jsonpath path to the object transmitted as context to the sub-workflow (if partial inheritance). |
| Trigger data inheritance | Boolean | ✅ | — | Transmit the parent trigger data or a targeted value. |
Data key (dataKey) | JSONPath | Depending on the mode | — | jsonpath path to the value transmitted in data of the sub-workflow (if partial inheritance). |
| Stop workflow on failure New | Boolean | ❌ | On | On, the parent workflow stops if the sub-workflow fails. Off, the parent continues. |
Workflow selection
Choose the version of the target workflow in the list. A warning is displayed if you select the main version without an explicit parent: check that it is indeed the expected version for the execution.
When deploying a new version of a sub-workflow, you must update the version selected in the Call a workflow node, then re-deploy or update the calling workflow.
Even if the sub-workflow is called in its main version, any modification of it also requires forcing the update of the node or of the parent workflow to apply the changes.
Context inheritance
- Enabled: the full context of the parent workflow is transmitted to the sub-workflow.
- Disabled: specify a context key (jsonpath) pointing to an object to transmit. Without a valid key, the sub-workflow may not receive the expected context.
Trigger data inheritance
- Enabled: the trigger data of the parent workflow are transmitted to the sub-workflow in
data. - Disabled: specify a data key (jsonpath) to inject a precise value in
data.
Input
The node receives the context and the trigger data of the parent workflow, transmitted in whole or in part:
{
"context": {
"orderId": "4821"
},
"data": {
"orderId": "4821"
}
}
With partial inheritance, only the values targeted by contextKey and dataKey (JSONPath) are transmitted.
Output
The node produces no documented value of its own: the sub-workflow runs its logic with the transmitted context and data.
Example
To factorize a common logic across several workflows (e.g. enriching an order), create a dedicated sub-workflow, then call it from each workflow with the Call a workflow node: select the version of the sub-workflow to execute and enable the context and trigger data inheritance to transmit context and data.