{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "name": { "type": "string", "minLength": 1, "maxLength": 255 }, "blocks": { "type": "array", "items": { "oneOf": [ { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "application-list" ] }, "config": { "type": "object", "properties": { "filter": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "bar" ] }, "config": { "type": "object", "properties": { "realTime": { "type": "boolean" }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "xAxisFormat": { "type": "string", "maxLength": 255 }, "xAxisLabel": { "type": "string", "maxLength": 255 }, "xAxisMax": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "xAxisMin": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "segments": { "type": "array", "maxItems": 255, "items": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "color": { "type": "string", "maxLength": 64 }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "label": { "type": "string", "maxLength": 255 }, "expression": { "type": "string", "maxLength": 255 }, "yAxisLabel": { "type": "string", "maxLength": 255 }, "lineWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "detectDataGaps": { "type": "boolean" }, "graphType": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "custom-chart", "custom-html" ] }, "config": { "type": "object", "properties": { "configuration": { "oneOf": [ { "type": "object", "properties": { "headContent": { "type": "string", "maxLength": 32767 }, "bodyContent": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false }, { "type": "string", "maxLength": 32767 } ] }, "segments": { "type": "array", "maxItems": 100, "items": { "oneOf": [ { "type": "object", "properties": { "queryType": { "type": "string", "enum": [ "time-series" ] }, "id": { "type": "string", "maxLength": 48 }, "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "resolution": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "null" }, { "type": "string", "maxLength": 255 } ] } }, "additionalProperties": false }, { "type": "object", "properties": { "queryType": { "type": "string", "enum": [ "gauge" ] }, "id": { "type": "string", "maxLength": 48 }, "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] } }, "additionalProperties": false }, { "type": "object", "properties": { "queryType": { "type": "string", "enum": [ "data-table" ] }, "id": { "type": "string", "maxLength": 48 }, "dataTableId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "query": { "type": "string", "maxLength": 32767 }, "queryMode": { "type": "string", "enum": [ "$or", "$and", "advanced" ] } }, "additionalProperties": false }, { "type": "object", "properties": { "queryType": { "type": "string", "enum": [ "device-info" ] }, "id": { "type": "string", "maxLength": 48 }, "attributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "excludeConnectionInfo": { "type": "boolean" }, "sortField": { "type": "string", "maxLength": 255 }, "sortDirection": { "type": "string", "maxLength": 255 }, "page": { "type": "string", "maxLength": 255 }, "perPage": { "type": "string", "maxLength": 255 }, "query": { "type": "string", "maxLength": 32767 }, "compositeStateType": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } ] } }, "vegaVersion": { "type": "string", "enum": [ "vegaLite2", "vegaLite3", "vega4", "vega5" ] } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "dashboard-list" ] }, "config": { "type": "object", "properties": { "filter": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "data-table" ] }, "config": { "type": "object", "properties": { "dataTableId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultSortColumn": { "type": "string", "maxLength": 255 }, "defaultSortDirection": { "type": "string", "enum": [ "asc", "desc", "ASC", "DESC", "" ] }, "query": { "type": "string", "maxLength": 32767 }, "queryMode": { "type": "string", "enum": [ "$or", "$and", "advanced" ] }, "columns": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "type": { "oneOf": [ { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, { "type": "string", "enum": [ "$custom" ] } ] }, "headerTemplate": { "type": "string", "maxLength": 1024 }, "rowTemplate": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "device-count" ] }, "config": { "type": "object", "properties": { "segments": { "type": "array", "minItems": 1, "maxItems": 100, "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "query": { "type": "string", "maxLength": 32767 } }, "required": [ "id", "query" ], "additionalProperties": false } }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "defaultCondition": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 32767 }, "value": { "type": "string", "maxLength": 32767 } }, "required": [ "color" ], "additionalProperties": false } }, "required": [ "segments", "defaultCondition" ], "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "device-list" ] }, "config": { "type": "object", "properties": { "additionalAttributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "excludeConnectionInfo": { "type": "boolean" }, "deviceLinkNewWindow": { "type": "boolean" }, "deviceLinkType": { "type": "string", "enum": [ "custom", "default" ] }, "deviceLinkUrl": { "type": "string", "maxLength": 2048 }, "match": { "type": "string", "enum": [ "unfiltered", "all", "any" ] }, "showPublicFilter": { "type": "boolean" }, "sortField": { "type": "string", "enum": [ "id", "creationDate", "lastUpdated", "name" ] }, "sortDirection": { "type": "string", "enum": [ "asc", "desc", "ASC", "DESC", "" ] }, "filter": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "object", "properties": { "ids": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "tags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "searchParam": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } ] }, "query": { "type": "string", "maxLength": 32767 }, "columns": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "type": { "type": "string", "enum": [ "id", "connectionStatus", "attribute", "tag", "name", "custom", "created", "updated" ] }, "source": { "type": "string", "maxLength": 255 }, "headerTemplate": { "type": "string", "maxLength": 1024 }, "rowTemplate": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "device-log" ] }, "config": { "type": "object", "properties": { "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "includeDeviceInfo": { "type": "boolean" } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "device-state-table" ] }, "config": { "type": "object", "properties": { "attributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "sortDirection": { "type": "integer", "minimum": -1, "maximum": 1 }, "sortIndex": { "type": "integer", "minimum": 0, "maximum": 100 }, "columns": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "headerTemplate": { "type": "string", "maxLength": 1024 }, "id": { "type": "string", "maxLength": 48 }, "rowTemplate": { "type": "string", "maxLength": 32767 }, "type": { "type": "string", "enum": [ "deviceTags", "deviceId", "deviceName", "timestamp", "attribute" ] }, "attribute": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "event-list" ] }, "config": { "type": "object", "properties": { "allowUpdates": { "type": "boolean" }, "query": { "type": "string", "maxLength": 32767 }, "sortDirection": { "type": "string", "enum": [ "asc", "desc", "ASC", "DESC", "" ] }, "sortField": { "type": "string", "maxLength": 255 }, "filter": { "type": "string", "maxLength": 255 }, "eventState": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "null" }, { "type": "object", "additionalProperties": false } ] }, "columnErrors": { "type": "object", "additionalProperties": false }, "columns": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "selectedTag": { "type": "string", "maxLength": 255 }, "type": { "type": "string", "enum": [ "level", "subject", "subjectWithMessage", "creationDate", "creationDateWithSource", "lastUpdatedDate", "lastUpdatedDateWithSource", "id", "state", "tag", "deviceName", "sourceId", "custom" ] }, "headerTemplate": { "type": "string", "maxLength": 1024 }, "rowTemplate": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "gauge" ] }, "config": { "type": "object", "properties": { "realTime": { "type": "boolean" }, "displayAsPercentage": { "type": "boolean" }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "gaugeMax": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "gaugeMin": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "gaugeType": { "type": "string", "enum": [ "battery", "dial", "number", "tank", "thermometer" ] }, "precision": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "precisionType": { "type": "string", "enum": [ "floating", "significant" ] }, "segment": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "color": { "type": "string", "maxLength": 64 }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "label": { "type": "string", "maxLength": 255 }, "expression": { "type": "string", "maxLength": 255 }, "yAxisLabel": { "type": "string", "maxLength": 255 }, "lineWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "detectDataGaps": { "type": "boolean" }, "graphType": { "type": "string", "maxLength": 255 } }, "additionalProperties": false }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "graph" ] }, "config": { "type": "object", "properties": { "realTime": { "type": "boolean" }, "disallowUserSelectedDuration": { "type": "boolean" }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "resolution": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "null" }, { "type": "string", "maxLength": 255 } ] }, "recharts": { "type": "boolean" }, "displayType": { "type": "string", "enum": [ "stick", "line" ] }, "segments": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "color": { "type": "string", "maxLength": 64 }, "cumulative": { "type": "boolean" }, "detectDataGaps": { "type": "boolean" }, "expression": { "type": "string", "maxLength": 255 }, "graphType": { "type": "string", "enum": [ "area", "bar", "line" ] }, "label": { "type": "string", "maxLength": 255 }, "yAxisFormat": { "type": "string", "maxLength": 255 }, "yAxisLabel": { "type": "string", "maxLength": 255 }, "yAxisMax": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "yAxisMin": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "lineType": { "type": "string", "enum": [ "monotone", "step", "stepAfter", "linear", "stepBefore" ] }, "lineWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "dotWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "heatmap" ] }, "config": { "type": "object", "properties": { "additionalAttributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "attribute": { "type": "string", "maxLength": 255 }, "centerOnDataPoints": { "type": "boolean" }, "defaultBearing": { "type": "number" }, "defaultCenter": { "type": "string", "maxLength": 255 }, "defaultPitch": { "type": "number" }, "defaultZoom": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "locationTagKey": { "oneOf": [ { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, { "type": "string", "minLength": 4, "maxLength": 255, "pattern": ".*{{.+}}.*" } ] }, "mapStyle": { "type": "string", "enum": [ "normal", "satellite" ] }, "query": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "iframe" ] }, "config": { "type": "object", "properties": { "url": { "type": "string", "maxLength": 2048 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "image" ] }, "config": { "type": "object", "properties": { "bgColor": { "type": "string", "maxLength": 64 }, "imageLinkNewWindow": { "type": "boolean" }, "imageLinkUrl": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "imageSource": { "type": "string", "enum": [ "static", "attribute" ] }, "deviceId": { "type": "string", "maxLength": 255 }, "attribute": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "image-overlay" ] }, "config": { "type": "object", "properties": { "imageUrl": { "type": "string", "maxLength": 32767 }, "backgroundColor": { "type": "string", "maxLength": 64 }, "defaultZoom": { "type": "number" }, "segments": { "type": "array", "maxItems": 300, "items": { "oneOf": [ { "type": "object", "properties": { "queryType": { "type": "string", "enum": [ "gauge" ] }, "id": { "type": "string", "maxLength": 48 }, "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] } }, "additionalProperties": false } ] } }, "overlays": { "type": "array", "maxItems": 100, "items": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "indicator", "label", "image" ] }, "size": { "type": "string", "enum": [ "small", "medium", "large" ] }, "position": { "type": "string", "minLength": 3, "maxLength": 255 }, "popupTemplate": { "type": "string", "maxLength": 32767 }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "defaultCondition": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "required": [ "type", "position", "size", "defaultCondition" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "value" ] }, "size": { "type": "string", "enum": [ "small", "medium", "large" ] }, "position": { "type": "string", "minLength": 3, "maxLength": 255 }, "popupTemplate": { "type": "string", "maxLength": 32767 }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "defaultCondition": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false }, "valueTemplate": { "type": "string", "maxLength": 255 } }, "required": [ "type", "position", "size", "defaultCondition" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "bar" ] }, "size": { "type": "string", "enum": [ "small", "medium", "large" ] }, "position": { "type": "string", "minLength": 3, "maxLength": 255 }, "popupTemplate": { "type": "string", "maxLength": 32767 }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "defaultCondition": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false }, "min": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "max": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "backgroundColor": { "type": "string", "maxLength": 64 }, "valueTemplate": { "type": "string", "maxLength": 255 }, "length": { "type": "integer", "minimum": 1, "maximum": 10 }, "orientation": { "type": "string", "enum": [ "horizontal", "vertical" ] } }, "required": [ "type", "position", "size", "defaultCondition" ], "additionalProperties": false } ] } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height", "config" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "indicator" ] }, "config": { "type": "object", "properties": { "realTime": { "type": "boolean" }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "segments": { "type": "array", "maxItems": 255, "items": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "color": { "type": "string", "maxLength": 64 }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "label": { "type": "string", "maxLength": 255 }, "expression": { "type": "string", "maxLength": 255 }, "yAxisLabel": { "type": "string", "maxLength": 255 }, "lineWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "detectDataGaps": { "type": "boolean" }, "graphType": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "conditions": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "defaultCondition": { "type": "object", "properties": { "color": { "type": "string", "maxLength": 64 }, "id": { "type": "string", "maxLength": 48 }, "label": { "type": "string", "maxLength": 32767 }, "condition": { "type": "string", "maxLength": 2048 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "shape": { "type": "string", "enum": [ "circle", "square", "triangle-down", "triangle-up", "octagon" ] } }, "additionalProperties": false } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "input" ] }, "config": { "type": "object", "properties": { "defaultMode": { "type": "string", "enum": [ "unlocked", "locked" ] }, "controls": { "type": "array", "maxItems": 100, "items": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "range" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 512 }, "color": { "type": "string", "maxLength": 64 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "defaultQuery": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false }, "max": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "min": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "step": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "defaultValue": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "toggle" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 512 }, "color": { "type": "string", "maxLength": 64 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "defaultQuery": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false }, "defaultValue": { "type": "boolean" }, "includeLabel": { "type": "boolean" } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "text" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 512 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "defaultQuery": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false }, "defaultValue": { "type": "string", "maxLength": 2048 } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "select" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 512 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "defaultQuery": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false }, "defaultValue": { "type": "string", "maxLength": 255 }, "options": { "type": "array", "maxItems": 500, "items": { "type": "object", "properties": { "value": { "type": "string", "maxLength": 255 }, "label": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "help" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "help": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "button" ] }, "action": { "type": "string", "enum": [ "workflow", "command" ] }, "id": { "type": "string", "maxLength": 48 }, "templateId": { "type": "string", "maxLength": 64 }, "label": { "type": "string", "maxLength": 512 }, "grid": { "type": "object", "properties": { "h": { "type": "number" }, "w": { "type": "number" }, "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "color": { "type": "string", "maxLength": 64 }, "payload": { "type": "string", "maxLength": 32767 }, "buttonId": { "type": "string", "maxLength": 255 }, "workflowId": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "null" } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "commandName": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } ] } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "map" ] }, "config": { "type": "object", "properties": { "additionalAttributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "attribute": { "type": "string", "maxLength": 255 }, "centerOnDataPoints": { "type": "boolean" }, "clusterPoints": { "type": "boolean" }, "compositeResult": { "type": "boolean" }, "defaultBearing": { "type": "number" }, "defaultCenter": { "type": "string", "maxLength": 255 }, "defaultPitch": { "type": "number" }, "defaultZoom": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "endColor": { "type": "string", "maxLength": 64 }, "iconTemplate": { "type": "string", "maxLength": 73727 }, "includeArrows": { "type": "boolean" }, "includeLines": { "type": "boolean" }, "locationTagKey": { "oneOf": [ { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, { "type": "string", "minLength": 4, "maxLength": 255, "pattern": ".*{{.+}}.*" } ] }, "mapStyle": { "type": "string", "enum": [ "normal", "satellite" ] }, "pinMode": { "type": "string", "enum": [ "simple", "advanced" ] }, "popupTemplate": { "type": "string", "maxLength": 32767 }, "query": { "type": "string", "maxLength": 32767 }, "resizedPins": { "type": "boolean" }, "resolution": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "null" }, { "type": "string", "maxLength": 255 } ] }, "startColor": { "type": "string", "maxLength": 64 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "open-event-indicator" ] }, "config": { "type": "object", "properties": { "allowUpdates": { "type": "boolean" }, "query": { "type": "string", "maxLength": 32767 }, "filter": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "pie" ] }, "config": { "type": "object", "properties": { "realTime": { "type": "boolean" }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "percentFormat": { "type": "string", "maxLength": 255 }, "valueFormat": { "type": "string", "maxLength": 255 }, "segments": { "type": "array", "maxItems": 255, "items": { "type": "object", "properties": { "attribute": { "type": "string", "maxLength": 255 }, "aggregation": { "oneOf": [ { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, { "type": "object", "properties": { "type": { "oneOf": [ { "type": "string", "enum": [ "FIRST", "LAST", "COUNT", "MAX", "MIN", "MEDIAN", "MEAN", "SUM", "STD_DEV" ] }, { "type": "string", "enum": [ "NONE" ] } ] }, "options": { "type": "object", "additionalProperties": false } }, "additionalProperties": false, "required": [ "type" ] }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "TIMEATVALUE" ] }, "options": { "type": "object", "properties": { "value": { "oneOf": [ { "type": "string", "maxLength": 255 }, { "type": "number" }, { "type": "boolean" } ] } }, "additionalProperties": false, "required": [ "value" ] } }, "additionalProperties": false, "required": [ "type", "options" ] } ] }, "color": { "type": "string", "maxLength": 64 }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "label": { "type": "string", "maxLength": 255 }, "expression": { "type": "string", "maxLength": 255 }, "yAxisLabel": { "type": "string", "maxLength": 255 }, "lineWeight": { "type": "integer", "minimum": 0, "maximum": 5 }, "detectDataGaps": { "type": "boolean" }, "graphType": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "position-chart" ] }, "config": { "type": "object", "properties": { "additionalAttributes": { "oneOf": [ { "type": "null" }, { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } } ] }, "centerOnDataPoints": { "type": "boolean" }, "compositeResult": { "type": "boolean" }, "coordinateA": { "type": "string", "minLength": 3, "maxLength": 255 }, "coordinateB": { "type": "string", "minLength": 3, "maxLength": 255 }, "defaultCenter": { "type": "string", "maxLength": 255 }, "defaultZoom": { "oneOf": [ { "type": "number" }, { "type": "string", "maxLength": 128 } ] }, "deviceIds": { "type": "array", "maxItems": 100, "items": { "type": "string", "maxLength": 255 } }, "deviceTags": { "type": "array", "maxItems": 100, "items": { "type": "object", "properties": { "key": { "type": "string", "maxLength": 255 }, "value": { "type": "string", "maxLength": 255 }, "fromCtx": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "duration": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "string", "enum": [ "{{dashboard.duration}}" ] } ] }, "endColor": { "type": "string", "maxLength": 64 }, "iconTemplate": { "type": "string", "maxLength": 73727 }, "imageUrl": { "type": "string", "maxLength": 32767 }, "includeArrows": { "type": "boolean" }, "includeLines": { "type": "boolean" }, "pinMode": { "type": "string", "enum": [ "simple", "advanced" ] }, "pixelA": { "type": "string", "minLength": 3, "maxLength": 255 }, "pixelB": { "type": "string", "minLength": 3, "maxLength": 255 }, "popupTemplate": { "type": "string", "maxLength": 32767 }, "resizedPins": { "type": "boolean" }, "resolution": { "oneOf": [ { "type": "integer", "minimum": 0 }, { "type": "null" }, { "type": "string", "maxLength": 255 } ] }, "startColor": { "type": "string", "maxLength": 64 }, "xAttribute": { "type": "string", "maxLength": 255 }, "yAttribute": { "type": "string", "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "section-header" ] }, "config": { "type": "object", "properties": { "title": { "type": "string", "maxLength": 255 }, "content": { "type": "string", "maxLength": 32767 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false }, { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "title": { "type": "string", "maxLength": 255 }, "description": { "type": "string", "maxLength": 32767 }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "startX": { "type": "number" }, "startY": { "type": "number" }, "width": { "type": "number" }, "height": { "type": "number" }, "blockType": { "type": "string", "enum": [ "workflow-list" ] }, "config": { "type": "object", "properties": { "filter": { "type": "string", "maxLength": 255 }, "includeCloud": { "type": "boolean" }, "includeEdge": { "type": "boolean" }, "includeEmbedded": { "type": "boolean" }, "includeExperience": { "type": "boolean" }, "experienceVersion": { "type": "string", "minLength": 1, "maxLength": 255 } }, "additionalProperties": false } }, "required": [ "blockType", "startX", "startY", "width", "height" ], "additionalProperties": false } ] } }, "description": { "type": "string", "maxLength": 32767 }, "refreshRate": { "type": "number", "minimum": 5, "maximum": 600 }, "duration": { "type": "integer", "minimum": 1 }, "resolution": { "type": "integer", "minimum": 1 }, "defaultTheme": { "type": "string", "enum": [ "dark", "light" ] }, "reportConfigs": { "type": "array", "maxItems": 10, "items": { "type": "object", "properties": { "id": { "type": "string", "maxLength": 48 }, "cron": { "type": "string", "maxLength": 255 }, "toEmail": { "type": "array", "minItems": 1, "maxItems": 10, "items": { "type": "string", "format": "email", "maxLength": 1024 } }, "callbackUrl": { "type": "string", "format": "uri", "maxLength": 1024 }, "subject": { "type": "string", "maxLength": 255 }, "message": { "type": "string", "maxLength": 32767 }, "theme": { "type": "string", "enum": [ "dark", "light" ] }, "timezone": { "type": "string", "maxLength": 255 }, "locale": { "type": "string", "maxLength": 5 }, "ctx": { "title": "Dashboard Context Instance", "description": "Schema for a dashboard context instance", "type": "object", "patternProperties": { "^[0-9a-zA-Z_-]{1,255}$": { "oneOf": [ { "type": "string", "maxLength": 32767 }, { "type": "number" }, { "type": "object", "properties": { "key": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "value": { "type": "string", "minLength": 1, "maxLength": 255 } }, "additionalProperties": false } ] } }, "additionalProperties": false }, "branded": { "type": "boolean" } }, "additionalProperties": false, "anyOf": [ { "required": [ "cron", "toEmail" ] }, { "required": [ "cron", "callbackUrl" ] } ] } }, "public": { "type": "boolean" }, "password": { "type": [ "string", "null" ] }, "contextConfiguration": { "type": "array", "items": { "oneOf": [ { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "deviceAttribute" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": "string", "maxLength": 32767 }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "attributes": { "type": "array", "items": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "maxItems": 100 } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false }, { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "deviceId" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": "string", "maxLength": 32767 }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "deviceIds": { "type": "array", "items": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "maxItems": 1000 }, "deviceTags": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "value": { "type": "string", "minLength": 1, "maxLength": 255 } }, "additionalProperties": false }, "maxItems": 100 }, "includeFullDevice": { "type": "boolean" } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false }, { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "deviceTag" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": "object", "properties": { "key": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "value": { "type": "string", "minLength": 1, "maxLength": 255 } }, "additionalProperties": false }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "deviceTags": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "value": { "type": "string", "minLength": 1, "maxLength": 255 } }, "additionalProperties": false }, "maxItems": 100 } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false }, { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "number" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": [ "number", "string" ] }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false }, { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "string" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": "string", "maxLength": 32767 }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "regExp": { "type": "string", "maxLength": 1024 } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false }, { "type": "object", "properties": { "name": { "type": "string", "pattern": "^[0-9a-zA-Z_-]{1,255}$" }, "type": { "type": "string", "enum": [ "experienceUser" ] }, "applicationId": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "defaultValue": { "type": "string", "maxLength": 32767 }, "validationEnabled": { "type": "boolean" }, "validationConfig": { "type": "object", "properties": { "experienceGroupIds": { "type": "array", "items": { "type": "string", "pattern": "^[A-Fa-f\\d]{24}$" }, "maxItems": 1000 } }, "additionalProperties": false } }, "required": [ "name", "type", "defaultValue" ], "additionalProperties": false } ] }, "maxItems": 100 } }, "additionalProperties": false, "required": [ "name" ] }