Return False
Overview
Return false immediately terminates the flow and returns a false result. This is a terminal stage. Important: the flow itself still completes as a success. Only the returned result value is false, the flow status is not changed to failed. To actually fail or cancel a flow, route to an Error exit on another stage instead.
Return false
Where to find it: Flow Control > Return in the stage library.
Configuration
This stage has no configuration fields. Only stage comment/notes are available.
Exit Points
This stage has no exit points - it terminates the flow immediately.
Result: Flow status remains Success. Only the returned result value is set to false.
How It Works
When executed, the stage:
- Sets the result value to false and terminates the flow - no further stages execute
- Flow still completes as a success - the flow status is not marked failed
- Preserves all variables - Accumulated variables remain available in the response
Key behavior: Always terminates the flow with a false result, but the flow itself still completes as a success. No conditions or configuration.
Common Use Cases
1. Conditional Failure
Return failure when condition is not met.
- Route Flow:
{{status}}EqualActive - Pass branch: [continue processing] → Return true
- Fail branch:
- Add To Response:
error→Status not active - Return false
- Add To Response:
Result: Failure if status ≠ Active.
2. Validation Failure
Return error response when validation fails.
- Route Flow:
{{amount}}GreaterThan0 - Pass branch: [process] → Return true
- Fail branch:
- Add To Response:
error→Invalid amount - Add To Response:
code→400 - Return false
- Add To Response:
Result: Returns an error response with the result value set to false (the flow status still stays success).
3. Exception Handling
Propagate failure if API call fails.
- Call API: external_service (can fail)
- Route Flow:
{{apiSuccess}}Equaltrue - Pass: [continue] → Return true
- Fail:
- Add To Response:
error→API call failed - Return false
- Add To Response:
Result: Propagate failure if API returns error.
4. Multiple Validation Points
Fail at first validation error, success only if all pass.
- Route Flow:
{{email}}Contains@- Fail: Return false (invalid email)
- Route Flow:
{{age}}GreaterThanEqual18- Fail: Return false (too young)
- [process] → Return true
Result: Fail at first validation error, success only if all pass.
Best Practices
- ✓ Add error details before Return false (error message, error code)
- ✓ Combine with Route Flow to conditionally return failure
- ✓ Use as explicit failure indicator in complex flows
- ✓ Add stage comment to document the failure reason (e.g., "Failure - validation did not pass")
- ✓ Pair with Return true for clear success/failure paths
- ✓ Include error context (failure reason, timestamp, validation error)
Common Mistakes
| Mistake | Symptom | Fix |
|---|---|---|
| Expecting conditions | Stage always fails regardless of prior stages | This stage always fails - use Route Flow before it for conditional logic |
| Connecting output to Return false | Can't connect stages after Return false | Terminal stage has no exit points - nothing connects to it |
| Multiple returns in sequence | Only first Return false executes | Flow terminates at first Return false - subsequent stages don't run |
| No error details in response | Clients don't know why flow failed | Add error fields BEFORE Return false (error message, code, details) |
Troubleshooting
| Issue | Common Cause | Fix |
|---|---|---|
| Flow still continues | Another stage connected after Return false | Remove/reconnect stages - Return false must be last |
| Expecting the flow status to show failure | Return false only sets the result value to false | By design the flow status is always success, whether you use Return true or Return false. To fail a flow, route to an Error exit instead |
| Response missing error details | No Add To Response stages before Return false | Add error fields before this stage |
| Error fields missing | Add To Response stages placed after Return false | Move Add To Response stages BEFORE Return false |
Do's and Don'ts
Do:
- ✓ Use at end of error handling branch
- ✓ Combine with Route Flow to conditionally return failure
- ✓ Use as explicit failure indicator in complex flows
- ✓ Place after error-specific response fields (error message, error code)
Don't:
- ✗ Expect further stages to execute after Return false
- ✗ Use multiple Return false stages in sequence (second won't execute)
- ✗ Connect anything to return points (there are none)
- ✗ Assume Return false changes the overall flow status; it only sets the true/false result value (the flow still reports success)
Edge Cases
- No prior stages: Return false still returns a false result (can use as a bare false response)
- Variables not initialized: Variables don't affect outcome (always returns a false result)
- Error fields added before Return false: All fields included in response
- Called after successful stages: Still returns a false result; the flow status stays success either way
Related Stages
- Return true: Return a true result instead of false
- Add To Response (Fixed): Add fields before returning success
- Add To Response (Dynamic): Add fields before returning success
- Route Flow: Conditionally choose Return true vs Return false