← Node guide
Flow & logic

If / Branch

Compares a value from an earlier step against something and sends the run down `true` or `false`.

flow.ifBranches — true / false
The piece

Branch on a condition — compare an upstream value against something and take true / false.

Reach for it when

  • Acting on what a step found — a log line, an element count, a status code, a device's OS version.
  • Taking a different path for a phone that is already logged in.
If / Branch
Idle
truefalse
In the bag

Every setting this block has. A field marked only when appears once you have chosen the mode above it — those are alternatives to each other, not extra things to fill in.

  • ValueRequired
    starts at —

    What to check — drop a field from the data panel, e.g. {{ $Verify Installed.json.result }} or {{ $Dump UI.json.count }}.

  • Condition
    starts at is equal to
    is equal tois not equal tocontainsdoes not containstarts withends withmatches (regex)is greater thanis greater than or equal tois less thanis less than or equal tois emptyis not empty
  • Compared with
    starts at —

    Text, a number, or another field. Two numbers compare as numbers (3 equals 3.0); anything else compares as text. The four size conditions refuse a non-number rather than comparing "10" < "9" as letters.

    only when Condition = is equal to or is not equal to or contains or does not contain or starts with or ends with or matches (regex) or is greater than or is greater than or equal to or is less than or is less than or equal to

  • Match upper/lower case
    starts at off

    Off (default) treats Sign In and sign in as the same text.

    only when Condition = is equal to or is not equal to or contains or does not contain or starts with or ends with or matches (regex)

Build it
  1. Point at the value

    Drop a field in from the data panel rather than typing one. It is the difference between a check and a guess about a field name.

    If / BranchSettings
    ValueRequired
    {{ $Find in Text.json.found }}
    Condition
    is equal to
    Compared with
    true
  2. Pick the comparison

    Two numbers compare as numbers, so 3 equals 3.0. Anything else compares as text — and the four size conditions refuse a non-number rather than deciding that "10" is less than "9" because 1 comes before 9.

    how a comparison is read
    • 3 vs 3.0equal — both numbers
    • "10" < "9"step fails, naming the bad side
    • Sign In vs sign inequal, unless case is on
  3. Connect both sides

    A branch you leave unconnected simply ends there. It does not fail anything.

    If / Branch
    Idle
    truefalse
What comes out
  • `true` or `false`, carrying the same item the step received.
Watch out
  • is empty and is not empty look at one side only — the Compared with box disappears for them rather than sitting there doing nothing.
  • Case matching is off by default, which is what you want for UI text and wrong for an id.
Usually next to