Core Concepts
Steps

Steps

Overview

Steps are the building blocks of automation workflows. They represent individual actions such as "Sending an email", "Summarizing a Document", or "Extracting Information from Document". Each step has:

  • A unique name (for reference within the workflow)
  • A type (only L2 is currently supported)

L2 Steps

L2 steps are prebuilt modules of software or AI provided by the platform. These common utilities are used in workflows across various use cases. Available L2s can be found in the Hub.

L2 Step Properties

FieldTypeJSON KeyNotes
Namestringname
Typestringtype"l2"
L2Data*L2Datal2_data
Conditions[]ConditionconditionsOptional

L2Data Properties

FieldTypeJSON Key
Providerstringprovider
Modulestringmodule
Actionstringaction
InputDatainterfaceinput_data

Conditions

Conditions determine whether a step should be executed. They are evaluated before the step runs and are based on the output of previous steps. Currently, only path-based conditions and equality checks are supported.

Condition Properties

FieldTypeJSON KeyDescription
DataPathstringdata_pathPath to the value to be compared (using JSONPath)
ValueanyvalueThe value to compare against

Conditions are evaluated before a step runs. The system compares the value found at the specified DataPath with the provided Value. If they match, the condition is considered met, and the step will execute. If they don't match, the step will be skipped.

Example

Here's an example of an L2 step with a condition:

{
  "name": "slack_2",
  "type": "l2",
  "l2_data": {
    "provider": "slack",
    "module": "bot",
    "action": "send_message",
    "input_data": { "channel": "test", "message": "Hello, World!" }
  },
  "conditions": [
    {"data_path": "$.output_data.status", "value": "success"}
  ]
}