Sobmit Docs

Router node

Router node card

The Router node branches the flow. It evaluates conditions that live on its outgoing edges and follows exactly one matching branch.

How it works

  1. The Router receives a payload.
  2. Each outgoing edge carries a condition (path, operator, value).
  3. The first edge whose condition matches is taken.
  4. If none match, the unconditional/default edge is taken.
  5. If there is no matching edge and no default, the run fails with a graph error.

Conditions

Conditions are configured in the edge inspector. Available operators:

OperatorMeaning
eq / neqequals / not equals (coerced)
gt / gtegreater than / or equal
lt / lteless than / or equal
containsstring contains
startsWithstring prefix
endsWithstring suffix
regexmatches a regular expression

The path is a dot-path into the payload, e.g. label or outputs.agent.label.

Example — route on a classification

An Agent outputs { "label": "refund", "confidence": 0.9 }. Wire it into a Router with two edges:

  • Edge A: label eq "refund" → a Refund HTTP Request node.
  • Edge B: label eq "support" → a Support Agent node.
  • Edge C (no condition): fallback → an Output node.

Notes

  • Numeric comparisons (gt/lt) coerce strings to numbers first, so "10" compares as 10, not lexicographically.
  • Exactly one branch runs per execution — a Router never fans out.

Related

  • Agent — structured output that a Router can branch on.
  • HTTP Request — a common branch target.
  • Use cases — a complete lead-scoring flow built on a Router.