The node
client.workflow(...).parse().extract(...)) has no if_else() verb. Build a WorkflowDefinition from the node classes instead, as above, and pass it to create_workflow. The TypeScript builder has no method either; send the JSON.
The edge that leaves If/Else names its branch: "branch": "true" or "branch": "false".
In Studio
Click the If/Else node on the canvas to open its panel. The Conditions list holds one card per condition; with two or more, the And / Or toggle at the top decides how they combine. Each card has a subject (a field value, field math, a validation outcome, or an expression) and the assertion that completes “Check that the field…”; click Save condition when done. The node has two output handles on the canvas, true and false.
Options
The schema the API accepts is generated from the same source: If/Else node schema.
Conditions
A condition is a check: the same closed set the Validate node uses, plus one kind that only exists here.
The wire shape of each check is on the Validate page. The
validation check has its own:
validation condition needs a Validate node upstream that carries a rule with that rule_id. A rule id with no verdict for the document evaluates to inconclusive.
When a condition can’t be evaluated, the document takes the False branch. If a field the condition refers to is missing, or a confidence check has no confidence score, the condition counts as not met, so the document goes down False, never True. This keeps a True-only branch (like an alert) from firing on data anyformat couldn’t actually check. To handle those documents on their own path instead, use a separate, preliminary If/Else node that checks whether the field is required, and place the value condition on its True branch.
What it returns
Nothing in the run results. If/Else adds no section and changes no field. It decides which downstream nodes run for the document:- The condition holds: the nodes on the true branch run.
- The condition fails, or cannot be evaluated: the nodes on the false branch run.
"branch": "true" edge. The false branch may be left empty, and the document then stops there. On a workflow with a Split node, the condition is evaluated once per sub-document.
Connects to
An Extract cannot sit after an If/Else today. The API rejects the edge (
an extract node cannot sit downstream of an if_else) and Studio does not offer it. A second extraction pass on a branch is planned, not available.
Billing
Free. If/Else runs no model and bills no credits. Full price list: How credits work.Examples
- Invoice processing: add the If/Else on this page after the Extract to flag invoices over 10,000.
- Contract analysis: route contracts whose expiry date is on or before today to an alert with a
datecondition ("latest": "today").

