{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "WorkflowDef", "type": "object", "properties": { "name": { "type": "string", "description": "The name of the workflow definition" }, "description": { "type": "string", "description": "Description of the workflow" }, "version": { "type": "integer", "description": "The version of the workflow definition" }, "tasks": { "type": "array", "description": "The list of tasks in the workflow" }, "inputParameters": { "type": "array", "description": "List of input parameter names for the workflow" }, "outputParameters": { "type": "object", "description": "Mapping of output parameters" }, "failureWorkflow": { "type": "string", "description": "Name of the workflow to execute when this workflow fails" }, "schemaVersion": { "type": "integer", "description": "Schema version (currently 2)" }, "restartable": { "type": "boolean", "description": "Whether the workflow is restartable" }, "workflowStatusListenerEnabled": { "type": "boolean", "description": "Whether to enable workflow status listener" }, "ownerEmail": { "type": "string", "description": "Email of the workflow definition owner" }, "timeoutPolicy": { "type": "string", "description": "Timeout policy for the workflow" }, "timeoutSeconds": { "type": "integer", "description": "Timeout in seconds for the workflow" }, "variables": { "type": "object", "description": "Workflow level variables" }, "inputTemplate": { "type": "object", "description": "Default input template" } } }