Beam AI · Schema

AgentGraphNode

CompanyArtificial IntelligenceAutomationEnterprisePlatform

Properties

Name Type Description
evaluationCriteria array
agentToolConfigurationId string
toolConfiguration object
objective string
customId string
isExitNode boolean
isEntryNode boolean
agentGraphId string
xCoordinate number
yCoordinate number
onError string
isEvaluationEnabled boolean
autoRetryWhenAccuracyLessThan number
autoRetryLimitWhenAccuracyIsLow number
enableAutoRetryWhenAccuracyIsLow boolean
enableAutoRetryWhenFailure boolean
autoRetryCountWhenFailure number
autoRetryWaitTimeWhenFailureInMs number
isAttachmentDataPulledIn boolean
nodeType string
nodeConfigurations object
saveAsVersion boolean
isEdited boolean
isActiveNodeVersion boolean
userId string
autoRetryDescription string
enableAutoRetryDescription boolean
id string
createdAt string
updatedAt string
View JSON Schema on GitHub

JSON Schema

beam-ai-agent-graph-node-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/beam-ai/main/json-schema/beam-ai-agent-graph-node-schema.json",
  "title": "AgentGraphNode",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/beam-ai-openapi.json#/components/schemas/AgentGraphNode",
  "type": "object",
  "properties": {
    "evaluationCriteria": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "agentToolConfigurationId": {
      "type": "string"
    },
    "toolConfiguration": {
      "$ref": "#/$defs/AgentToolConfiguration"
    },
    "objective": {
      "type": "string"
    },
    "customId": {
      "type": "string"
    },
    "isExitNode": {
      "type": "boolean"
    },
    "isEntryNode": {
      "type": "boolean"
    },
    "agentGraphId": {
      "type": "string"
    },
    "xCoordinate": {
      "type": "number"
    },
    "yCoordinate": {
      "type": "number"
    },
    "onError": {
      "enum": [
        "CONTINUE",
        "STOP"
      ],
      "type": "string"
    },
    "isEvaluationEnabled": {
      "type": "boolean"
    },
    "autoRetryWhenAccuracyLessThan": {
      "type": "number"
    },
    "autoRetryLimitWhenAccuracyIsLow": {
      "type": "number"
    },
    "enableAutoRetryWhenAccuracyIsLow": {
      "type": "boolean"
    },
    "enableAutoRetryWhenFailure": {
      "type": "boolean"
    },
    "autoRetryCountWhenFailure": {
      "type": "number"
    },
    "autoRetryWaitTimeWhenFailureInMs": {
      "type": "number"
    },
    "isAttachmentDataPulledIn": {
      "type": "boolean"
    },
    "nodeType": {
      "enum": [
        "executionNode",
        "conditionNode",
        "waitingNode",
        "entryNode",
        "exitNode"
      ],
      "type": "string"
    },
    "nodeConfigurations": {
      "$ref": "#/$defs/NodeConfigurations"
    },
    "saveAsVersion": {
      "type": "boolean"
    },
    "isEdited": {
      "type": "boolean"
    },
    "isActiveNodeVersion": {
      "type": "boolean"
    },
    "userId": {
      "type": "string"
    },
    "autoRetryDescription": {
      "type": "string"
    },
    "enableAutoRetryDescription": {
      "type": "boolean"
    },
    "id": {
      "type": "string"
    },
    "createdAt": {
      "format": "date-time",
      "type": "string"
    },
    "updatedAt": {
      "format": "date-time",
      "type": "string"
    }
  },
  "required": [
    "evaluationCriteria",
    "toolConfiguration",
    "objective",
    "customId",
    "isExitNode",
    "isEntryNode",
    "agentGraphId",
    "onError",
    "isEvaluationEnabled",
    "autoRetryWhenAccuracyLessThan",
    "autoRetryLimitWhenAccuracyIsLow",
    "enableAutoRetryWhenAccuracyIsLow",
    "enableAutoRetryWhenFailure",
    "autoRetryCountWhenFailure",
    "autoRetryWaitTimeWhenFailureInMs",
    "isAttachmentDataPulledIn",
    "nodeType",
    "saveAsVersion",
    "isEdited",
    "isActiveNodeVersion",
    "autoRetryDescription",
    "enableAutoRetryDescription",
    "id",
    "createdAt",
    "updatedAt"
  ],
  "$defs": {
    "AgentCategoryInfo": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "title": {
          "type": "string"
        }
      }
    },
    "AgentToolConfiguration": {
      "type": "object",
      "properties": {
        "toolFunctionName": {
          "type": "string",
          "description": "Function name used to invoke this tool."
        },
        "integrationProviderId": {
          "type": "string",
          "description": "UUID of the integration provider for this tool."
        },
        "inputParams": {
          "description": "Input parameter configurations for this tool.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentToolConfigurationInputParams"
          }
        },
        "outputParamsData": {
          "description": "JSON representation of output parameters.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/CustomToolOutput"
          }
        },
        "inputParamsData": {
          "description": "JSON representation of input parameters.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/UserInputParamConfigDto"
          }
        },
        "agentId": {
          "type": "string",
          "description": "UUID of the agent this tool configuration belongs to."
        },
        "requiresConsent": {
          "type": "boolean",
          "description": "Whether user consent is required before executing this tool."
        },
        "isBackgroundTool": {
          "type": "boolean",
          "description": "Whether this tool runs in the background without blocking workflow execution."
        },
        "isMemoryTool": {
          "type": "boolean",
          "description": "Whether this tool accesses or stores data in memory."
        },
        "isBatchExecutionEnabled": {
          "type": "boolean",
          "description": "Whether this tool supports batch processing of multiple items."
        },
        "accuracyScore": {
          "type": "number",
          "description": "Accuracy score for this tool configuration."
        },
        "memoryLookupInstruction": {
          "type": "string",
          "description": "Instructions for how the tool should look up data from memory."
        },
        "preferredModel": {
          "type": "string",
          "description": "Preferred LLM model for this tool configuration"
        },
        "fallbackModels": {
          "type": "string",
          "description": "Comma-separated list of fallback models to use if preferred model fails"
        },
        "dynamicPropsId": {
          "type": [
            "string",
            "null"
          ],
          "description": "ID for dynamic properties configuration."
        },
        "outputParams": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentToolConfigurationOutputParams"
          }
        },
        "codeLanguage": {
          "type": "string"
        },
        "code": {
          "type": "string"
        },
        "originalTool": {
          "$ref": "#/$defs/ToolsViewWithIntegrationConnectionStatus"
        },
        "id": {
          "type": "string"
        },
        "createdAt": {
          "format": "date-time",
          "type": "string"
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string"
        }
      },
      "required": [
        "toolFunctionName",
        "inputParams",
        "agentId",
        "outputParams",
        "originalTool",
        "id",
        "createdAt",
        "updatedAt"
      ]
    },
    "AgentToolConfigurationInputParams": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the input parameter."
        },
        "paramName": {
          "type": "string",
          "description": "Name of the input parameter."
        },
        "position": {
          "type": "number",
          "description": "Position/order of the parameter in the input list."
        },
        "fillType": {
          "enum": [
            "ai_fill",
            "static",
            "user_fill",
            "from_memory",
            "from_task_attachment",
            "linked"
          ],
          "type": "string",
          "description": "How the parameter value should be filled."
        },
        "agentToolConfigurationId": {
          "type": "string",
          "description": "UUID of the parent tool configuration."
        },
        "question": {
          "type": "string",
          "description": "Question to ask the user when fillType is USER_FILL."
        },
        "linkParamOutputId": {
          "type": "string",
          "description": "ID of the linked output parameter for data flow."
        },
        "paramDescription": {
          "type": "string",
          "description": "Human-readable description of what this parameter represents."
        },
        "paramTip": {
          "type": [
            "string",
            "null"
          ],
          "description": "Helpful tip or hint for providing this parameter value."
        },
        "staticValue": {
          "type": "string",
          "description": "Static value to use when fillType is STATIC."
        },
        "required": {
          "type": "boolean",
          "description": "Whether this parameter is required."
        },
        "dataType": {
          "type": "string",
          "description": "Data type of the parameter."
        },
        "outputExample": {
          "type": "string",
          "description": "Example value demonstrating the expected input format."
        },
        "reloadProps": {
          "type": "boolean",
          "description": "Whether to reload dynamic properties when this parameter changes."
        },
        "remoteOptions": {
          "type": "boolean",
          "description": "Whether options are loaded from a remote source."
        },
        "options": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            }
          },
          "description": "Available options for selection-type parameters."
        },
        "createdAt": {
          "format": "date-time",
          "type": "string",
          "description": "Timestamp when the parameter was created."
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string",
          "description": "Timestamp when the parameter was last updated."
        },
        "linkOutputParam": {
          "$ref": "#/$defs/AgentToolConfigurationOutputParams"
        },
        "linkedOutputParamRules": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/LinkedOutputParamRules"
          }
        },
        "linkedParamRulePrompt": {
          "type": "string"
        },
        "ruleConditionConfig": {
          "$ref": "#/$defs/ParamRuleConditionConfig"
        }
      },
      "required": [
        "id",
        "paramName",
        "fillType",
        "agentToolConfigurationId",
        "createdAt",
        "updatedAt",
        "linkOutputParam",
        "linkedOutputParamRules"
      ]
    },
    "AgentToolConfigurationOutputParams": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the output parameter."
        },
        "paramName": {
          "type": "string",
          "description": "Name of the output parameter."
        },
        "position": {
          "type": "number",
          "description": "Position/order of the parameter in the output list."
        },
        "paramDescription": {
          "type": "string",
          "description": "Human-readable description of what this output parameter represents."
        },
        "agentToolConfigurationId": {
          "type": "string",
          "description": "UUID of the parent tool configuration."
        },
        "parentId": {
          "type": "string",
          "description": "UUID of the parent parameter for nested structures."
        },
        "paramPath": {
          "type": "string",
          "description": "JSON path to this parameter in the output structure."
        },
        "outputExample": {
          "type": "string",
          "description": "Example value demonstrating the expected output format."
        },
        "dataType": {
          "enum": [
            "string",
            "number",
            "boolean",
            "object",
            "enum"
          ],
          "type": [
            "string",
            "null"
          ],
          "description": "Data type of the output parameter."
        },
        "isArray": {
          "type": "boolean",
          "default": false,
          "description": "Whether this parameter returns an array of values."
        },
        "typeOptions": {
          "type": [
            "object",
            "null"
          ],
          "description": "Additional type-specific configuration options."
        },
        "createdAt": {
          "format": "date-time",
          "type": "string",
          "description": "Timestamp when the parameter was created."
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string",
          "description": "Timestamp when the parameter was last updated."
        }
      },
      "required": [
        "id",
        "agentToolConfigurationId",
        "isArray",
        "createdAt",
        "updatedAt"
      ]
    },
    "AgentTriggerConfigurationFiltersConditions": {
      "type": "object",
      "properties": {
        "condition": {
          "enum": [
            "is",
            "is_not",
            "contain",
            "does_not_contain",
            "any",
            "all",
            "less_than",
            "GREATER_than",
            "count",
            "exist",
            "does_not_exist"
          ],
          "type": "string"
        },
        "operator": {
          "enum": [
            "AND",
            "OR"
          ],
          "type": "string"
        },
        "property": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "required": [
        "condition",
        "operator",
        "property",
        "value"
      ]
    },
    "AgentTriggerConfigurationFiltersGroup": {
      "type": "object",
      "properties": {
        "operator": {
          "enum": [
            "AND",
            "OR"
          ],
          "type": "string"
        },
        "conditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentTriggerConfigurationFiltersConditions"
          }
        }
      },
      "required": [
        "operator",
        "conditions"
      ]
    },
    "CustomIntegrationAuthenticationMetaDTO": {
      "type": "object",
      "properties": {
        "clientId": {
          "type": "string"
        },
        "customOAuthUrl": {
          "type": "string"
        },
        "clientSecret": {
          "type": "string"
        },
        "authorizationUrl": {
          "type": "string"
        },
        "accessTokenUrl": {
          "type": "string"
        },
        "refreshTokenUrl": {
          "type": "string"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "apiKeyType": {
          "type": "string",
          "enum": [
            "default",
            "bearer",
            "header",
            "query"
          ]
        },
        "grantType": {
          "type": "string",
          "enum": [
            "client_credentials",
            "authorization_code"
          ]
        },
        "parameter": {
          "type": "string"
        },
        "clientAuthentication": {
          "type": "string",
          "enum": [
            "headers",
            "body"
          ]
        }
      },
      "required": [
        "clientId",
        "clientSecret",
        "authorizationUrl",
        "accessTokenUrl",
        "refreshTokenUrl",
        "scopes",
        "apiKeyType",
        "grantType",
        "parameter",
        "clientAuthentication"
      ]
    },
    "CustomIntegrationToolBodyParamsDTO": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "parameterHint": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        }
      },
      "required": [
        "key",
        "parameterHint",
        "type",
        "required"
      ]
    },
    "CustomIntegrationToolQueryParamsDTO": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "parameterHint": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        }
      },
      "required": [
        "key",
        "parameterHint",
        "required"
      ]
    },
    "CustomIntegrationToolUrlParamsDTO": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "parameterHint": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        }
      },
      "required": [
        "key",
        "parameterHint",
        "required"
      ]
    },
    "CustomToolOutput": {
      "type": "object",
      "properties": {
        "position": {
          "type": "number"
        },
        "paramName": {
          "type": "string"
        },
        "paramDescription": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "agentToolConfigurationId": {
          "type": "string"
        },
        "dataType": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "string",
            "number",
            "boolean",
            "object",
            "enum"
          ]
        },
        "isArray": {
          "type": "boolean"
        },
        "typeOptions": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": true
        },
        "parentId": {
          "type": "string"
        },
        "paramPath": {
          "type": "string"
        },
        "outputExample": {
          "type": "string"
        }
      }
    },
    "GetToolsMetaDto": {
      "type": "object",
      "properties": {
        "integration_provider_details": {
          "$ref": "#/$defs/IntegrationProviderDetails"
        },
        "agent_category": {
          "$ref": "#/$defs/AgentCategoryInfo"
        },
        "payload": {
          "type": "string"
        },
        "tool_name": {
          "type": "string"
        },
        "function_name": {
          "type": "string"
        },
        "requires_consent": {
          "type": "boolean"
        },
        "requires_translation": {
          "type": "boolean"
        },
        "description": {
          "type": "string"
        },
        "required_extracted_args": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "optional_extracted_args": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "content": {
          "type": "string"
        },
        "prompt": {
          "type": "string"
        },
        "type": {
          "enum": [
            "beam_tool",
            "gpt_tool",
            "custom_gpt_tool",
            "custom_integration_tool",
            "code_executor_tool"
          ],
          "type": "string"
        },
        "integrationIdentifier": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "icon_src": {
          "type": "string"
        },
        "integration_provider_auth": {
          "type": "string"
        },
        "integration_provider_executor": {
          "type": "string"
        },
        "preferred_model": {
          "type": "string"
        },
        "integration_id": {
          "type": "string"
        },
        "apiKeyType": {
          "type": "string"
        },
        "parameter": {
          "type": "string"
        },
        "tool_category_id": {
          "type": "string"
        },
        "isActive": {
          "type": "boolean"
        },
        "agent_categories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "required_generated_args": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "optional_generated_args": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "is_memory_tool": {
          "type": "boolean"
        },
        "memory_lookup_instruction": {
          "type": "string"
        },
        "workspace_id": {
          "type": "string"
        }
      },
      "required": [
        "tool_name",
        "function_name",
        "requires_consent",
        "requires_translation",
        "description",
        "required_extracted_args",
        "content",
        "prompt",
        "type",
        "isActive"
      ]
    },
    "IntegrationCategory": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string",
          "description": "Title of the integration category."
        },
        "id": {
          "type": "string"
        },
        "createdAt": {
          "format": "date-time",
          "type": "string"
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string"
        }
      },
      "required": [
        "title",
        "id",
        "createdAt",
        "updatedAt"
      ]
    },
    "IntegrationProvider": {
      "type": "object",
      "properties": {
        "userId": {
          "type": "string"
        },
        "credentialId": {
          "type": "string"
        },
        "connectionName": {
          "type": "string"
        },
        "integration": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "integrationId": {
          "type": "string"
        },
        "isOAuth2": {
          "type": "boolean"
        },
        "provider": {
          "enum": [
            "custom",
            "nango",
            "nango_cloud",
            "pipedream",
            "none"
          ],
          "type": "string"
        },
        "workspace": {
          "type": "string"
        },
        "tokenExpiresIn": {
          "type": "number"
        },
        "credentials": {
          "type": "object"
        },
        "isDefault": {
          "type": "boolean"
        },
        "creator": {
          "$ref": "#/$defs/User"
        },
        "id": {
          "type": "string"
        },
        "createdAt": {
          "format": "date-time",
          "type": "string"
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string"
        }
      },
      "required": [
        "userId",
        "credentialId",
        "connectionName",
        "integration",
        "status",
        "isOAuth2",
        "provider",
        "workspace",
        "tokenExpiresIn",
        "credentials",
        "isDefault",
        "creator",
        "id",
        "createdAt",
        "updatedAt"
      ]
    },
    "IntegrationProviderDetails": {
      "type": "object",
      "properties": {
        "request": {
          "$ref": "#/$defs/IntegrationProviderRequest"
        },
        "response": {
          "type": "object"
        }
      }
    },
    "IntegrationProviderRequest": {
      "type": "object",
      "properties": {
        "endpoint": {
          "type": "string"
        },
        "method": {
          "type": "string"
        },
        "query": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "body": {
          "type": "object"
        },
        "bypassTLS": {
          "type": "boolean"
        }
      }
    },
    "IntegrationsViewEntity": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the integration."
        },
        "name": {
          "type": "string",
          "description": "Name of the integration."
        },
        "description": {
          "type": "string",
          "description": "Description of the integration."
        },
        "systemIntegrationIdentifier": {
          "type": "string",
          "description": "System integration identifier."
        },
        "integrationCategoryId": {
          "type": "string",
          "description": "UUID of the integration category."
        },
        "iconSrc": {
          "type": "string",
          "description": "Icon source URL."
        },
        "type": {
          "enum": [
            "integration",
            "custom_integration"
          ],
          "type": "string",
          "description": "Type of integration."
        },
        "userId": {
          "type": "string",
          "description": "UUID of the user."
        },
        "workspaceId": {
          "type": "string",
          "description": "UUID of the workspace."
        },
        "privacyPolicyUrl": {
          "type": "string",
          "description": "Privacy policy URL."
        },
        "shortDescription": {
          "type": "string",
          "description": "Short description of the integration."
        },
        "longDescription": {
          "type": "string",
          "description": "Detailed description of the integration."
        },
        "systemIntegrationProvider": {
          "type": "string",
          "description": "System integration provider."
        },
        "customAuthParameters": {
          "type": "object",
          "description": "Custom authentication parameters."
        },
        "category": {
          "type": "string",
          "description": "Category of the integration."
        },
        "authenticationMeta": {
          "description": "Authentication metadata.",
          "allOf": [
            {
              "$ref": "#/$defs/CustomIntegrationAuthenticationMetaDTO"
            }
          ]
        },
        "syncModels": {
          "type": "object",
          "description": "Sync models configuration."
        },
        "isPublished": {
          "type": "boolean",
          "description": "Whether the integration is published."
        },
        "attributes": {
          "type": "object",
          "description": "Integration attributes."
        },
        "status": {
          "type": "string",
          "description": "Current status of the integration."
        },
        "customHeaders": {
          "type": "object",
          "description": "Custom headers for API requests."
        },
        "allowWaiting": {
          "type": "boolean",
          "description": "Whether the integration allows waiting."
        },
        "authType": {
          "type": "string"
        },
        "provider": {
          "$ref": "#/$defs/IntegrationProvider"
        },
        "providers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/IntegrationProvider"
          }
        },
        "integrationCategory": {
          "$ref": "#/$defs/IntegrationCategory"
        },
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Tool"
          }
        }
      },
      "required": [
        "id",
        "type",
        "provider",
        "providers",
        "integrationCategory",
        "actions"
      ]
    },
    "LinkParamsDto": {
      "type": "object",
      "properties": {
        "toolId": {
          "type": "string"
        },
        "toolFunctionName": {
          "type": "string"
        },
        "outputParam": {
          "type": "string"
        },
        "outputId": {
          "type": "string"
        }
      }
    },
    "LinkedOutputParamRuleDto": {
      "type": "object",
      "properties": {
        "elementKey": {
          "type": "string",
          "description": "Element key for the rule."
        },
        "operator": {
          "enum": [
            "equals",
            "not_equals",
            "greater_than",
            "less_than",
            "contains",
            "does_not_contain",
            "starts_with",
            "ends_with",
            "is_empty",
            "is_not_empty"
          ],
          "type": "string",
          "description": "Comparison operator for the rule."
        },
        "comparisonValueType": {
          "enum": [
            "static",
            "output_param"
          ],
          "type": "string",
          "description": "Type of the comparison value."
        },
        "comparisonValue": {
          "type": [
            "string",
            "null"
          ],
          "description": "Value to compare against."
        },
        "nextRuleOperator": {
          "enum": [
            "AND",
            "OR"
          ],
          "type": "string",
          "description": "Logical operator linking to the next rule."
        }
      },
      "required": [
        "elementKey",
        "operator",
        "comparisonValueType"
      ]
    },
    "LinkedOutputParamRules": {
      "type": "object",
      "properties": {
        "elementKey": {
          "type": "string"
        },
        "agentToolConfigurationInputParamsId": {
          "type": "string"
        },
        "operator": {
          "enum": [
            "equals",
            "not_equals",
            "greater_than",
            "less_than",
            "contains",
            "does_not_contain",
            "starts_with",
            "ends_with",
            "is_empty",
            "is_not_empty"
          ],
          "type": "string"
        },
        "comparisonValueType": {
          "enum": [
            "static",
            "output_param"
          ],
          "type": "string"
        },
        "comparisonValue": {
          "type": "string"
        },
        "nextRuleOperator": {
          "enum": [
            "AND",
            "OR"
          ],
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "createdAt": {
          "format": "date-time",
          "type": "string"
        },
        "updatedAt": {
          "format": "date-time",
          "type": "string"
        }
      },
      "required": [
        "elementKey",
        "agentToolConfigurationInputParamsId",
        "operator",
        "comparisonValueType",
        "id",
        "createdAt",
        "updatedAt"
      ]
    },
    "LinkedOutputParamRulesDto": {
      "type": "object",
      "properties": {
        "rules": {
          "description": "Array of linked output param rules.",
          "type": "array",
          "items": {
            "$ref": "#/$defs/LinkedOutputParamRuleDto"
          }
        },
        "linkedParamRulePrompt": {
          "type": "string",
          "description": "Prompt for the linked param rule."
        },
        "linkedParamConfigurations": {
          "description": "Configuration for linked param nodes.",
          "allOf": [
            {
              "$ref": "#/$defs/ParamRuleConditionConfig"
            }
          ]
        }
      },
      "required": [
        "linkedParamConfigurations"
      ]
    },
    "NodeConfigurations": {
      "type": "object",
      "properties": {
        "conditionType": {
          "enum": [
            "llm_based",
            "rule_based"
          ],
          "type": "string"
        },
        "llmModel": {
          "type": "string"
        },
        "fallbackModels": {
          "type": "string"
        },
        "waitType": {
          "enum": [
            "time_based",
            "condition_based"
          ],
          "type": "string"
        },
        "timeToWaitValue": {
          "type": "number"
        },
        "timeToWaitUnit": {
          "enum": [
            "minutes",
            "hours",
            "days",
            "months"
          ],
          "type": "string"
        },
        "linkedAgentGraphNodeId": {
          "type": "string"
        },
        "rule": {
          "type": "string"
        },
        "conditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentTriggerConfigurationFiltersGroup"
          }
        },
        "timeoutType": {
          "enum": [
            "no_timeout",
            "set_timeout"
          ],
          "type": "string"
        },
        "timeoutValue": {
          "type": "number"
        },
        "timeoutUnit": {
          "enum": [
            "minutes",
            "hours",
            "days",
            "months"
          ],
          "type": "string"
    

# --- truncated at 32 KB (52 KB total) ---
# Full source: https://artifacts.apis.io/beam-ai/json-schema/beam-ai-agent-graph-node-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/beam-ai-agent-graph-node"
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.