Branches and fallbacks
Design clear decisions, handle failures, and keep workflows useful when inputs or services do not behave as expected.
Read the branch labels #
Branches describe possible outcomes, such as Yes/No, a selected answer, Success/Error, or Timeout. Their meaning comes from the node’s logic and configuration. Connect the branch that matches the outcome, rather than choosing by position alone.
Check condition makes a logical decision. Ask Multiple Choice Question routes based on an answer. Other router and selector nodes provide different ways to choose a path; use their inspector labels to understand the behavior.
The detailed Check condition guide covers As Text, As Number, Ignore case, AND/OR groups, nested rules, variable comparisons, and testing thresholds. No is a valid non-match; invalid numeric input is an execution failure, not the same outcome.
Design the unhappy path #
For every external action, ask what should happen if the connection expires, the resource is missing, the input is empty, or a result does not arrive.
A useful fallback might explain the issue, ask for a missing value, store a request for later attention, or direct the team to follow up. Keep customer-facing wording concise and avoid exposing raw provider errors.
A practical support menu #
New Chat Created
└─ Ask Multiple Choice Question: “How can we help?”
├─ Sales → Send Text Message: sales guidance
└─ Support → Send Text Message: support guidance
The support menu recipe includes a visual diagram and complete importable JSON for this pattern.
Avoid repeated side effects #
After an interrupted send or write, inspect the destination before retrying. A timeout does not prove that an external service did nothing. Where the service supports it, use a stable business identifier to recognize an already-created record.
Avoid loops that repeatedly send a message, write a record, or change a status without a clear stopping condition.
Special cases #
- A paused multi-branch node continues down the first branch without evaluating its decision.
- A ChatGPT Task needs both Error and Timeout paths before activation.
- A Database Operation that writes into its watched table needs a condition to prevent a self-triggering cycle.
Test every meaningful outcome #
Use a normal input, a missing or invalid input, and a deliberately unavailable result. Check the actual path in Workflow Activity. An attractive canvas is useful only when its connected outcomes do the work you expect.