Boltic · Schema

Boltic Workflow

A Boltic automation workflow consisting of triggers, nodes, and execution configuration for orchestrating tasks across integrations.

AutomationDataSyncGatewaysNoCodeStreamingWorkflows

Properties

Name Type Description
id string Unique identifier for the workflow
name string Human-readable name for the workflow
description string Description of what the workflow does
status string Current status of the workflow
trigger object
nodes array Ordered list of action nodes in the workflow
tags array Tags for categorizing the workflow
executionCount integer Total number of times this workflow has been executed
lastExecutedAt string Timestamp of the last execution
createdAt string
updatedAt string
View JSON Schema on GitHub

JSON Schema

boltic-workflow.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/boltic/refs/heads/main/json-schema/boltic-workflow.json",
  "title": "Boltic Workflow",
  "description": "A Boltic automation workflow consisting of triggers, nodes, and execution configuration for orchestrating tasks across integrations.",
  "type": "object",
  "required": ["id", "name", "status", "trigger"],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the workflow"
    },
    "name": {
      "type": "string",
      "description": "Human-readable name for the workflow"
    },
    "description": {
      "type": "string",
      "description": "Description of what the workflow does"
    },
    "status": {
      "type": "string",
      "enum": ["active", "inactive", "draft"],
      "description": "Current status of the workflow"
    },
    "trigger": {
      "$ref": "#/$defs/trigger"
    },
    "nodes": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/node"
      },
      "description": "Ordered list of action nodes in the workflow"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tags for categorizing the workflow"
    },
    "executionCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Total number of times this workflow has been executed"
    },
    "lastExecutedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of the last execution"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time"
    }
  },
  "$defs": {
    "trigger": {
      "type": "object",
      "required": ["type"],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": ["http", "schedule", "webhook", "copilot", "table-change", "manual"],
          "description": "Type of trigger that initiates the workflow"
        },
        "config": {
          "type": "object",
          "additionalProperties": true,
          "description": "Trigger-specific configuration"
        },
        "methods": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": ["GET", "POST", "PUT", "DELETE"]
          },
          "description": "HTTP methods for HTTP triggers"
        }
      }
    },
    "node": {
      "type": "object",
      "required": ["type", "name"],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": ["integration", "transformation", "destination", "condition", "loop", "ai"],
          "description": "Type of workflow node"
        },
        "name": {
          "type": "string"
        },
        "integrationId": {
          "type": "string",
          "description": "Reference to the integration this node uses"
        },
        "config": {
          "type": "object",
          "additionalProperties": true
        },
        "position": {
          "type": "object",
          "properties": {
            "x": { "type": "number" },
            "y": { "type": "number" }
          }
        },
        "connections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "targetNodeId": { "type": "string" },
              "condition": { "type": "string" }
            }
          }
        }
      }
    }
  }
}