{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "id": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "flowVersionId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "flowId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "creationDate": { "type": "string", "format": "date-time" }, "lastUpdated": { "type": "string", "format": "date-time" }, "version": { "type": "string", "minLength": 1, "maxLength": 255 }, "notes": { "type": "string", "maxLength": 32767 }, "enabled": { "type": "boolean" }, "triggers": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "enum": [ "deviceId", "deviceIdConnect", "deviceIdDisconnect", "deviceTag", "deviceTagConnect", "deviceTagDisconnect", "endpoint", "event", "mqttTopic", "integration", "timer", "virtualButton", "webhook" ] }, "config": { "type": "object" }, "meta": { "type": "object" }, "outputIds": { "type": "array", "items": { "type": "array", "items": { "type": "string", "maxLength": 255 }, "maxItems": 100 }, "maxItems": 100 } }, "additionalProperties": false, "required": [ "type" ] } }, "nodes": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "minLength": 1, "maxLength": 1024 }, "config": { "type": "object" }, "meta": { "type": "object" }, "outputIds": { "type": "array", "items": { "type": "array", "items": { "type": "string", "maxLength": 255 }, "maxItems": 100 }, "maxItems": 100 } }, "additionalProperties": false, "required": [ "type" ] } }, "globals": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "json": { "type": "string", "minLength": 1 } }, "additionalProperties": false, "required": [ "key", "json" ] } } } }