BugBug · Schema

StepResponse

CompanyTestingAutomationSoftware-as-a-ServiceLow-CodeNo-Code
View JSON Schema on GitHub

JSON Schema

bugbug-io-step-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/bugbug-io/json-schema/bugbug-io-step-response-schema.json",
  "title": "StepResponse",
  "x-generated": "2026-11-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/bugbug-io-openapi.json#/components/schemas/StepResponse",
  "oneOf": [
    {
      "$ref": "#/$defs/V2AnswerPromptStep"
    },
    {
      "$ref": "#/$defs/AssertStep"
    },
    {
      "$ref": "#/$defs/PastFromClipboardStep"
    },
    {
      "$ref": "#/$defs/ChangeStep"
    },
    {
      "$ref": "#/$defs/ClearStep"
    },
    {
      "$ref": "#/$defs/ClickStep"
    },
    {
      "$ref": "#/$defs/CloseTabStep"
    },
    {
      "$ref": "#/$defs/V2DragAndDropStep"
    },
    {
      "$ref": "#/$defs/ElementVisualRegressionStep"
    },
    {
      "$ref": "#/$defs/ExecuteStep"
    },
    {
      "$ref": "#/$defs/GotoStep"
    },
    {
      "$ref": "#/$defs/OpenInboxStep"
    },
    {
      "$ref": "#/$defs/GoBackStep"
    },
    {
      "$ref": "#/$defs/GoForwardStep"
    },
    {
      "$ref": "#/$defs/HoverStep"
    },
    {
      "$ref": "#/$defs/IfConditionStep"
    },
    {
      "$ref": "#/$defs/MouseDownStep"
    },
    {
      "$ref": "#/$defs/MouseMoveStep"
    },
    {
      "$ref": "#/$defs/MouseUpStep"
    },
    {
      "$ref": "#/$defs/NewTabStep"
    },
    {
      "$ref": "#/$defs/PageVisualRegressionStep"
    },
    {
      "$ref": "#/$defs/ReloadPageStep"
    },
    {
      "$ref": "#/$defs/ScrollStep"
    },
    {
      "$ref": "#/$defs/SelectStep"
    },
    {
      "$ref": "#/$defs/SetLocalVariableStep"
    },
    {
      "$ref": "#/$defs/SwitchContext"
    },
    {
      "$ref": "#/$defs/TypeStep"
    },
    {
      "$ref": "#/$defs/UploadStep"
    }
  ],
  "$defs": {
    "AssertStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        },
        "continueOnFailure": {
          "type": "boolean",
          "default": false
        },
        "assertionProperty": {
          "enum": [
            "checked",
            "count",
            "customJavaScript",
            "exist",
            "notChecked",
            "notExist",
            "notVisible",
            "textContent",
            "hasAttribute",
            "hasNotAttribute",
            "value",
            "visible",
            "pageTitle",
            "pageShowsText",
            "pageDoesNotShowText",
            "pageUrlIs",
            "downloadStarted",
            "variableValue",
            "clipboardValue",
            "disabled",
            "notDisabled"
          ],
          "type": "string",
          "description": "* `checked` - Checked\n* `count` - Count\n* `customJavaScript` - Custom Javascript\n* `exist` - Exist\n* `notChecked` - Not Checked\n* `notExist` - Not Exist\n* `notVisible` - Not Visible\n* `textContent` - Text Content\n* `hasAttribute` - Has Attribute\n* `hasNotAttribute` - Has Not Attribute\n* `value` - Value\n* `visible` - Visible\n* `pageTitle` - Page Has Title\n* `pageShowsText` - Page Shows Text\n* `pageDoesNotShowText` - Page Does Not Show Text\n* `pageUrlIs` - Page Url Is\n* `downloadStarted` - Download Started\n* `variableValue` - Variable Value\n* `clipboardValue` - Clipboard Value\n* `disabled` - Disabled\n* `notDisabled` - Not Disabled",
          "x-spec-enum-id": "b5d5334dffa133aa"
        },
        "assertionType": {
          "enum": [
            "contain",
            "equal",
            "greaterThan",
            "lessThan",
            "match",
            "notContain",
            "notEqual",
            "notMatch",
            "any"
          ],
          "type": "string",
          "description": "* `contain` - Contain\n* `equal` - Equal\n* `greaterThan` - Greater Than\n* `lessThan` - Less Than\n* `match` - Match\n* `notContain` - Not Contain\n* `notEqual` - Not Equal\n* `notMatch` - Not Match\n* `any` - Any",
          "x-spec-enum-id": "6003949797c000b0"
        },
        "assertionCaseInsensitive": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "assertionAttributeName": {
          "type": [
            "string",
            "null"
          ]
        },
        "assertionExpectedValue": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 10000
        },
        "assertionJavaScript": {
          "type": [
            "string",
            "null"
          ],
          "description": "Required for assert and ifCondition steps. Send an empty string when unused."
        },
        "assertionVariableName": {
          "type": [
            "string",
            "null"
          ],
          "description": "Required for assert and ifCondition steps. Send an empty string when unused."
        }
      },
      "required": [
        "assertionExpectedValue",
        "assertionJavaScript",
        "assertionProperty",
        "assertionType",
        "assertionVariableName",
        "id",
        "originGroupId",
        "type"
      ]
    },
    "ChangeStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "value": {
          "type": "string"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type",
        "value"
      ]
    },
    "ClearStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type"
      ]
    },
    "ClickStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "interactionPosition": {
          "enum": [
            "smart",
            "custom",
            "topLeft",
            "topCenter",
            "topRight",
            "middleLeft",
            "middleCenter",
            "middleRight",
            "bottomLeft",
            "bottomCenter",
            "bottomRight"
          ],
          "type": "string",
          "x-spec-enum-id": "2e099846a5a8de41",
          "description": "Required interaction target position. auto is not supported.\n\n* `smart` - Smart\n* `custom` - Custom\n* `topLeft` - Top Left\n* `topCenter` - Top Center\n* `topRight` - Top Right\n* `middleLeft` - Middle Left\n* `middleCenter` - Middle Center\n* `middleRight` - Middle Right\n* `bottomLeft` - Bottom Left\n* `bottomCenter` - Bottom Center\n* `bottomRight` - Bottom Right"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        }
      },
      "required": [
        "id",
        "interactionPosition",
        "originGroupId",
        "type"
      ]
    },
    "CloseTabStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type"
      ]
    },
    "ElementVisualRegressionStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "visualRegressionMaxDiff": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "maximum": 100,
          "minimum": 0
        },
        "visualRegressionRefScreenshots": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": {}
          },
          "readOnly": true
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        }
      },
      "required": [
        "id",
        "originGroupId",
        "selectorsPresets",
        "type",
        "visualRegressionRefScreenshots"
      ]
    },
    "ExecuteStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "code": {
          "type": "string"
        }
      },
      "required": [
        "code",
        "id",
        "originGroupId",
        "type"
      ]
    },
    "GoBackStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type"
      ]
    },
    "GoForwardStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type"
      ]
    },
    "GotoStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "url": {
          "type": "string"
        },
        "username": {
          "type": [
            "string",
            "null"
          ]
        },
        "password": {
          "type": [
            "string",
            "null"
          ]
        },
        "frameLocation": {
          "type": "string"
        }
      },
      "required": [
        "id",
        "originGroupId",
        "type",
        "url"
      ]
    },
    "HoverStep": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "interactionPosition": {
          "enum": [
            "smart",
            "custom",
            "topLeft",
            "topCenter",
            "topRight",
            "middleLeft",
            "middleCenter",
            "middleRight",
            "bottomLeft",
            "bottomCenter",
            "bottomRight"
          ],
          "type": "string",
          "x-spec-enum-id": "2e099846a5a8de41",
          "description": "Required interaction target position. auto is not supported.\n\n* `smart` - Smart\n* `custom` - Custom\n* `topLeft` - Top Left\n* `topCenter` - Top Center\n* `topRight` - Top Right\n* `middleLeft` - Middle Left\n* `middleCenter` - Middle Center\n* `middleRight` - Middle Right\n* `bottomLeft` - Bottom Left\n* `bottomCenter` - Bottom Center\n* `bottomRight` - Bottom Right"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        }
      },
      "required": [
        "id",
        "interactionPosition",
        "originGroupId",
        "type"
      ]
    },
    "IfConditionStep": {
      "type": "object",
      "description": "If condition steps reuse assertion_* fields as the branch condition.",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "readOnly": true
        },
        "atIndex": {
          "type": [
            "integer",
            "null"
          ],
          "writeOnly": true
        },
        "type": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 255
        },
        "blockId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "groupId": {
          "type": [
            "string",
            "null"
          ],
          "format": "uuid"
        },
        "originGroupId": {
          "type": "string",
          "readOnly": true
        },
        "notes": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 1024
        },
        "isActive": {
          "type": "boolean",
          "default": true
        },
        "runTimeout": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "sleep": {
          "type": [
            "number",
            "null"
          ],
          "format": "double",
          "minimum": 0,
          "maximum": 300
        },
        "waitingConditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateStepWaitingCondition"
          }
        },
        "source": {
          "enum": [
            "api",
            "agent"
          ],
          "type": "string",
          "description": "* `api` - api\n* `agent` - agent",
          "x-spec-enum-id": "5dfddef03fa80cad",
          "writeOnly": true,
          "default": "api"
        },
        "selectorsPresets": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/UpdateSelectorsPresetGroup"
          }
        },
        "assertionProperty": {
          "enum": [
   

# --- truncated at 32 KB (82 KB total) ---
# Full source: https://artifacts.apis.io/bugbug-io/json-schema/bugbug-io-step-response-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/bugbug-io-step-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.