Workflow Schema

This document outlines the JSON schema for a Workflow in AgenticFlow.

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Workflow",
  "type": "object",
  "properties": {
    "id": { "type": "string" },
    "workspace_id": { "type": "string" },
    "user_id": { "type": "string" },
    "dataset_id": {
      "type": ["string", "null"],
      "default": null
    },
    "name": {
      "type": "string",
      "default": "Untitled workflow"
    },
    "description": {
      "type": "string",
      "default": "Untitled workflow description"
    },
    "images": {
      "type": "array",
      "items": { "type": "string" },
      "default": []
    },
    "input_schema": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string",
          "default": "Untitled"
        },
        "description": {
          "type": "string",
          "default": ""
        },
        "required": {
          "type": "array",
          "items": { "type": "string" },
          "default": []
        },
        "properties": {
          "type": "object",
          "additionalProperties": {
            "type": "object",
            "properties": {
              "type": { "type": "string" },
              "title": { "type": "string" },
              "description": {
                "type": "string",
                "default": ""
              },
              "items": {},
              "ui_metadata": {
                "type": "object",
                "properties": {
                  "order": {
                    "type": "number",
                    "default": 0
                  },
                  "type": {
                    "type": ["string", "null"]
                  },
                  "value": {}
                },
                "additionalProperties": true,
                "default": {}
              }
            },
            "required": ["title"],
            "additionalProperties": true
          },
          "default": {}
        }
      },
      "required": ["title", "description", "required", "properties"],
      "additionalProperties": true
    },
    "nodes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": ["string", "null"]
          },
          "node_type_name": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "default": ""
          },
          "input_config": {
            "type": "object",
            "additionalProperties": true
          },
          "output_mapping": {
            "type": ["object", "null"],
            "default": null
          },
          "connection": {
            "type": ["string", "null"],
            "default": null
          }
        },
        "required": ["node_type_name", "name", "input_config"],
        "additionalProperties": false
      }
    },
    "output_mapping": {
      "type": "object",
      "additionalProperties": true,
      "default": {}
    },
    "public_clone": {
      "type": "boolean",
      "default": false
    },
    "public_runnable": {
      "type": "boolean",
      "default": false
    },
    "num_likes": {
      "type": "number",
      "default": 0
    },
    "num_runs": {
      "type": "number",
      "default": 0
    },
    "num_views": {
      "type": "number",
      "default": 0
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "default": "2025-05-29T15:39:00Z"
    },
    "updated_at": {
      "type": ["string", "null"],
      "format": "date-time",
      "default": null
    }
  },
  "required": [
    "id",
    "workspace_id",
    "user_id",
    "name",
    "description",
    "images",
    "input_schema",
    "nodes",
    "output_mapping",
    "public_clone",
    "public_runnable",
    "num_likes",
    "num_runs",
    "num_views",
    "created_at",
    "updated_at"
  ],
  "additionalProperties": false
}

Last updated

Was this helpful?