Skip to main content
The sub-workflow trigger makes a workflow callable: another workflow can run it as a reusable section with a Call workflow action instead of duplicating the same steps. It declares the input contract the caller must fill, and hands that data to the rest of the section. A workflow becomes callable as soon as it has a sub-workflow trigger. Add a single Return output when the caller should receive data back; without one the section is a terminal stage and the call completes with an empty payload. See Reusable sections for the whole pattern.

Configuration

Input contract

The contract is the interface every caller maps into. Each field you declare here appears in the caller’s mapping panel, and each field you mark required must be mapped before the caller’s workflow can be saved. Declare a contract with no fields when the section only needs the document itself. That is a deliberate choice, not an empty configuration: the section still runs, it just reads nothing from its caller.
Changing the contract can break callers that already map into it. Adding a required field, or renaming one, makes every existing caller’s mapping incomplete. Ingestly flags those callers when you save and disables them until their mappings are fixed, so they fail loudly at save time rather than silently at run time.

Callers

The editor lists every workflow already calling into this one, right on this node, so you can see who depends on it before you touch the contract. Each entry names the calling workflow and links to it when it is in your current environment and workspace; a caller in a different environment or workspace is named with a badge instead of a link.

Coexistence with other triggers

A callable workflow can keep its ordinary triggers. A workflow with both a sub-workflow trigger and an upload trigger can be called as a section and run on its own from an upload, which is how you test a section without a caller. Only the trigger that actually started the run executes; the others are recorded as skipped. The sub-workflow trigger itself is only ever entered by a call. Submitting a document directly does not start it.

Inputs and outputs

Allowed inputs: none. This is a trigger node. Output: Downstream nodes read contract fields directly, for example {{Section input.payload.vendor.name}}. The section runs on the caller’s document, over all of its pages. A section is not a page subset: splitting a document into page groups is what the Split action’s fan-out is for.

Credits

The trigger itself is free. The section’s own steps bill normally, on the section’s run.

Call workflow action

Call this section from another workflow

Return output

Declare what the section hands back

Reusable sections

The whole pattern, end to end

Forward trigger

Receive a forwarded document instead of being called