Skip to content
Agentic Workflowdocs
v0.8.2Install free

concepts / flow

Error handling

Decide what happens when a step fails: retry it, carry on without it, catch it with Try / Catch, or get alerted.

Try / Catch guards a page read. The page has changed and the step fails, so the rest of the guarded steps are skipped and the Catch branch receives one item describing the failure.

Example run: Try / Catch, 1 item → Get Element Data, error → Catch branch, 1 item. Illustration of a run. The Catch item names the failed step, its error and the data it was given.

Output of Catch branch
#nodeLabelmessageinput
0Get Element DataNo element matches the selector .price{"url":"https://shop.example/p/1"}
Illustration of a run. The Catch item names the failed step, its error and the data it was given.

Double-click the step to open its settings, then:

The Settings tab of the SHA-512 step in the Hash Text example: Always Output Data and Continue On Fail are off; under Retry, Allow Retry is on and shows Max. Tries and Wait Between Tries (ms) (empty, so the defaults apply), Backoff set to fixed and Retry condition set to always. The Settings tab of the SHA-512 step in the Hash Text example: Always Output Data and Continue On Fail are off; under Retry, Allow Retry is on and shows Max. Tries and Wait Between Tries (ms) (empty, so the defaults apply), Backoff set to fixed and Retry condition set to always.

Numbered areas in the screenshot: 1. Settings tab; 2. Allow Retry; 3. Max. Tries; 4. Wait Between Tries (ms); 5. Backoff; 6. Retry condition.

Two more switches sit in the same Settings tab:

The Settings tab of the SHA-512 step in the Hash Text example: Always Output Data and Continue On Fail are off; under Retry, Allow Retry is on and shows Max. Tries and Wait Between Tries (ms) (empty, so the defaults apply), Backoff set to fixed and Retry condition set to always. The Settings tab of the SHA-512 step in the Hash Text example: Always Output Data and Continue On Fail are off; under Retry, Allow Retry is on and shows Max. Tries and Wait Between Tries (ms) (empty, so the defaults apply), Backoff set to fixed and Retry condition set to always.

Numbered areas in the screenshot: 1. Continue On Fail; 2. Always Output Data.

Retry runs first. When it’s used up, Continue On Fail decides whether the run stops or goes on.

Wire the steps you want to protect to the Try output of a Try / Catch node, and the plan B to Catch. Bring both branches back into the same step to mark where the guarded part ends.

flowchart LR
  S[Start] --> T{Try / Catch}
  T -->|Try| F[Get Element Data] --> P[Edit Fields]
  T -->|Catch| A[Send an alert]
  P --> J[Save]
  A --> J
  class T awf-flow
  class F,P awf-data
  class A awf-err
  class J awf-ok

If a guarded step fails, the rest of the Try branch is skipped and Catch runs with nodeLabel, message and input. A failure inside the Catch branch isn’t caught by the same Try: it goes to an outer Try / Catch, or ends the run.

To stop a run on purpose with a clear message, use Stop and Error.

An Error Trigger starts a workflow when a watched workflow fails. It receives the failed workflow, the step that failed, the error and its input. It fires for runs that start on their own (a schedule, a page load, a hotkey and so on), not for runs you start yourself from the designer, and not for failures a Try / Catch already handled.

One failing step ended the whole run

That’s the default. Turn on Retry or Continue On Fail in the step’s Settings tab, or guard it with Try / Catch.

A step kept retrying a “401 Unauthorized” error

Retry condition is set to Any error. Set it to Transient errors only so the step fails fast when the problem won’t go away, then fix the connection.

The steps after a Continue On Fail step get an empty item

That’s how Continue On Fail works: the failed step outputs one empty item. Add a fallback in later expressions, such as {{ $input.title || "Untitled" }}, or check for it with an IF.

The Error Trigger didn’t fire

You started the run yourself, a Try / Catch handled the failure, or the alert workflow isn’t activated. See the Error Trigger rules.

A page step fails with an element not found

The page changed, or it wasn’t ready yet. Add Wait For Element before the step, and check the selector still matches. See Browser context.

Ask Aria