{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/thingsboard/refs/heads/main/json-schema/thingsboard-rulechain-schema.json", "title": "ThingsBoard RuleChain", "description": "A JSON value representing the rule chain.", "type": "object", "properties": { "id": { "$ref": "#/components/schemas/RuleChainId", "description": "JSON object with the Rule Chain Id. Specify this field to update the Rule Chain. Referencing non-existing Rule Chain Id will cause error. Omit this field to create new rule chain." }, "createdTime": { "type": "integer", "format": "int64", "description": "Timestamp of the rule chain creation, in milliseconds", "example": 1609459200000, "readOnly": true }, "tenantId": { "$ref": "#/components/schemas/TenantId", "description": "JSON object with Tenant Id.", "readOnly": true }, "name": { "type": "string", "description": "Rule Chain name", "example": "Humidity data processing" }, "type": { "type": "string", "description": "Rule Chain type. 'EDGE' rule chains are processing messages on the edge devices only.", "enum": [ "CORE", "EDGE" ], "example": "A4B72CCDFF33" }, "firstRuleNodeId": { "$ref": "#/components/schemas/RuleNodeId", "description": "JSON object with Rule Chain Id. Pointer to the first rule node that should receive all messages pushed to this rule chain." }, "root": { "type": "boolean", "description": "Indicates root rule chain. The root rule chain process messages from all devices and entities by default. User may configure default rule chain per device profile." }, "debugMode": { "type": "boolean", "description": "Reserved for future usage." }, "version": { "type": "integer", "format": "int64" }, "configuration": { "$ref": "#/components/schemas/JsonNode" }, "additionalInfo": { "$ref": "#/components/schemas/JsonNode" } }, "required": [ "name", "tenantId" ] }