{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties": {
        "orgId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "applicationId": {
            "type": "string",
            "pattern": "^[A-Fa-f\\d]{24}$"
        },
        "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": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "xAxisFormat": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "xAxisLabel": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "xAxisMax": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "type": "string",
                                                "maxLength": 64
                                            }
                                        ]
                                    },
                                    "xAxisMin": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "type": "string",
                                                "maxLength": 64
                                            }
                                        ]
                                    },
                                    "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": {
                                                                            "type": "string",
                                                                            "maxLength": 255
                                                                        }
                                                                    },
                                                                    "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
                                                },
                                                "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": {
                                                                                    "type": "string",
                                                                                    "maxLength": 255
                                                                                }
                                                                            },
                                                                            "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": {
                                                            "type": "integer",
                                                            "minimum": 0
                                                        },
                                                        "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": {
                                                                                    "type": "string",
                                                                                    "maxLength": 255
                                                                                }
                                                                            },
                                                                            "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": {
                                                            "type": "integer",
                                                            "minimum": 0
                                                        }
                                                    },
                                                    "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
                                                }
                                            ]
                                        }
                                    },
                                    "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"
                                        ]
                                    }
                                },
                                "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
                                        }
                                    }
                                },
                                "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": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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"
                                                    ]
                                                }
                                            },
                                            "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": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "gaugeMax": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "type": "string",
                                                "maxLength": 64
                                            }
                                        ]
                                    },
                                    "gaugeMin": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "type": "string",
                                                "maxLength": 64
                                            }
                                        ]
                                    },
                                    "gaugeType": {
                                        "type": "string",
                                        "enum": [
                                            "battery",
                                            "dial",
                                            "number",
                                            "tank",
                                            "thermometer"
                                        ]
                                    },
                                    "precision": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "type": "string",
                                                "maxLength": 64
                                            }
                                        ]
                                    },
                                    "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": {
                                                                        "type": "string",
                                                                        "maxLength": 255
                                                                    }
                                                                },
                                                                "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
                                            },
                                            "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"
                                    },
                                    "duration": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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": {
                                                                            "type": "string",
                                                                            "maxLength": 255
                                                                        }
                                                                    },
                                                                    "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": 64
                                                        }
                                                    ]
                                                },
                                                "yAxisMin": {
                                                    "oneOf": [
                                                        {
                                                            "type": "number"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "maxLength": 64
                                                        }
                                                    ]
                                                },
                                                "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
                                    },
                                    "defaultBearing": {
                                        "type": "number"
                                    },
                                    "defaultCenter": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "defaultPitch": {
                                        "type": "number"
                                    },
                                    "defaultZoom": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "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
                                        }
                                    },
                                    "duration": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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": 100,
                                        "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": {
                                                                                    "type": "string",
                                                                                    "maxLength": 255
                                                                                }
                                                                            },
                                                                            "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": {
                                                            "type": "integer",
                                                            "minimum": 0
                                                        }
                                                    },
                                                    "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": 64
                                                                }
                                                            ]
                                                        },
                                                        "max": {
                                                            "oneOf": [
                                                                {
                                                                    "type": "number"
                                                                },
                                                                {
                                                                    "type": "string",
                                                                    "maxLength": 64
                                                                }
                                                            ]
                                                        },
                                                        "backgroundColor": {
                                                            "type": "string",
                                                            "maxLength": 64
                                                        },
                                                        "valueTemplate": {
                                                            "type": "string",
                                                            "maxLength": 255
                                                        },
                                                        "length": {
                                                            "type": "integer",
                                                            "min": 1,
                                                            "max": 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": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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": {
                                                                            "type": "string",
                                                                            "maxLength": 255
                                                                        }
                                                                    },
                                                                    "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
                                                },
                                                "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": {
                                                                                            "type": "string",
                                                                                            "maxLength": 255
                                                                                        }
                                                                                    },
                                                                                    "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": 64
                                                                }
                                                            ]
                                                        },
                                                        "min": {
                                                            "oneOf": [
                                                                {
                                                                    "type": "number"
                                                                },
                                                                {
                                                                    "type": "string",
                                                                    "maxLength": 64
                                                                }
                                                            ]
                                                        },
                                                        "step": {
                                                            "oneOf": [
                                                                {
                                                                    "type": "number"
                                                                },
                                                                {
                                                                    "type": "string",
                                                                    "maxLength": 64
                                                                }
                                                            ]
                                                        },
                                                        "defaultValue": {
                                                            "oneOf": [
                                                                {
                                                                    "type": "number"
                                                                },
                                                                {
                                                                    "type": "string",
                                                                    "maxLength": 64
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    "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": {
                                                                                            "type": "string",
                                                                                            "maxLength": 255
                                                                                        }
                                                                                    },
                                                                                    "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"
                                                        }
                                                    },
                                                    "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": {
                                                                                            "type": "string",
                                                                                            "maxLength": 255
                                                                                        }
                                                                                    },
                                                                                    "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": {
                                                                                            "type": "string",
                                                                                            "maxLength": 255
                                                                                        }
                                                                                    },
                                                                                    "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
                                    },
                                    "clusterPoints": {
                                        "type": "boolean"
                                    },
                                    "compositeResult": {
                                        "type": "boolean"
                                    },
                                    "defaultBearing": {
                                        "type": "number"
                                    },
                                    "defaultCenter": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "defaultPitch": {
                                        "type": "number"
                                    },
                                    "defaultZoom": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "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
                                        }
                                    },
                                    "duration": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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": {
                                                                            "type": "string",
                                                                            "maxLength": 255
                                                                        }
                                                                    },
                                                                    "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
                                                },
                                                "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
                                                }
                                            }
                                        ]
                                    },
                                    "compositeResult": {
                                        "type": "boolean"
                                    },
                                    "coordinateA": {
                                        "type": "string",
                                        "minLength": 3,
                                        "maxLength": 255
                                    },
                                    "coordinateB": {
                                        "type": "string",
                                        "minLength": 3,
                                        "maxLength": 255
                                    },
                                    "defaultCenter": {
                                        "type": "string",
                                        "minLength": 3,
                                        "maxLength": 255
                                    },
                                    "defaultZoom": {
                                        "oneOf": [
                                            {
                                                "type": "number"
                                            },
                                            {
                                                "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
                                        }
                                    },
                                    "duration": {
                                        "type": "integer",
                                        "minimum": 0
                                    },
                                    "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"
                                    },
                                    "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
        },
        "defaultTheme": {
            "type": "string",
            "enum": [
                "dark",
                "light"
            ]
        },
        "reportConfigs": {
            "type": "array",
            "max": 10,
            "items": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "maxLength": 48
                    },
                    "cron": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "toEmail": {
                        "type": "array",
                        "min": 1,
                        "max": 10,
                        "items": {
                            "type": "string",
                            "format": "email",
                            "maxLength": 1024
                        }
                    },
                    "subject": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "message": {
                        "type": "string",
                        "maxLength": 32767
                    },
                    "theme": {
                        "type": "string",
                        "enum": [
                            "dark",
                            "light"
                        ]
                    },
                    "timezone": {
                        "type": "string",
                        "maxLength": 255
                    }
                },
                "additionalProperties": false,
                "required": [
                    "cron",
                    "toEmail"
                ]
            }
        },
        "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"
    ]
}