Blocks & Flow EditorCommon

catch

Capture errors from blocks and route to error-handling logic

The catch block captures errors thrown by upstream blocks and sends error details to an error-handling path instead of failing the entire flow silently.

Bot Studio catch block configuration with scope and block selection

Configuration

FieldDescription
Catch errors fromall blocks — catch errors from every block on the current tab. selected blocks — catch only from blocks you pick in the list below.
Ignore errors handled by other Catch blocksWhen checked, this catch block only receives errors not already handled by another catch block upstream.
Select blocks(Selected blocks mode) Click select blocks to choose which blocks this catch monitors. Use the filter box to search by block name or type.
NameOptional display label. Defaults to catch: all or catch: N for selected scope.

Outputs

PortDescription
Output 1Error message object when a monitored block fails. Contains msg.error with message, source (block id), and error details.

Error message properties

PropertyDescription
msg.error.messageHuman-readable error description
msg.error.source.idID of the block that threw the error
msg.error.source.typeBlock type that failed

Notes

  • catch has no input port — it listens passively for errors in its scope
  • Wire the catch output to logging (print), notification (popup), or an end block with Failed status
  • Use selected blocks to catch errors only from risky operations (HTTP, database, browser)
  • Nested catch blocks: enable Ignore errors handled by other Catch blocks to avoid duplicate handling

Example error flow

[start] → [http request] → [process response] → [end]
              ↓ (on error)
          [catch] → [print] → [end (Failed)]