API referenceImport and export
Export workflow
Export a workflow as JSON or YAML format
AuthorizationBearer <token>
JWT token for authentication
In: header
Path Parameters
id*string
Workflow UUID
Format
uuidQuery Parameters
format?string
Export format
Default
"json"Value in
- "json"
- "yaml"
Response Body
application/json
application/json
curl -X GET "https://example.com/workflows/497f6eca-6276-4993-bfeb-53cbbbba6f08/export"{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "My AI Workflow", "description": "string", "nodes": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "type": "calculator", "position": { "x": 100, "y": 200 }, "deletable": true, "data": { "label": "Math Calculator", "config": { "instanceTitle": "Email Summarizer", "instanceDescription": "Summarizes incoming emails into 3 bullet points", "instanceBadge": "LLM", "nodeType": "simple", "model": "gpt-4o-mini", "temperature": 0.7, "maxTokens": 1000, "apiKey": "sk-...", "dynamicInputs": [ { "name": "extra_data", "label": "Extra Data", "dataType": "json", "required": false } ], "dynamicOutputs": [ { "name": "result", "label": "Result", "dataType": "string" } ], "branches": [ { "name": "success", "label": "Success", "condition": "status === 200" }, { "name": "error", "label": "Error", "isDefault": true } ] }, "metadata": { "node_type_id": "calculator", "name": "Calculator", "type": "note", "supportedTypes": [ "note" ], "description": "Perform mathematical operations on input data", "category": "processing", "version": "1.0.0", "icon": "mdi:calculator", "color": "#3b82f6", "badge": "API", "portDataType": "trigger", "inputs": [ { "id": "json", "name": "JSON Response", "type": "input", "dataType": "mixed", "required": false, "description": "Parsed JSON response from the HTTP request", "defaultValue": null, "exposedByDefault": true, "displayOrder": 0, "schema": { "type": "object", "properties": { "user": { "type": "object", "title": "User", "description": "User information", "properties": { "id": { "type": "integer", "description": "User ID" }, "name": { "type": "string", "description": "User full name" }, "email": { "type": "string", "description": "User email address" }, "address": { "type": "object", "title": "Address", "properties": { "street": { "type": "string" }, "city": { "type": "string" }, "country": { "type": "string" } } } } }, "orders": { "type": "array", "title": "Orders", "description": "List of user orders", "items": { "type": "object", "properties": { "order_id": { "type": "string" }, "product_name": { "type": "string" }, "quantity": { "type": "integer" }, "price": { "type": "number" } } } } } } } ], "outputs": [ { "id": "json", "name": "JSON Response", "type": "input", "dataType": "mixed", "required": false, "description": "Parsed JSON response from the HTTP request", "defaultValue": null, "exposedByDefault": true, "displayOrder": 0, "schema": { "type": "object", "properties": { "user": { "type": "object", "title": "User", "description": "User information", "properties": { "id": { "type": "integer", "description": "User ID" }, "name": { "type": "string", "description": "User full name" }, "email": { "type": "string", "description": "User email address" }, "address": { "type": "object", "title": "Address", "properties": { "street": { "type": "string" }, "city": { "type": "string" }, "country": { "type": "string" } } } } }, "orders": { "type": "array", "title": "Orders", "description": "List of user orders", "items": { "type": "object", "properties": { "order_id": { "type": "string" }, "product_name": { "type": "string" }, "quantity": { "type": "integer" }, "price": { "type": "number" } } } } } } } ], "configSchema": { "type": "object", "properties": { "property1": { "type": "string", "title": "string", "description": "string", "default": null, "enum": [ null ], "oneOf": [ { "const": "string", "title": "string", "description": "string" } ], "multiple": true, "minimum": 0, "maximum": 0, "step": 0, "minLength": 0, "maxLength": 0, "pattern": "string", "placeholder": "string", "format": "multiline", "variables": { "ports": [ "data" ], "showHints": true, "includePortName": false }, "x-display-order": -2, "items": {}, "minItems": 0, "maxItems": 0, "properties": { "property1": {}, "property2": {} }, "autocomplete": { "url": "/api/users/search", "queryParam": "q", "minChars": 0, "debounceMs": 300, "fetchOnFocus": false, "labelField": "label", "valueField": "value", "allowFreeText": false, "multiple": false, "params": { "property1": "string", "property2": "string" } }, "readOnly": true, "height": "300px", "darkTheme": true, "autoFormat": true, "showToolbar": true, "showStatusBar": true, "spellChecker": false, "placeholderExample": "Hello {{ name }}, your order #{{ order_id }} is ready!" }, "property2": { "type": "string", "title": "string", "description": "string", "default": null, "enum": [ null ], "oneOf": [ { "const": "string", "title": "string", "description": "string" } ], "multiple": true, "minimum": 0, "maximum": 0, "step": 0, "minLength": 0, "maxLength": 0, "pattern": "string", "placeholder": "string", "format": "multiline", "variables": { "ports": [ "data" ], "showHints": true, "includePortName": false }, "x-display-order": -2, "items": {}, "minItems": 0, "maxItems": 0, "properties": { "property1": {}, "property2": {} }, "autocomplete": { "url": "/api/users/search", "queryParam": "q", "minChars": 0, "debounceMs": 300, "fetchOnFocus": false, "labelField": "label", "valueField": "value", "allowFreeText": false, "multiple": false, "params": { "property1": "string", "property2": "string" } }, "readOnly": true, "height": "300px", "darkTheme": true, "autoFormat": true, "showToolbar": true, "showStatusBar": true, "spellChecker": false, "placeholderExample": "Hello {{ name }}, your order #{{ order_id }} is ready!" } }, "required": [ "string" ], "additionalProperties": false }, "tags": [ "math", "calculation", "processing" ], "formats": [ "agentspec" ], "extensions": { "ui": { "style": { "opacity": 0.8 } }, "agentspec:component_type": "llm_node", "myapp:analytics": { "trackUsage": true, "customField": "value" } } }, "isProcessing": true, "error": "string", "executionInfo": { "status": "idle", "executionCount": 5, "lastExecuted": "2019-08-24T14:15:22Z", "lastExecutionDuration": 1500, "lastError": "string", "isExecuting": true }, "extensions": { "ui": { "style": { "opacity": 0.8 } }, "agentspec:component_type": "llm_node", "myapp:analytics": { "trackUsage": true, "customField": "value" } } } } ], "edges": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "source": "07b8e003-7027-443f-88b0-24a5eb1cc68b", "target": "65a17d54-9c67-4477-8b80-d3f97e165aa5", "sourceHandle": "string", "targetHandle": "string", "type": "default", "selectable": true, "deletable": true, "data": { "label": "string", "condition": "string", "metadata": { "edgeType": "trigger", "sourcePortDataType": "string" }, "isToolConnection": true, "targetNodeType": "string", "targetCategory": "string" } } ], "metadata": { "schemaVersion": "1.0.0", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "author": "admin", "tags": [ "ai", "production" ], "versionId": "string", "updateNumber": 0, "format": "flowdrop" }, "config": {}, "interface": { "inputs": [ { "id": "customerName", "name": "string", "description": "string", "dataType": "mixed", "required": true, "defaultValue": null, "examples": [ null ], "schema": { "type": "object", "properties": { "user": { "type": "object", "title": "User", "description": "User information", "properties": { "id": { "type": "integer", "description": "User ID" }, "name": { "type": "string", "description": "User full name" }, "email": { "type": "string", "description": "User email address" }, "address": { "type": "object", "title": "Address", "properties": { "street": { "type": "string" }, "city": { "type": "string" }, "country": { "type": "string" } } } } }, "orders": { "type": "array", "title": "Orders", "description": "List of user orders", "items": { "type": "object", "properties": { "order_id": { "type": "string" }, "product_name": { "type": "string" }, "quantity": { "type": "integer" }, "price": { "type": "number" } } } } } }, "bindings": [ { "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177", "portId": "string" } ], "meta": {} } ], "outputs": [ { "id": "customerName", "name": "string", "description": "string", "dataType": "mixed", "required": true, "defaultValue": null, "examples": [ null ], "schema": { "type": "object", "properties": { "user": { "type": "object", "title": "User", "description": "User information", "properties": { "id": { "type": "integer", "description": "User ID" }, "name": { "type": "string", "description": "User full name" }, "email": { "type": "string", "description": "User email address" }, "address": { "type": "object", "title": "Address", "properties": { "street": { "type": "string" }, "city": { "type": "string" }, "country": { "type": "string" } } } } }, "orders": { "type": "array", "title": "Orders", "description": "List of user orders", "items": { "type": "object", "properties": { "order_id": { "type": "string" }, "product_name": { "type": "string" }, "quantity": { "type": "integer" }, "price": { "type": "number" } } } } } }, "bindings": [ { "nodeId": "959356e3-6168-4a92-b4a5-b9d462be6177", "portId": "string" } ], "meta": {} } ] }}Get port configuration GET
Retrieve the complete port configuration system including available data types, compatibility rules, and default settings. This configuration determines how nodes can be connected in workflows based on port data types.
Import workflow POST
Import a workflow from JSON format. A new UUID will be assigned to the imported workflow.