{
    "openapi": "3.0.1",
    "info": {
        "title": "IIH Essentials API",
        "description": "Description of the REST API of IIH Essentials. <br>The maximum size limit for a single request (no file) is 16 MB.<br>The connection timeout is 10 seconds.<br>Based on Anchor Asset API specification v1.0.<br>The property $anchor of the schema AggregationValue will be renamed to $pointer in the next version. <br>In all APIs, 'variableId' is equivalent to the anchor of an attribute",
        "version": "2.5.0"
    },
    "servers": [
        {
            "url": "http://localhost:4203",
            "description": "locally running iih essentials"
        },
        {
            "url": "http://edgeappdataservice:4203",
            "description": "iih essentials running in docker container"
        },
        {
            "url": "https://{ip_or_address_of_ied}/iih-essentials",
            "description": "route to iih essentials on ied",
            "variables": {
                "ip_or_address_of_ied": {
                    "default": "ipc227e.my-factory.com"
                }
            }
        }
    ],
    "tags": [
        {
            "name": "Anchor Assets",
            "description": "API to manage Assets."
        },
        {
            "name": "Anchor AssetTypes",
            "description": "API to manage AssetTypes."
        },
        {
            "name": "Anchor Aspects",
            "description": "API to manage Aspects."
        },
        {
            "name": "Anchor AspectTypes",
            "description": "API to manage AspectTypes."
        },
        {
            "name": "Anchor Entities (ex)",
            "description": "Extended API to manage Assets and Aspects in a common way."
        },
        {
            "name": "Anchor TreeItems (ex)",
            "description": "Extended API supporting a tree taking relations, compositions and aggregations into account."
        },
        {
            "name": "Anchor Attributes",
            "description": "API to manage Attributes."
        },
        {
            "name": "Anchor AttributeTypes",
            "description": "API to manage AttributeTypes."
        },
        {
            "name": "Anchor Attributes (ex)",
            "description": "Extended API to manage Attributes."
        },
        {
            "name": "Anchor Relations",
            "description": "API to manage Relations."
        },
        {
            "name": "Anchor RelationTypes",
            "description": "API to manage RelationTypes."
        },
        {
            "name": "Anchor References",
            "description": "API to manage References."
        },
        {
            "name": "Anchor ReferenceTypes",
            "description": "API to manage ReferenceTypes."
        },
        {
            "name": "Anchor Metadata",
            "description": "API to manage Metadata."
        },
        {
            "name": "Anchor Views",
            "description": "API to manage Views."
        },
        {
            "name": "Anchor Originators (ex)",
            "description": "API to manage Originators."
        },
        {
            "name": "Adapters"
        },
        {
            "name": "Aggregations"
        },
        {
            "name": "AlarmStorage"
        },
        {
            "name": "Aspects",
            "description": "This API is deprecated and supported until 31.10.2025. It is replaced by the Anchor Aspects API."
        },
        {
            "name": "AspectTypes",
            "description": "This API is deprecated and supported until 31.10.2025. It is replaced by the Anchor AspectTypes API."
        },
        {
            "name": "Assets",
            "description": "This API is deprecated and supported until 31.10.2025. It is replaced by the Anchor Assets API."
        },
        {
            "name": "Backup",
            "description": "Backup and restore of config and timeseries."
        },
        {
            "name": "Calculate",
            "description": "Hint: Variable is equivalent to attribute (variableId and variableIds = anchor of an attribute)"
        },
        {
            "name": "CalculateJobCollections",
            "description": "Hint: Variable is equivalent to attribute (variableId and variableIds = anchor of an attribute)"
        },
        {
            "name": "Data",
            "description": "Hint: Variable is equivalent to attribute (variableId and variableIds = anchor of an attribute)"
        },
        {
            "name": "DataDestination"
        },
        {
            "name": "DataRetention"
        },
        {
            "name": "DataSource"
        },
        {
            "name": "DataSync",
            "description": "Is deprecated and supported until 31.03.2026."
        },
        {
            "name": "DestinationHierarchy"
        },
        {
            "name": "Service",
            "description": "General information."
        },
        {
            "name": "Synchronization",
            "description": "Synchronization between IIH instances."
        },
        {
            "name": "Variables",
            "description": "This API is deprecated and supported until 31.10.2025. It is replaced by the Anchor Attributes API."
        },
        {
            "name": "VariableConfigurations"
        }
    ],
    "paths": {
        "/DataService/Adapters": {
            "get": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Get all adapters.",
                "description": "Get a list of all available Adapters.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AdaptersResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Create a new adapter.",
                "description": "Create a new adapter. Name must be unique and not empty, 'locked' must be set to false.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Adapter"
                            },
                            "example": {
                                "name": "Simatic Connector",
                                "type": "simaticadapter",
                                "locked": false,
                                "active": false,
                                "isDefault": false,
                                "config": {
                                    "brokerURL": "tcp://ie-databus:1883",
                                    "username": "edge",
                                    "password": "edge",
                                    "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Adapter"
                                },
                                "example": {
                                    "id": "0cb25043c8bb47de835b2573285862da",
                                    "name": "Simatic Connector",
                                    "type": "simaticadapter",
                                    "locked": false,
                                    "active": false,
                                    "isDefault": false,
                                    "canBrowse": true,
                                    "connected": false,
                                    "config": {
                                        "brokerURL": "tcp://ie-databus:1883",
                                        "username": "edge",
                                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "AdapterNameAlreadyInUse",
                                            "message": "There is already an adapter with the name 'Profinet IO Connector'.",
                                            "errorParams": {
                                                "nameInUse": "Profinet IO Connector"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Adapters"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Adapters/{id}": {
            "get": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Read an adapter.",
                "description": "Read a specific adapter with the id from path.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "profinet",
                        "in": "path",
                        "description": "adapter id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Adapter"
                                },
                                "examples": {
                                    "SimaticAdapter": {
                                        "$ref": "#/components/examples/AdapterTypeMqttExample"
                                    },
                                    "OpenPipeAdapter": {
                                        "$ref": "#/components/examples/AdapterTypeOpenPipeExample"
                                    },
                                    "GrpcAdapter": {
                                        "$ref": "#/components/examples/AdapterTypeGrpcExample"
                                    },
                                    "SystemInfoAdapter": {
                                        "$ref": "#/components/examples/AdapterTypeSystemInfoExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AdapterNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Update an adapter.",
                "description": "Update a specific adapter. Name must be unique and not empty. 'type' and 'locked' are readOnly.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "adapter id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Adapter"
                            },
                            "example": {
                                "name": "Simatic Connector",
                                "type": "simaticadapter",
                                "locked": false,
                                "active": false,
                                "isDefault": false,
                                "config": {
                                    "brokerURL": "tcp://ie-databus:1883",
                                    "username": "edge",
                                    "password": "edge",
                                    "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Adapter"
                                },
                                "example": {
                                    "id": "0cb25043c8bb47de835b2573285862da",
                                    "name": "Simatic Connector",
                                    "type": "simaticadapter",
                                    "locked": false,
                                    "active": false,
                                    "isDefault": false,
                                    "canBrowse": true,
                                    "connected": false,
                                    "config": {
                                        "brokerURL": "tcp://ie-databus:1883",
                                        "username": "edge",
                                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "AdapterNameAlreadyInUse",
                                            "message": "There is already an adapter with the name 'Profinet IO Connector'.",
                                            "errorParams": {
                                                "nameInUse": "Profinet IO Connector"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Adapters"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AdapterNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Delete an adapter.",
                "description": "Delete a specific adapter. Only not locked adapers with no variables can be deleted.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "adapter id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Adapter"
                                },
                                "example": {
                                    "id": "0cb25043c8bb47de835b2573285862da",
                                    "name": "Simatic Connector",
                                    "type": "simaticadapter",
                                    "locked": false,
                                    "active": false,
                                    "isDefault": false,
                                    "canBrowse": true,
                                    "connected": false,
                                    "config": {
                                        "brokerURL": "tcp://ie-databus:1883",
                                        "username": "edge",
                                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "IsUsed": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 7,
                                            "errorKey": "AdapterDeleteFailed_IsUsed",
                                            "message": "Adapters which are in use cannot be deleted.",
                                            "debugInfo": {
                                                "method": "DELETE",
                                                "route": "/DataService/Adapters/{id}"
                                            }
                                        }
                                    },
                                    "Locked": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 6,
                                            "errorKey": "AdapterDeleteFailed_IsLocked",
                                            "message": "System adapter can not be deleted.",
                                            "debugInfo": {
                                                "method": "DELETE",
                                                "route": "/DataService/Adapters/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AdapterNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Adapters/Values": {
            "post": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Write values via adapter.",
                "description": "Write values via adapter. Adapter tags must be configured as writeable.<br>Write operations to attributes synchronized from a child system will be delegated to the child system.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/AdapterWriteValueRequest"
                                }
                            },
                            "example": [
                                {
                                    "attributeAnchor": "eae431e9-8272-4e53-90be-29e920f8f8b4",
                                    "value": 1234
                                },
                                {
                                    "attributeAnchor": "a18ea05b-a598-4dd7-98d0-65bdc9e6e54a",
                                    "value": 12.34
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AdapterWriteValueResponse"
                                    }
                                },
                                "example": [
                                    {
                                        "attributeAnchor": "eae431e9-8272-4e53-90be-29e920f8f8b4",
                                        "success": true
                                    },
                                    {
                                        "attributeAnchor": "a18ea05b-a598-4dd7-98d0-65bdc9e6e54a",
                                        "success": false,
                                        "errorCode": "ATTRIBUTE_NOT_FOUND",
                                        "errorDescription": "The attribute with the id a18ea05b-a598-4dd7-98d0-65bdc9e6e54a was not found."
                                    }
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Adapters/{id}/browse": {
            "get": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Browse adapter.",
                "description": "Browse an active adapter that supports browsing. All available tags will be returned.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "profinet",
                        "in": "path",
                        "description": "adapter id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AdapterBrowseResponse"
                                },
                                "examples": {
                                    "Profinet": {
                                        "value": {
                                            "tags": [
                                                {
                                                    "connectionName": "profinet",
                                                    "tagName": "Int1",
                                                    "topic": "profinet::Int1::8::4",
                                                    "tagType": "DInt",
                                                    "dataType": "Int32"
                                                }
                                            ]
                                        }
                                    },
                                    "Grpc": {
                                        "value": {
                                            "tags": [
                                                {
                                                    "connectionName": "CS-Simulation-Connector",
                                                    "tagName": "Int16Saw",
                                                    "topic": "CS-Simulation-Connector::Int16Saw::23::8",
                                                    "tagType": "",
                                                    "dataType": "Int16"
                                                }
                                            ]
                                        }
                                    },
                                    "SystemInfo": {
                                        "value": {
                                            "tags": [
                                                {
                                                    "connectionName": "heapStatistics",
                                                    "tagName": "TotalHeapSize",
                                                    "topic": "total_heap_size",
                                                    "tagType": "",
                                                    "dataType": "Double"
                                                }
                                            ]
                                        }
                                    },
                                    "Not active": {
                                        "value": {
                                            "tags": [],
                                            "debugInfo": {
                                                "hint": "Adapter is not active."
                                            }
                                        }
                                    },
                                    "No browsing": {
                                        "value": {
                                            "tags": [],
                                            "debugInfo": {
                                                "hint": "Adapter does not support browsing."
                                            }
                                        }
                                    },
                                    "Not found": {
                                        "value": {
                                            "tags": [],
                                            "debugInfo": {
                                                "hint": "Active adapter not found."
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AdapterNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AdapterDiscovery": {
            "get": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Get all available adapters.",
                "description": "Search and return all available adapters. Only returns available mqtt (simaticadapter) and grpc (connectivitysuite). If the adapter already exists, the current adapter is returned.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AdapterDiscoveryResponse"
                                },
                                "examples": {
                                    "Empty": {
                                        "value": {
                                            "adapters": [],
                                            "mqttError": null,
                                            "grpcError": null
                                        },
                                        "description": "No available adapters found."
                                    },
                                    "Existing": {
                                        "value": {
                                            "adapters": [
                                                {
                                                    "id": "profinet",
                                                    "name": "Profinet IO Connector",
                                                    "type": "simaticadapter",
                                                    "locked": true,
                                                    "active": false,
                                                    "isDefault": false,
                                                    "canBrowse": true,
                                                    "config": {
                                                        "brokerURL": "tcp://ie-databus:1883",
                                                        "username": "",
                                                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                                    }
                                                }
                                            ],
                                            "mqttError": null,
                                            "grpcError": null
                                        },
                                        "description": "An existing adapter was found."
                                    },
                                    "New": {
                                        "value": {
                                            "adapters": [
                                                {
                                                    "id": "",
                                                    "name": "Profinet IO Connector",
                                                    "type": "simaticadapter",
                                                    "locked": true,
                                                    "active": false,
                                                    "isDefault": false,
                                                    "canBrowse": true,
                                                    "config": {
                                                        "brokerURL": "tcp://ie-databus:1883",
                                                        "username": "",
                                                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                                                    }
                                                }
                                            ],
                                            "mqttError": null,
                                            "grpcError": null
                                        },
                                        "description": "An unknown adapter was found."
                                    },
                                    "NoAdapterFound": {
                                        "value": {
                                            "adapters": [],
                                            "mqttError": {
                                                "service": "IIH Essentials",
                                                "state": 500,
                                                "stateText": "ServerError",
                                                "errorCode": 1,
                                                "errorKey": "InternalError",
                                                "message": "Internal error occurred.",
                                                "debugInfo": {
                                                    "what": "MQTT error [-1]: TCP/TLS connect failure"
                                                }
                                            },
                                            "grpcError": {
                                                "service": "IIH Essentials",
                                                "state": 500,
                                                "stateText": "ServerError",
                                                "errorCode": 1,
                                                "errorKey": "InternalError",
                                                "message": "Internal error occurred.",
                                                "debugInfo": {
                                                    "what": "QueryRegisteredServices failed. address = cssvcregistry:50051. status = code = 14 [UNAVAILABLE] message = DNS resolution failed"
                                                }
                                            }
                                        },
                                        "description": "Adapter not found due to errors in mqtt and grpc."
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Adapters/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by adapters.",
                "description": "Return the size of the adapters folder. Is deprecated and supported until 31.10.2025",
                "tags": [
                    "Adapters"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aggregations": {
            "get": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Get all aggregations",
                "description": "Get a list of aggregations, aggregations can be filtered by variable ids. \n\n Please note that the generated curl command and request URL should be modified, if using a filter, before using sending the request to IIH Essentials. The returned array for variableIds must be enclosed in (square) brackets [], each single string should be in quotation marks and strings should remain separated by commas, in case multiple strings are used for a filter. For instance: \n\n - For a single variableId: http://localhost:4203/DataService/Aggregations?variableIds=[\"53f05e175c0c48bd9742157c1a462ca9\"] \n\n - For multiple variableIds: http://localhost:4203/DataService/Aggregations?variableIds=[\"53f05e175c0c48bd9742157c1a462ca9\",\"eab960dcb97e4752b298387f780cba1e\"]",
                "parameters": [
                    {
                        "name": "variableIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "description": "The variable ids have to be specified as JSON array"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AggregationObject"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Create an aggregation.",
                "description": "Creates a new aggregation of an existing variable.<br>Cycle must be unique and only Second, Minute, Hour and Day are currently supported as base.<br>Allowed values for factor depend on base.<br> For 'Duration' and 'Occurrence' the aggregate options must be set.<br>",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AggregationObject"
                            },
                            "example": {
                                "aggregation": "Sum",
                                "sourceId": "39e32d19d95846f8b6a1b520893707fc",
                                "cycle": {
                                    "base": "hour",
                                    "factor": 4
                                },
                                "provideAsVariable": false,
                                "publishMqtt": false
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AggregationObject"
                                },
                                "examples": {
                                    "Aggregation": {
                                        "$ref": "#/components/examples/AggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "VariableNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.sourceId is invalid: Variable not found.",
                                            "errorParams": {
                                                "reason": "Variable not found.",
                                                "what": "body.sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "OptionsNeeded": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.aggregateOptions is invalid: statusValues needed.",
                                            "errorParams": {
                                                "reason": "statusValues needed.",
                                                "what": "body.aggregateOptions"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "InvalidCycleSecond": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle.factor is invalid: Allowed values are 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30 seconds.",
                                            "errorParams": {
                                                "reason": "Allowed values are 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30 seconds.",
                                                "what": "body.cycle.factor"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "InvalidCycleMinute": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle.factor is invalid: Allowed values are 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30 minutes.",
                                            "errorParams": {
                                                "reason": "Allowed values are 1, 2, 3, 4, 5, 6, 10, 12, 15, 20 and 30 minutes.",
                                                "what": "body.cycle.factor"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "InvalidCycleHour": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle.factor is invalid: Allowed values are 1, 2, 3, 4, 6, 8 and 12 hours.",
                                            "errorParams": {
                                                "reason": "Allowed values are 1, 2, 3, 4, 6, 8 and 12 hours.",
                                                "what": "body.cycle.factor"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "InvalidCycleDay": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle.factor is invalid: Allowed values are 1 day.",
                                            "errorParams": {
                                                "reason": "Allowed values are 1 day.",
                                                "what": "body.cycle.factor"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "InvalidCycleBase": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle.base is invalid: Allowed values are second, minute, hour and day.",
                                            "errorParams": {
                                                "reason": "Allowed values are second, minute, hour and day.",
                                                "what": "body.cycle.base"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    },
                                    "DuplicateCycle": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.cycle is invalid: There is already an aggregation with this cycle.",
                                            "errorParams": {
                                                "reason": "There is already an aggregation with this cycle.",
                                                "what": "body.cycle"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aggregations/{id}": {
            "get": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Read an aggregation",
                "description": "Return the specified aggregation.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aggregation id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AggregationObject"
                                },
                                "examples": {
                                    "AggregationObject": {
                                        "$ref": "#/components/examples/AggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AggregationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Update an aggregation.",
                "description": "Update the specified aggregation. Only allowed to update provideAsVariable and publishMqtt",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aggregation id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AggregationObject"
                            },
                            "example": {
                                "aggregation": "Sum",
                                "sourceId": "39e32d19d95846f8b6a1b520893707fc",
                                "cycle": {
                                    "base": "hour",
                                    "factor": 4
                                },
                                "provideAsVariable": false,
                                "publishMqtt": false
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AggregationObject"
                                },
                                "examples": {
                                    "Aggregation": {
                                        "$ref": "#/components/examples/AggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "VariableNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.sourceId is invalid: Variable not found.",
                                            "errorParams": {
                                                "reason": "Variable not found.",
                                                "what": "body.sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations/{id}"
                                            }
                                        }
                                    },
                                    "UpdateNotSupported": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.sourceId is invalid: Update not supported.",
                                            "errorParams": {
                                                "reason": "Update not supported.",
                                                "what": "body.sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aggregations/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AggregationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Delete an aggregation.",
                "description": "Delets the specified aggregation. All generated data is also deleted.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aggregation id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AggregationObject"
                                },
                                "examples": {
                                    "Aggregation": {
                                        "$ref": "#/components/examples/AggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AggregationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aggregations/{id}/Reset": {
            "get": {
                "tags": [
                    "Aggregations"
                ],
                "summary": "Reset an aggregation",
                "description": "Delete all generated data of the specified aggregation.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "aggregation id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AggregationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aggregations/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by aggregations.",
                "description": "Return the size of the aggregation folder. Is deprecated and supported until 31.10.2025.",
                "tags": [
                    "Aggregations"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AlarmChannels/Count": {
            "get": {
                "summary": "Get total alarm channel count",
                "description": "Return the total number of alarm channels configured in the system across all assets. This includes both active and inactive channels.",
                "tags": [
                    "AlarmStorage"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "count": {
                                            "type": "integer",
                                            "example": 10
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AlarmChannels": {
            "get": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Get alarm channels",
                "description": "Retrieves all alarm channels, can be filtered by an owner asset. An alarm channel defines how alarms from a particular source (adapter/PLC) are filtered and stored. Each alarm channel can define various filters to determine which alarms should be processed and stored in the system.",
                "parameters": [
                    {
                        "in": "query",
                        "name": "assetId",
                        "example": "9dea3dee2fad47c1bad220c93bcebbe0",
                        "description": "The id of the asset for which to retrieve alarm channels. Must be a valid asset id that exists in the system.",
                        "schema": {
                            "type": "string",
                            "minLength": 1
                        },
                        "required": false
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "description": "Response containing a list of alarm channels for a specific asset",
                                    "properties": {
                                        "alarmChannels": {
                                            "type": "array",
                                            "description": "Array of alarm channels for the requested asset",
                                            "items": {
                                                "$ref": "#/components/schemas/AlarmChannel"
                                            }
                                        }
                                    }
                                },
                                "examples": {
                                    "WithChannels": {
                                        "summary": "Asset with alarm channels",
                                        "description": "Response when the asset has configured alarm channels",
                                        "value": {
                                            "alarmChannels": [
                                                {
                                                    "id": "6eb0af16e0c940ffb342f1120c202b68",
                                                    "name": "Production Line Alarms",
                                                    "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                                    "adapterId": "s7plus-adapter-001",
                                                    "languages": [
                                                        "en-US"
                                                    ],
                                                    "areaFilter": [
                                                        "Production",
                                                        "Safety"
                                                    ],
                                                    "alarmClassFilter": [
                                                        "Warning",
                                                        "Error"
                                                    ],
                                                    "sourceFilter": [
                                                        "PLC_Main",
                                                        "PLC_Safety"
                                                    ],
                                                    "originFilter": [
                                                        "Line_1"
                                                    ],
                                                    "isActiveFilter": [
                                                        "Yes"
                                                    ],
                                                    "isAcknowledgedFilter": [
                                                        "No"
                                                    ],
                                                    "isConfirmedFilter": [],
                                                    "extendedPropertiesFilters": [
                                                        {
                                                            "name": "EquipmentType",
                                                            "value": [
                                                                "Conveyor",
                                                                "Robot",
                                                                "Sensor"
                                                            ]
                                                        },
                                                        {
                                                            "name": "Priority",
                                                            "value": [
                                                                "High",
                                                                "Critical"
                                                            ]
                                                        }
                                                    ],
                                                    "active": true,
                                                    "retention": {
                                                        "settings": {
                                                            "timeSettings": {
                                                                "timeRange": {
                                                                    "base": "day",
                                                                    "factor": 30
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    },
                                    "EmptyResult": {
                                        "summary": "No alarm channels found",
                                        "description": "Response when the asset exists but has no alarm channels configured, or when an invalid/non-existing assetId is provided. ",
                                        "value": {
                                            "alarmChannels": []
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Create a new alarm channel",
                "description": "Create a new alarm channel that defines how alarms from a specific adapter are filtered and stored. The channel name must be unique within the asset scope. When active, the channel will start receiving and processing alarms according to its filter configuration. The channel cannot be created under the root asset.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AlarmChannel"
                            },
                            "examples": {
                                "BasicChannel": {
                                    "summary": "Basic alarm channel with minimal configuration",
                                    "description": "A simple alarm channel that captures all alarms from a specific adapter without any filtering",
                                    "value": {
                                        "name": "Basic PLC Alarms",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "s7plus-adapter-001",
                                        "active": true
                                    }
                                },
                                "FilteredChannel": {
                                    "summary": "Filtered alarm channel for production monitoring",
                                    "description": "An alarm channel that filters for specific types of production-related alarms with extended properties",
                                    "value": {
                                        "name": "Production Critical Alarms",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "s7plus-adapter-001",
                                        "languages": [
                                            "en-US",
                                            "de-DE"
                                        ],
                                        "areaFilter": [
                                            "Production",
                                            "Safety"
                                        ],
                                        "alarmClassFilter": [
                                            "Error",
                                            "Critical"
                                        ],
                                        "sourceFilter": [
                                            "PLC_Main",
                                            "PLC_Safety"
                                        ],
                                        "originFilter": [
                                            "Line_1",
                                            "Line_2"
                                        ],
                                        "isActiveFilter": [
                                            "Yes"
                                        ],
                                        "isAcknowledgedFilter": [
                                            "No"
                                        ],
                                        "isConfirmedFilter": [],
                                        "extendedPropertiesFilters": [
                                            {
                                                "name": "EquipmentType",
                                                "value": [
                                                    "Motor",
                                                    "Conveyor",
                                                    "Robot"
                                                ]
                                            },
                                            {
                                                "name": "Severity",
                                                "value": [
                                                    "High",
                                                    "Critical"
                                                ]
                                            }
                                        ],
                                        "active": true,
                                        "retention": {
                                            "settings": {
                                                "timeSettings": {
                                                    "timeRange": {
                                                        "base": "day",
                                                        "factor": 30
                                                    }
                                                }
                                            }
                                        }
                                    }
                                },
                                "MaintenanceChannel": {
                                    "summary": "Maintenance alarm channel",
                                    "description": "A channel specifically for maintenance-related alarms with longer retention",
                                    "value": {
                                        "name": "Maintenance Alarms",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "maintenance-adapter-001",
                                        "areaFilter": [
                                            "Maintenance"
                                        ],
                                        "alarmClassFilter": [
                                            "Information",
                                            "Warning"
                                        ],
                                        "sourceFilter": [
                                            "MaintenanceSystem"
                                        ],
                                        "isActiveFilter": [
                                            "Yes",
                                            "No"
                                        ],
                                        "isAcknowledgedFilter": [
                                            "NotRelevant"
                                        ],
                                        "isConfirmedFilter": [
                                            "NotRelevant"
                                        ],
                                        "active": true,
                                        "retention": {
                                            "settings": {
                                                "timeSettings": {
                                                    "timeRange": {
                                                        "base": "month",
                                                        "factor": 12
                                                    }
                                                }
                                            }
                                        }
                                    }
                                },
                                "OpenPipeChannel": {
                                    "summary": "OpenPipe alarm channel with single language",
                                    "description": "An alarm channel for OpenPipe adapter which requires exactly one valid language",
                                    "value": {
                                        "name": "HMI Critical Alarms",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "openpipe-adapter-001",
                                        "languages": [
                                            "en-US"
                                        ],
                                        "areaFilter": [
                                            "HMI",
                                            "User Interface"
                                        ],
                                        "alarmClassFilter": [
                                            "Error",
                                            "Critical"
                                        ],
                                        "sourceFilter": [
                                            "HMI_Runtime"
                                        ],
                                        "isActiveFilter": [
                                            "Yes"
                                        ],
                                        "isAcknowledgedFilter": [
                                            "No",
                                            "NotRelevant"
                                        ],
                                        "active": true
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AlarmChannel"
                                },
                                "example": {
                                    "id": "6eb0af16e0c940ffb342f1120c202b68",
                                    "name": "Production Critical Alarms",
                                    "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                    "adapterId": "s7plus-adapter-001",
                                    "languages": [
                                        "en-US",
                                        "de-DE"
                                    ],
                                    "areaFilter": [
                                        "Production",
                                        "Safety"
                                    ],
                                    "alarmClassFilter": [
                                        "Error",
                                        "Critical"
                                    ],
                                    "sourceFilter": [
                                        "PLC_Main",
                                        "PLC_Safety"
                                    ],
                                    "originFilter": [
                                        "Line_1",
                                        "Line_2"
                                    ],
                                    "isActiveFilter": [
                                        "Yes"
                                    ],
                                    "isAcknowledgedFilter": [
                                        "No"
                                    ],
                                    "isConfirmedFilter": [],
                                    "extendedPropertiesFilters": [
                                        {
                                            "name": "EquipmentType",
                                            "value": [
                                                "Motor",
                                                "Conveyor",
                                                "Robot"
                                            ]
                                        },
                                        {
                                            "name": "Severity",
                                            "value": [
                                                "High",
                                                "Critical"
                                            ]
                                        }
                                    ],
                                    "active": true,
                                    "retention": {
                                        "settings": {
                                            "timeSettings": {
                                                "timeRange": {
                                                    "base": "day",
                                                    "factor": 30
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - Invalid input parameters",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingName": {
                                        "summary": "Missing required name field",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 2,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter body.name is missing",
                                            "errorParams": {
                                                "what": "body.name"
                                            }
                                        }
                                    },
                                    "MissingAssetId": {
                                        "summary": "Missing required assetId field",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 2,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter body.assetId is missing.",
                                            "errorParams": {
                                                "what": "body.assetId"
                                            }
                                        }
                                    },
                                    "MissingActive": {
                                        "summary": "Missing required active field",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 2,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter body.active is missing.",
                                            "errorParams": {
                                                "what": "body.active"
                                            }
                                        }
                                    },
                                    "AssetNotFound": {
                                        "summary": "Referenced asset does not exist",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter assetId is invalid. Reason: Entity not found.",
                                            "errorParams": {
                                                "reason": "Entity not found.",
                                                "what": "assetId"
                                            }
                                        }
                                    },
                                    "RootAssetNotAllowed": {
                                        "summary": "Cannot create alarm channel under root asset",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter assetId is invalid. Reason: Cannot create alarmChannel under root asset.",
                                            "errorParams": {
                                                "reason": "Cannot create alarmChannel under root asset.",
                                                "what": "assetId"
                                            }
                                        }
                                    },
                                    "EmptyName": {
                                        "summary": "Alarm channel name cannot be empty",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name cannot be empty.",
                                            "errorParams": {
                                                "reason": "Name cannot be empty.",
                                                "what": "name"
                                            }
                                        }
                                    },
                                    "NameAlreadyExists": {
                                        "summary": "Alarm channel name already exists in asset scope",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 87,
                                            "errorKey": "AlarmChannelNameAlreadyInUse",
                                            "message": "There is already an alarm channel with the name 'Production Alarms'.",
                                            "errorParams": {
                                                "nameInUse": "Production Alarms"
                                            }
                                        }
                                    },
                                    "InvalidLanguageConfiguration": {
                                        "summary": "Invalid language configuration for OpenPipe adapter",
                                        "description": "OpenPipe alarm channels require exactly one valid language configuration",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter languages is invalid: OpenPipe alarm channel need one and just one correct language.",
                                            "errorParams": {
                                                "reason": "OpenPipe alarm channel need one and just one correct language.",
                                                "what": "languages"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AlarmChannels/{id}": {
            "get": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Get alarm channel by channel id",
                "description": "Get a specific alarm channel by its id. Returns the complete configuration including all filter settings and retention policies.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6eb0af16e0c940ffb342f1120c202b68",
                        "in": "path",
                        "description": "The id of the alarm channel to retrieve. Must be a valid id of an existing alarm channel.",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AlarmChannel"
                                },
                                "example": {
                                    "id": "6eb0af16e0c940ffb342f1120c202b68",
                                    "name": "Production Critical Alarms",
                                    "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                    "adapterId": "s7plus-adapter-001",
                                    "languages": [
                                        "en-US",
                                        "de-DE"
                                    ],
                                    "areaFilter": [
                                        "Production",
                                        "Safety"
                                    ],
                                    "alarmClassFilter": [
                                        "Error",
                                        "Critical"
                                    ],
                                    "sourceFilter": [
                                        "PLC_Main",
                                        "PLC_Safety"
                                    ],
                                    "originFilter": [
                                        "Line_1",
                                        "Line_2"
                                    ],
                                    "isActiveFilter": [
                                        "Yes"
                                    ],
                                    "isAcknowledgedFilter": [
                                        "No"
                                    ],
                                    "isConfirmedFilter": [],
                                    "extendedPropertiesFilters": [
                                        {
                                            "name": "EquipmentType",
                                            "value": [
                                                "Motor",
                                                "Conveyor",
                                                "Robot"
                                            ]
                                        },
                                        {
                                            "name": "Severity",
                                            "value": [
                                                "High",
                                                "Critical"
                                            ]
                                        }
                                    ],
                                    "active": true,
                                    "retention": {
                                        "settings": {
                                            "timeSettings": {
                                                "timeRange": {
                                                    "base": "day",
                                                    "factor": 30
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found - Alarm channel with specified id does not exist",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "example": {
                                    "service": "IIH Essentials",
                                    "state": 404,
                                    "stateText": "NotFound",
                                    "errorCode": 4,
                                    "errorKey": "NotFound",
                                    "message": "The AlarmChannel with the id '6eb0af16e0c940ffb342f1120c202b68' was not found.",
                                    "errorParams": {
                                        "id": "6eb0af16e0c940ffb342f1120c202b68",
                                        "what": "AlarmChannel"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Update alarm channel by alarm channel id",
                "description": "Update an existing alarm channel.",
                "parameters": [
                    {
                        "in": "path",
                        "name": "id",
                        "example": "6eb0af16e0c940ffb342f1120c202b68",
                        "description": "The id of the alarm channel to update. Must be a valid id of an existing alarm channel.",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AlarmChannel"
                            },
                            "examples": {
                                "UpdateFilters": {
                                    "summary": "Update alarm channel filters",
                                    "description": "Example showing how to modify filter settings to capture different types of alarms",
                                    "value": {
                                        "name": "Production Critical Alarms - Updated",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "s7plus-adapter-001",
                                        "languages": [
                                            "en-US",
                                            "de-DE"
                                        ],
                                        "areaFilter": [
                                            "Production",
                                            "Safety",
                                            "Quality"
                                        ],
                                        "alarmClassFilter": [
                                            "Error",
                                            "Critical",
                                            "Warning"
                                        ],
                                        "sourceFilter": [
                                            "PLC_Main",
                                            "PLC_Safety",
                                            "PLC_Quality"
                                        ],
                                        "originFilter": [
                                            "Line_1",
                                            "Line_2",
                                            "Line_3"
                                        ],
                                        "isActiveFilter": [
                                            "Yes"
                                        ],
                                        "isAcknowledgedFilter": [
                                            "No",
                                            "NotRelevant"
                                        ],
                                        "isConfirmedFilter": [],
                                        "extendedPropertiesFilters": [
                                            {
                                                "name": "EquipmentType",
                                                "value": [
                                                    "Motor",
                                                    "Conveyor",
                                                    "Robot",
                                                    "Sensor"
                                                ]
                                            },
                                            {
                                                "name": "Severity",
                                                "value": [
                                                    "Medium",
                                                    "High",
                                                    "Critical"
                                                ]
                                            }
                                        ],
                                        "active": true,
                                        "retention": {
                                            "settings": {
                                                "timeSettings": {
                                                    "timeRange": {
                                                        "base": "day",
                                                        "factor": 90
                                                    }
                                                }
                                            }
                                        }
                                    }
                                },
                                "DeactivateChannel": {
                                    "summary": "Deactivate alarm channel",
                                    "description": "Example showing how to deactivate an alarm channel while keeping its configuration",
                                    "value": {
                                        "name": "Production Critical Alarms",
                                        "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                        "adapterId": "s7plus-adapter-001",
                                        "languages": [
                                            "en-US",
                                            "de-DE"
                                        ],
                                        "areaFilter": [
                                            "Production",
                                            "Safety"
                                        ],
                                        "alarmClassFilter": [
                                            "Error",
                                            "Critical"
                                        ],
                                        "sourceFilter": [
                                            "PLC_Main",
                                            "PLC_Safety"
                                        ],
                                        "originFilter": [
                                            "Line_1",
                                            "Line_2"
                                        ],
                                        "isActiveFilter": [
                                            "Yes"
                                        ],
                                        "isAcknowledgedFilter": [
                                            "No"
                                        ],
                                        "isConfirmedFilter": [],
                                        "extendedPropertiesFilters": [
                                            {
                                                "name": "EquipmentType",
                                                "value": [
                                                    "Motor",
                                                    "Conveyor",
                                                    "Robot"
                                                ]
                                            }
                                        ],
                                        "active": false,
                                        "retention": {
                                            "settings": {
                                                "timeSettings": {
                                                    "timeRange": {
                                                        "base": "day",
                                                        "factor": 30
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AlarmChannel"
                                },
                                "example": {
                                    "name": "testchannel1013",
                                    "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                    "adapterId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                    "areaFilter": [
                                        "System"
                                    ],
                                    "alarmClassFilter": [],
                                    "sourceFilter": [
                                        "PLC 1",
                                        "PLC 2",
                                        "PLC 3"
                                    ],
                                    "originFilter": [],
                                    "isActiveFilter": [
                                        "Yes",
                                        "No"
                                    ],
                                    "isAcknowledgedFilter": [
                                        "NotRelevant"
                                    ],
                                    "isConfirmedFilter": [],
                                    "extendedPropertiesFilters": [
                                        {
                                            "name": "AdditionalText0",
                                            "value": [
                                                "text1",
                                                "text2",
                                                "text3"
                                            ]
                                        },
                                        {
                                            "name": "ExtProp1",
                                            "value": [
                                                "text1",
                                                "text2"
                                            ]
                                        }
                                    ],
                                    "active": false,
                                    "retention": {
                                        "settings": {
                                            "timeSettings": {
                                                "timeRange": {
                                                    "base": "minute",
                                                    "factor": 1
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - Invalid parameters or validation errors",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "AssetNotFound": {
                                        "summary": "Referenced asset does not exist",
                                        "description": "The assetId specified in the alarm channel does not reference an existing asset",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter assetId is invalid: Entity not found.",
                                            "errorParams": {
                                                "reason": "Entity not found.",
                                                "what": "assetId"
                                            }
                                        }
                                    },
                                    "CannotMoveAlarmChannel": {
                                        "summary": "Moving alarm channel to different asset not supported",
                                        "description": "Attempting to change the assetId of an existing alarm channel is not allowed",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter assetId is invalid: Not supported to move AlarmChannel.",
                                            "errorParams": {
                                                "reason": "Not supported to move AlarmChannel.",
                                                "what": "assetId"
                                            }
                                        }
                                    },
                                    "EmptyName": {
                                        "summary": "Alarm channel name cannot be empty",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name cannot be empty.",
                                            "errorParams": {
                                                "reason": "Name cannot be empty.",
                                                "what": "name"
                                            }
                                        }
                                    },
                                    "NameAlreadyInUse": {
                                        "summary": "Alarm channel name already exists",
                                        "description": "Another alarm channel with the same name already exists within the same asset",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 93,
                                            "errorKey": "AlarmChannelNameAlreadyInUse",
                                            "message": "There is already an alarm channel with the name 'Production Critical Alarms'.",
                                            "errorParams": {
                                                "nameInUse": "Production Critical Alarms"
                                            }
                                        }
                                    },
                                    "InvalidLanguageConfiguration": {
                                        "summary": "Invalid language configuration for OpenPipe adapter",
                                        "description": "OpenPipe alarm channels require exactly one valid language configuration",
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter languages is invalid. Reason: OpenPipe alarm channel need one and just one correct language.",
                                            "errorParams": {
                                                "reason": "OpenPipe alarm channel need one and just one correct language.",
                                                "what": "languages"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found - Alarm channel with specified id does not exist",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "example": {
                                    "service": "IIH Essentials",
                                    "state": 404,
                                    "stateText": "NotFound",
                                    "errorCode": 4,
                                    "errorKey": "NotFound",
                                    "message": "The AlarmChannel with the id '6eb0af16e0c940ffb342f1120c202b68' was not found.",
                                    "errorParams": {
                                        "id": "6eb0af16e0c940ffb342f1120c202b68",
                                        "what": "AlarmChannel"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Delete alarm channel by alarm channel id",
                "description": "Delete an existing alarm channel by its id. The operation returns the configuration of the deleted alarm channel.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6eb0af16e0c940ffb342f1120c202b68",
                        "in": "path",
                        "description": "The id of the alarm channel to delete. Must be a valid id of an existing alarm channel.",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AlarmChannel"
                                },
                                "example": {
                                    "id": "6eb0af16e0c940ffb342f1120c202b68",
                                    "name": "Production Critical Alarms",
                                    "assetId": "9dea3dee2fad47c1bad220c93bcebbe0",
                                    "adapterId": "s7plus-adapter-001",
                                    "languages": [
                                        "en-US",
                                        "de-DE"
                                    ],
                                    "areaFilter": [
                                        "Production",
                                        "Safety"
                                    ],
                                    "alarmClassFilter": [
                                        "Error",
                                        "Critical"
                                    ],
                                    "sourceFilter": [
                                        "PLC_Main",
                                        "PLC_Safety"
                                    ],
                                    "originFilter": [
                                        "Line_1",
                                        "Line_2"
                                    ],
                                    "isActiveFilter": [
                                        "Yes"
                                    ],
                                    "isAcknowledgedFilter": [
                                        "No"
                                    ],
                                    "isConfirmedFilter": [],
                                    "extendedPropertiesFilters": [
                                        {
                                            "name": "EquipmentType",
                                            "value": [
                                                "Motor",
                                                "Conveyor",
                                                "Robot"
                                            ]
                                        },
                                        {
                                            "name": "Severity",
                                            "value": [
                                                "High",
                                                "Critical"
                                            ]
                                        }
                                    ],
                                    "active": true,
                                    "retention": {
                                        "settings": {
                                            "timeSettings": {
                                                "timeRange": {
                                                    "base": "day",
                                                    "factor": 30
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found - Alarm channel with specified id does not exist",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "example": {
                                    "service": "IIH Essentials",
                                    "state": 404,
                                    "stateText": "NotFound",
                                    "errorCode": 4,
                                    "errorKey": "NotFound",
                                    "message": "The AlarmChannel with the id '6eb0af16e0c940ffb342f1120c202b68' was not found.",
                                    "errorParams": {
                                        "id": "6eb0af16e0c940ffb342f1120c202b68",
                                        "what": "AlarmChannel"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Alarms": {
            "post": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Create alarms",
                "description": "Add alarms to the alarm channel.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Alarm"
                                }
                            },
                            "example": [
                                {
                                    "alarmChannelId": "9dea3dee2fad47c1bad220999bcebbe0",
                                    "alarmId": "ack alarm id",
                                    "raisedTime": "2023-10-30T06:06:14.874Z",
                                    "acknowledgedTime": "2023-10-30T06:06:34.882Z",
                                    "clearedTime": "2023-10-30T06:06:54.894Z",
                                    "removedTime": "2023-10-30T06:06:54.894Z",
                                    "timeStamp": "2023-10-30T06:06:54.894Z",
                                    "reason": "Cleared",
                                    "priority": 3,
                                    "area": "System",
                                    "source": "PLC 2",
                                    "origin": "paint shop",
                                    "alarmClass": "Acknowledgement",
                                    "isActive": false,
                                    "isAcknowledged": true,
                                    "alarmText": [
                                        {
                                            "language": "en-US",
                                            "value": "EN ack alarm text"
                                        }
                                    ],
                                    "extendedProperties": [
                                        {
                                            "key": "AdditionalText0",
                                            "valueType": "LocalizedString",
                                            "language": "en-US",
                                            "value": "EN addl ack alarm text 1"
                                        },
                                        {
                                            "key": "AdditionalText1",
                                            "valueType": "LocalizedString",
                                            "language": "en-US",
                                            "value": "EN addl ack alarm text 2"
                                        },
                                        {
                                            "key": "Alarm State",
                                            "valueType": "String",
                                            "value": "kAcknowledged"
                                        }
                                    ]
                                },
                                {
                                    "alarmChannelId": "9dea3dee2fad47c1bad220999bcebbe0",
                                    "alarmId": "ack alarm id",
                                    "raisedTime": "2023-10-30T06:06:24.874Z",
                                    "acknowledgedTime": "2023-10-30T06:06:44.882Z",
                                    "timeStamp": "2023-10-30T06:06:54.894Z",
                                    "reason": "Acknowledged",
                                    "priority": 3,
                                    "area": "System",
                                    "source": "PLC 2",
                                    "origin": "paint shop",
                                    "alarmClass": "Acknowledgement",
                                    "isActive": false,
                                    "isAcknowledged": true,
                                    "alarmText": [
                                        {
                                            "language": "en-US",
                                            "value": "EN ack alarm text"
                                        }
                                    ],
                                    "extendedProperties": [
                                        {
                                            "key": "AdditionalText0",
                                            "valueType": "LocalizedString",
                                            "language": "en-US",
                                            "value": "EN addl ack alarm text 1"
                                        },
                                        {
                                            "key": "AdditionalText1",
                                            "valueType": "LocalizedString",
                                            "language": "en-US",
                                            "value": "EN addl ack alarm text 2"
                                        },
                                        {
                                            "key": "Alarm State",
                                            "valueType": "String",
                                            "value": "kAcknowledged"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Alarms/Query": {
            "post": {
                "tags": [
                    "AlarmStorage"
                ],
                "summary": "Query alarms by filter",
                "description": "Query alarms by filter. <br/> Can be queried by ChannelId and/or AssetId (the combinded result of ChannelId and AssetId should not be empty),  Area (using IN), Source (using IN), Origin (using IN), AlarmClass (using IN), IsActive(using IN), IsAcknowledged(using In), IsConfirmed(using IN),  ExtendedProperties(each extendeProperty has name, and value(using In);  if no value given, only filter by extendedProperty name), TimeStamp (using >=, <=), order by timestamp DESC or ASC, all query conditions are connected by AND.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AlarmQueryBody"
                            },
                            "examples": {
                                "AdvancedFilterExample": {
                                    "$ref": "#/components/examples/QueryAlarmAdvancedFilterExample"
                                },
                                "FilterExample": {
                                    "$ref": "#/components/examples/QueryAlarmFilterExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "headers": {
                            "x-anchor-count": {
                                "schema": {
                                    "type": "integer"
                                },
                                "description": "query result alarm total count"
                            },
                            "x-anchor-position": {
                                "schema": {
                                    "type": "integer"
                                },
                                "description": "query result alarm offset"
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "alarms": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Alarm"
                                            }
                                        }
                                    }
                                },
                                "example": {
                                    "alarms": [
                                        {
                                            "id": "6441",
                                            "alarmChannelId": "9dea3dee2fad47c1bad220999bcebbe0",
                                            "alarmId": "ack alarm id",
                                            "raisedTime": "2023-10-30T06:06:14.874Z",
                                            "acknowledgedTime": "2023-10-30T06:06:34.882Z",
                                            "clearedTime": "2023-10-30T06:06:54.894Z",
                                            "removedTime": "2023-10-30T06:06:54.894Z",
                                            "timeStamp": "2023-10-30T06:06:54.894Z",
                                            "reason": "Cleared",
                                            "priority": 3,
                                            "area": "System",
                                            "source": "PLC 2",
                                            "origin": "paint shop",
                                            "alarmClass": "Acknowledgement",
                                            "isActive": false,
                                            "isAcknowledged": true,
                                            "alarmText": [
                                                {
                                                    "language": "en-US",
                                                    "value": "EN ack alarm text"
                                                }
                                            ],
                                            "extendedProperties": [
                                                {
                                                    "key": "AdditionalText0",
                                                    "valueType": "LocalizedString",
                                                    "language": "en-US",
                                                    "value": "EN addl ack alarm text 1"
                                                },
                                                {
                                                    "key": "AdditionalText1",
                                                    "valueType": "LocalizedString",
                                                    "language": "en-US",
                                                    "value": "EN addl ack alarm text 2"
                                                },
                                                {
                                                    "key": "Alarm State",
                                                    "valueType": "String",
                                                    "value": "kAcknowledged"
                                                }
                                            ]
                                        },
                                        {
                                            "id": "6442",
                                            "alarmChannelId": "9dea3dee2fad47c1bad220999bcebbe0",
                                            "alarmId": "ack alarm id",
                                            "raisedTime": "2023-10-30T06:06:24.874Z",
                                            "acknowledgedTime": "2023-10-30T06:06:44.882Z",
                                            "timeStamp": "2023-10-30T06:06:54.894Z",
                                            "reason": "Acknowledged",
                                            "priority": 3,
                                            "area": "System",
                                            "source": "PLC 2",
                                            "origin": "paint shop",
                                            "alarmClass": "Acknowledgement",
                                            "isActive": false,
                                            "isAcknowledged": true,
                                            "alarmText": [
                                                {
                                                    "language": "en-US",
                                                    "value": "EN ack alarm text"
                                                }
                                            ],
                                            "extendedProperties": [
                                                {
                                                    "key": "AdditionalText0",
                                                    "valueType": "LocalizedString",
                                                    "language": "en-US",
                                                    "value": "EN addl ack alarm text 1"
                                                },
                                                {
                                                    "key": "AdditionalText1",
                                                    "valueType": "LocalizedString",
                                                    "language": "en-US",
                                                    "value": "EN addl ack alarm text 2"
                                                },
                                                {
                                                    "key": "Alarm State",
                                                    "valueType": "String",
                                                    "value": "kAcknowledged"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Adapters/{id}/AlarmMetaData": {
            "get": {
                "tags": [
                    "Adapters"
                ],
                "summary": "Get alarm metadata from corresponding adapter",
                "description": "Get alarm metadata by adapter ID",
                "parameters": [
                    {
                        "name": "id",
                        "example": "9dea3dee2fad47c1bad220c93bcebbe0",
                        "in": "path",
                        "description": "adapter id",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AlarmMetaData"
                                },
                                "example": {
                                    "areas": "Security, System, User",
                                    "sources": "PLC 1, PLC 2",
                                    "origins": "oil pump, paint shop, pulver press",
                                    "alarmClasses": "Acknowledgement, No Acknowledgement, Critical, Information",
                                    "languages": "de-DE, en-US"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects": {
            "get": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Get all aspects.",
                "description": "Get a list of Aspects. Aspects can be filtered by aspectId or assetId. If no filter is specified, all aspects will be returned. It is not supported to specify more than one filter parameter. \n\n Please note that the generated curl command and request URL should be modified, if a filter is being used, before using sending the request to IIH Essentials. The returned array must be enclosed in (square) brackets [], each single string should be in quotation marks and strings should remain separated by commas, in case multiple strings are used for a filter. For instance: \n\n - Filtering for a single assetId: http://localhost:4203/DataService/Aspects?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\"] \n\n - Filtering for multiple assetIds: http://localhost:4203/DataService/Aspects?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\",\"eab960dcb97e4752b298387f780cba1e\"]",
                "parameters": [
                    {
                        "name": "aspectIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "example": [
                            "53abb2fdc0da4c24b84b735930c7b9c8"
                        ],
                        "description": "Filter the aspect list by aspectIds."
                    },
                    {
                        "name": "assetIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "example": [
                            "d0df2a40afd64671bda7b53ce8f08ef8"
                        ],
                        "description": "Filter the aspect list by assetIds."
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "TooManyFilter": {
                                        "$ref": "#/components/examples/TooManyFilterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Create an aspect.",
                "description": "Create a new aspect. If the aspectTypeId is set, the according variables will be created. Name must be unique in the provided asset and not empty.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Aspect"
                            },
                            "example": {
                                "aspectName": "AspectName",
                                "assetId": "0",
                                "aspectTypeId": "99e92370657c4d689a9a3c76964ab65c"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "WithType": {
                                        "$ref": "#/components/examples/AspectWithTypeExample"
                                    },
                                    "WithOutType": {
                                        "$ref": "#/components/examples/AspectWithoutTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "AspectNameAlreadyInUse",
                                            "message": "The asset 'edge' has already an aspect with the name 'Aspect'.",
                                            "errorParams": {
                                                "asset": "edge",
                                                "nameInUse": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Aspects"
                                            }
                                        }
                                    },
                                    "AssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Aspect.assetId is invalid: Asset not found.",
                                            "errorParams": {
                                                "reason": "Asset not found.",
                                                "what": "Aspect.assetId"
                                            },
                                            "debugInfo": {
                                                "aspectId": "",
                                                "aspectName": "NewAspect",
                                                "assetId": "cb4379a33d0c4b98b1babc37b5c9820c",
                                                "method": "POST",
                                                "route": "/DataService/Aspects"
                                            }
                                        }
                                    },
                                    "AspectTypeNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Aspect.aspectTypeId is invalid: AspectType not found.",
                                            "errorParams": {
                                                "reason": "AspectType not found.",
                                                "what": "Aspect.aspectTypeId"
                                            },
                                            "debugInfo": {
                                                "aspectId": "",
                                                "aspectName": "NewAspect",
                                                "aspectTypeId": "NotFoundType",
                                                "method": "POST",
                                                "route": "/DataService/Aspects"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects/{id}": {
            "get": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Read an aspect.",
                "description": "Read a specific aspect with the id from path.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "WithoutType": {
                                        "$ref": "#/components/examples/AspectWithoutTypeExample"
                                    },
                                    "WithType": {
                                        "$ref": "#/components/examples/AspectWithTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Update an aspect.",
                "description": "Update a specific aspect. Name must be unique in the provided asset. The aspectType cannot be changed.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Aspect"
                            },
                            "example": {
                                "aspectName": "AspectName",
                                "assetId": "0",
                                "aspectTypeId": null
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "WithType": {
                                        "$ref": "#/components/examples/AspectWithTypeExample"
                                    },
                                    "WithoutType": {
                                        "$ref": "#/components/examples/AspectWithoutTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "AspectNameAlreadyInUse",
                                            "message": "The asset 'edge' has already an aspect with the name 'Aspect'.",
                                            "errorParams": {
                                                "asset": "edge",
                                                "nameInUse": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Aspects/{id}"
                                            }
                                        }
                                    },
                                    "AssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Aspect.assetId is invalid: Asset not found.",
                                            "errorParams": {
                                                "reason": "Asset not found.",
                                                "what": "Aspect.assetId"
                                            },
                                            "debugInfo": {
                                                "aspectId": "",
                                                "aspectName": "NewAspect",
                                                "assetId": "cb4379a33d0c4b98b1babc37b5c9820c",
                                                "method": "PUT",
                                                "route": "/DataService/Aspects/{id}"
                                            }
                                        }
                                    },
                                    "NotSupported": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Aspect.aspectTypeId is invalid: Not supported to change the AspectType.",
                                            "errorParams": {
                                                "reason": "Not supported to change the AspectType.",
                                                "what": "Aspect.aspectTypeId"
                                            },
                                            "debugInfo": {
                                                "aspectId": "099fdb1ca4fd4829a7afdeff7091ee0c",
                                                "aspectName": "TestAT1",
                                                "aspectTypeId": "123",
                                                "method": "PUT",
                                                "route": "/DataService/Aspects/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Delete an aspect.",
                "description": "Delete a specific asset. All data retentions and variables of this aspect will also be deleted.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "WithoutType": {
                                        "$ref": "#/components/examples/AspectWithoutTypeExample"
                                    },
                                    "With": {
                                        "$ref": "#/components/examples/AspectWithoutTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by aspects.",
                "description": "Return the size of the aspects folder.",
                "tags": [
                    "Aspects"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects/Bulk/Create": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Create a set of aspects.",
                "description": "Create a set of new aspects. If the aspectTypeId is set, the according variables will be created. Name must be unique in the provided aspects and not empty. The provided assetId must exist. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Aspect"
                                }
                            },
                            "example": [
                                {
                                    "aspectName": "AspectName1",
                                    "assetId": "0",
                                    "aspectTypeId": ""
                                },
                                {
                                    "aspectName": "AspectName2",
                                    "assetId": "0",
                                    "aspectTypeId": ""
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AspectBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects/Bulk/Update": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Update a set of aspects.",
                "description": "Update a set of aspects. Not allowed to change the aspectTypeId. Name must be unique in the provided aspects and not empty. The provided assetId must exist. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Aspect"
                                }
                            },
                            "example": [
                                {
                                    "aspectId": "53abb2fdc0da4c24b84b735930c7b9c8",
                                    "aspectName": "AspectName1",
                                    "assetId": "0",
                                    "aspectTypeId": ""
                                },
                                {
                                    "aspectId": "099fdb1ca4fd4829a7afdeff7091ee02",
                                    "aspectName": "AspectName2",
                                    "assetId": "0",
                                    "aspectTypeId": ""
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AspectBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Aspects/Bulk/Delete": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Aspects"
                ],
                "summary": "Delete a set of aspects.",
                "description": "Delete a set of aspects. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "example": [
                                "53abb2fdc0da4c24b84b735930c7b9c8",
                                "099fdb1ca4fd4829a7afdeff7091ee02"
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AspectBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AspectTypes": {
            "get": {
                "deprecated": true,
                "tags": [
                    "AspectTypes"
                ],
                "summary": "Get all aspect types.",
                "description": "Get a list of aspect types. It can be configured to also return the according aspect type variables.",
                "parameters": [
                    {
                        "name": "includeVariables",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        },
                        "description": "If true, return also all variables of the aspect type."
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AspectType"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "deprecated": true,
                "tags": [
                    "AspectTypes"
                ],
                "summary": "Create an aspect type.",
                "description": "Create a non system aspect type together with its according variables. Names must be unique",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AspectType"
                            },
                            "example": {
                                "name": "Turbine",
                                "variables": [
                                    {
                                        "name": "Speed",
                                        "dataType": "Double",
                                        "unit": "Hz"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "AspectType": {
                                        "$ref": "#/components/examples/AspectTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 34,
                                            "errorKey": "AspectTypeNameAlreadyInUse",
                                            "message": "There is already an aspect type with the name 'Turbine'.",
                                            "errorParams": {
                                                "nameInUse": "Turbine"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/AspectTypes"
                                            }
                                        }
                                    },
                                    "DuplicateName": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 34,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter AspectType.variables[1].name is invalid: The name is already in use.",
                                            "errorParams": {
                                                "reason": "The name is already in use.",
                                                "what": "AspectType.variables[1].name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/AspectTypes"
                                            }
                                        }
                                    },
                                    "SystemType": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter isSystemType is invalid: It is not allowed to create a system type.",
                                            "errorParams": {
                                                "reason": "It is not allowed to create a system type.",
                                                "what": "isSystemType"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/AspectTypes"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AspectTypes/{id}": {
            "get": {
                "deprecated": true,
                "tags": [
                    "AspectTypes"
                ],
                "summary": "Read an aspect type.",
                "description": "Read a specific aspect type. It can be configured to also return the according aspect type variables.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect type id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "includeVariables",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        },
                        "description": "If true, return also all variables of the aspect type."
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectType"
                                },
                                "examples": {
                                    "AspectType": {
                                        "$ref": "#/components/examples/AspectTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectTypeNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "deprecated": true,
                "tags": [
                    "AspectTypes"
                ],
                "summary": "Update an aspect type.",
                "description": "Update a non system aspect type together with its variables. All variables and aspects created from this template will be adapted accordingly. Ids for variable names have to be provided, or else the existing will be deleted. Names must be unique",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect type id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AspectType"
                            },
                            "example": {
                                "name": "Turbine",
                                "variables": [
                                    {
                                        "id": "4ae41b7faaf54d64a6d332f8dccb6a6c",
                                        "name": "Speed",
                                        "dataType": "Double",
                                        "unit": "Hz"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "AspectType": {
                                        "$ref": "#/components/examples/AspectTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 34,
                                            "errorKey": "AspectTypeNameAlreadyInUse",
                                            "message": "There is already an aspect type with the name 'Turbine'.",
                                            "errorParams": {
                                                "nameInUse": "Turbine"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/AspectTypes/{id}"
                                            }
                                        }
                                    },
                                    "DuplicateName": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 34,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter AspectType.variables[1].name is invalid: The name is already in use.",
                                            "errorParams": {
                                                "reason": "The name is already in use.",
                                                "what": "AspectType.variables[1].name"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/AspectTypes/{id}"
                                            }
                                        }
                                    },
                                    "SystemType": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter isSystemType is invalid: It is not allowed to update a system type.",
                                            "errorParams": {
                                                "reason": "It is not allowed to update a system type.",
                                                "what": "isSystemType"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/AspectTypes/{id}"
                                            }
                                        }
                                    },
                                    "InvalidAspectTypeVariable": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter AspectType.variables[0].id is invalid: AspectTypeVariable not found.",
                                            "errorParams": {
                                                "reason": "AspectTypeVariable not found.",
                                                "what": "AspectType.variables[0].id"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/AspectTypes/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectTypeNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "deprecated": true,
                "tags": [
                    "AspectTypes"
                ],
                "summary": "Delete a non system aspect type, which is not used.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "aspect type id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                },
                                "examples": {
                                    "AspectType": {
                                        "$ref": "#/components/examples/AspectTypeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AspectTypeNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/AspectTypes/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by aspect types.",
                "description": "Return the size of the aspectTypes folder.",
                "tags": [
                    "AspectTypes"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets": {
            "get": {
                "deprecated": true,
                "tags": [
                    "Assets"
                ],
                "summary": "Get all assets.",
                "description": "Get a list of assets. Assets can be filtered by assetId. Breadcrumb and children can be added to the response if specific assets are requested. \n\n Please note that the generated curl command and request URL should be modified, if a filter is being used, before using sending the request to IIH Essentials. The returned array must be enclosed in (square) brackets [], each single string should be in quotation marks and strings should remain separated by commas, in case multiple strings are used for a filter. For instance: \n\n - Filtering for a single assetId: http://localhost:4203/AssetService/Assets?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\"]&includeChildren=true&includeBreadcrumb=true \n\n - Filtering for multiple assetIds: http://localhost:4203/AssetService/Assets?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\",\"eab960dcb97e4752b298387f780cba1e\"]&includeChildren=true&includeBreadcrumb=true",
                "parameters": [
                    {
                        "name": "assetIds",
                        "description": "Filter to get only a specified subset of assets.",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            },
                            "description": "Array of assetId strings encoded in JSON.",
                            "example": [
                                "53abb2fdc0da4c24b84b735930c7b9c8",
                                "53abb2fdc0da4c24b84b735930c7b9c8"
                            ]
                        }
                    },
                    {
                        "name": "includeChildren",
                        "description": "Only allowed if assetIds are specified.",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "includeBreadcrumb",
                        "description": "Only allowed if assetIds are specified.",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetsResponse"
                                },
                                "examples": {
                                    "All assets": {
                                        "value": {
                                            "assets": [
                                                {
                                                    "assetId": "0",
                                                    "name": "edge",
                                                    "parentId": "",
                                                    "sortOrder": 0,
                                                    "hasChildren": true
                                                },
                                                {
                                                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                    "name": "TopAsset",
                                                    "parentId": "0",
                                                    "sortOrder": 0,
                                                    "hasChildren": false
                                                }
                                            ]
                                        }
                                    },
                                    "Include children": {
                                        "value": {
                                            "assets": [
                                                {
                                                    "assetId": "0",
                                                    "name": "edge",
                                                    "parentId": "",
                                                    "sortOrder": 0,
                                                    "hasChildren": true,
                                                    "children": [
                                                        {
                                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                            "name": "TopAsset",
                                                            "parentId": "0",
                                                            "sortOrder": 0,
                                                            "hasChildren": false
                                                        }
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "Include breadcrumb": {
                                        "value": {
                                            "assets": [
                                                {
                                                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                    "name": "TopAsset",
                                                    "parentId": "0",
                                                    "sortOrder": 0,
                                                    "hasChildren": false,
                                                    "breadcrumb": [
                                                        {
                                                            "assetId": "0",
                                                            "name": "edge",
                                                            "parentId": "",
                                                            "sortOrder": 0,
                                                            "hasChildren": true
                                                        },
                                                        {
                                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                            "name": "TopAsset",
                                                            "parentId": "0",
                                                            "hasChildren": true,
                                                            "sortOrder": 0
                                                        }
                                                    ]
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "IncludeNotAvailable": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter query.includeBreadcrumb is invalid: Not supported when requesting all assets.",
                                            "errorParams": {
                                                "reason": "Not supported when requesting all assets.",
                                                "what": "query.includeBreadcrumb"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/AssetService/Assets"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "deprecated": true,
                "summary": "Create an asset.",
                "description": "Create a new asset with an existing parent asset. Name within the parent must be unique.",
                "tags": [
                    "Assets"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Asset"
                            },
                            "example": {
                                "name": "TopAsset",
                                "parentId": "0"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "Asset": {
                                        "$ref": "#/components/examples/AssetExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 36,
                                            "errorKey": "AssetNameAlreadyInUse",
                                            "message": "There is already an asset aspect with the name 'TopAsset'.",
                                            "errorParams": {
                                                "nameInUse": "TopAsset"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/AssetService/Assets"
                                            }
                                        }
                                    },
                                    "ParentNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.parentId is invalid: Asset not found.",
                                            "errorParams": {
                                                "reason": "Asset not found.",
                                                "what": "body.parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/AssetService/Assets"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/{id}": {
            "get": {
                "deprecated": true,
                "summary": "Read an asset.",
                "description": "Read an specific asset. Breadcrumb and children can be added to the response.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "asset id to search for",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "includeChildren",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "includeBreadcrumb",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "Asset": {
                                        "$ref": "#/components/examples/AssetExample"
                                    },
                                    "Include children": {
                                        "value": {
                                            "assetId": "0",
                                            "name": "edge",
                                            "parentId": "",
                                            "sortOrder": 0,
                                            "hasChildren": true,
                                            "children": [
                                                {
                                                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                    "name": "TopAsset",
                                                    "parentId": "0",
                                                    "sortOrder": 0,
                                                    "hasChildren": false
                                                }
                                            ]
                                        }
                                    },
                                    "Include breadcrumb": {
                                        "value": {
                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                            "name": "TopAsset",
                                            "parentId": "0",
                                            "sortOrder": 0,
                                            "hasChildren": false,
                                            "breadcrumb": [
                                                {
                                                    "assetId": "0",
                                                    "name": "edge",
                                                    "parentId": "",
                                                    "sortOrder": 0,
                                                    "hasChildren": true
                                                },
                                                {
                                                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                                    "name": "TopAsset",
                                                    "parentId": "0",
                                                    "hasChildren": true,
                                                    "sortOrder": 0
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "deprecated": true,
                "summary": "Update an asset.",
                "description": "Change name, parent or sortOrder of asset. Name within the parent must be unique. If parent and sortOrder will be changed with the same call, only the parent will be adapted and the asset appended at the end of the existing list.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "asset id to search for",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Asset"
                            },
                            "example": {
                                "name": "TopAsset",
                                "parentId": "0",
                                "sortOrder": 0
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "Asset": {
                                        "$ref": "#/components/examples/AssetExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 36,
                                            "errorKey": "AssetNameAlreadyInUse",
                                            "message": "There is already an asset aspect with the name 'TopAsset'.",
                                            "errorParams": {
                                                "nameInUse": "TopAsset"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/AssetService/Assets/{id}"
                                            }
                                        }
                                    },
                                    "ParentNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.parentId is invalid: Asset not found.",
                                            "errorParams": {
                                                "reason": "Asset not found.",
                                                "what": "body.parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/AssetService/Assets"
                                            }
                                        }
                                    },
                                    "RootAssetMove": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.parentId is invalid: The root asset can not be moved.",
                                            "errorParams": {
                                                "reason": "The root asset can not be moved.",
                                                "what": "body.parentId"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/AssetService/Assets/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "deprecated": true,
                "summary": "Delete an asset.",
                "description": "Delete a specific asset. All sub assets, aspect, variables and data retentions are deleted recursively.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "asset id to search for",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "Asset": {
                                        "$ref": "#/components/examples/AssetExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Root": {
            "get": {
                "deprecated": true,
                "summary": "Get the root asset.",
                "description": "The root asset is created automatically. It can not be deleted. Returns root asset if defined its children and breadcrumb.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "includeChildren",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "includeBreadcrumb",
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "RootAsset": {
                                        "$ref": "#/components/examples/AssetRootWithChildrenExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/{id}/children": {
            "get": {
                "deprecated": true,
                "summary": "Read all child asset.",
                "description": "Read all child assets of a specified asset.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetsResponse"
                                },
                                "example": {
                                    "assets": [
                                        {
                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                            "name": "TopAsset",
                                            "parentId": "0",
                                            "sortOrder": 0,
                                            "hasChildren": false
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/{id}/decendants": {
            "get": {
                "deprecated": true,
                "summary": "Read all descendent assets.",
                "description": "Read all descendent assets of a specified asset.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetsResponse"
                                },
                                "example": {
                                    "assets": [
                                        {
                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                            "name": "TopAsset",
                                            "parentId": "0",
                                            "sortOrder": 0,
                                            "hasChildren": false
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/{id}/breadcrumb": {
            "get": {
                "deprecated": true,
                "summary": "Read all breadcrumb.",
                "description": "Read all breadcrumb assets of a specified asset.",
                "tags": [
                    "Assets"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetsResponse"
                                },
                                "example": {
                                    "assets": [
                                        {
                                            "assetId": "0",
                                            "name": "edge",
                                            "parentId": "",
                                            "hasChildren": true,
                                            "sortOrder": 0
                                        },
                                        {
                                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                            "name": "TopAsset",
                                            "parentId": "0",
                                            "hasChildren": true,
                                            "sortOrder": 0
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Tree": {
            "get": {
                "deprecated": true,
                "summary": "Get the asset tree.",
                "description": "Get all assets, build together as a tree.",
                "tags": [
                    "Assets"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Asset"
                                },
                                "examples": {
                                    "AssetTree": {
                                        "$ref": "#/components/examples/AssetRootWithChildrenExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by assets.",
                "description": "Return the size of the assets folder.",
                "tags": [
                    "Assets"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Bulk/Create": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Assets"
                ],
                "summary": "Create a set of assets.",
                "description": "Create a set of new assets. Name must be unique in the provided assets and not empty. The provided parentId must exist. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Asset"
                                }
                            },
                            "example": [
                                {
                                    "name": "AssetName1",
                                    "parentId": "0"
                                },
                                {
                                    "name": "AssetName2",
                                    "parentId": "0"
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AssetBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Bulk/Update": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Assets"
                ],
                "summary": "Update a set of assets.",
                "description": "Update a set of assets. Name must be unique in the provided assets and not empty. The provided parentId must exist. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Asset"
                                }
                            },
                            "example": [
                                {
                                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                                    "name": "AssetName1",
                                    "parentId": "0",
                                    "sortOrder": 0,
                                    "hasChildren": false
                                },
                                {
                                    "assetId": "099fdb1ca4fd4829a7afdeff7091ee02",
                                    "name": "AssetName2",
                                    "parentId": "0",
                                    "sortOrder": 1,
                                    "hasChildren": false
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AssetBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/AssetService/Assets/Bulk/Delete": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Assets"
                ],
                "summary": "Delete a set of assets.",
                "description": "Delete a set of assets. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "example": [
                                "53abb2fdc0da4c24b84b735930c7b9c8",
                                "099fdb1ca4fd4829a7afdeff7091ee02"
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AssetBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AssetBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Backup/Config": {
            "get": {
                "tags": [
                    "Backup"
                ],
                "summary": "Get the configuration backup.",
                "description": "Download the whole configuration backup. This includes Adapters, Aspects, AspectTypes, Assets, Aggregations, DataRetentions and Variables. This is configured as an automatic file download",
                "parameters": [
                    {
                        "name": "encrypted",
                        "in": "query",
                        "description": "Specifies if the backup should be encrypted.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Required if the backup should be encrypted. This password is needed when restoring the backup.",
                        "schema": {
                            "type": "string",
                            "example": "1234"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Configuration as json file",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "oneOf": [
                                        {
                                            "$ref": "#/components/schemas/DataServiceConfig"
                                        },
                                        {
                                            "$ref": "#/components/schemas/DataServiceEncryptedConfig"
                                        }
                                    ]
                                },
                                "examples": {
                                    "Readable": {
                                        "value": {
                                            "dataBusCredentials": {
                                                "url": "tcp:://ie-databus:1883",
                                                "username": "edge",
                                                "usercode": "ZWRnZQ=="
                                            },
                                            "adapters": [],
                                            "assets": [],
                                            "aspects": [],
                                            "variables": [],
                                            "dataRetentions": [],
                                            "dataDestinations": [],
                                            "destinationHierarchys": [],
                                            "aggregations": [],
                                            "aspectTypes": [],
                                            "aspectTypeVariables": []
                                        }
                                    },
                                    "Encrypted": {
                                        "value": {
                                            "data": "ABCDEFGHIJKLMNOPQRST"
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Backup"
                ],
                "summary": "Restore the configuration backup.",
                "description": "Restore the whole configuration, this means every current configuration will be deleted, except system types, those are updated. If an error occurs, the existing setup will be restored. This route is limited to 4MB. Use /DataService/Backup/ConfigFile for bigger files.",
                "parameters": [
                    {
                        "name": "fromIIH",
                        "in": "query",
                        "description": "This indicates that the restore call is coming from IIH. Only IIH should use this parameter.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Required if the backup is encrypted.",
                        "schema": {
                            "type": "string",
                            "example": "1234"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "description": "This is the file download with GET",
                    "content": {
                        "application/json": {
                            "schema": {
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/DataServiceConfig"
                                    },
                                    {
                                        "$ref": "#/components/schemas/DataServiceEncryptedConfig"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request,<br>The examples are only a selection of the possible error values. Several consistency checks are made.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "RootAssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Asset.parentId is invalid: Root asset not found.",
                                            "errorParams": {
                                                "reason": "Root asset not found.",
                                                "what": "Asset.parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "missingAssetId": "0",
                                                "missingParentId": "",
                                                "route": "/DataService/Backup/Config"
                                            }
                                        }
                                    },
                                    "AdapterIdMissing": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Adapter.id is invalid: Id missing.",
                                            "errorParams": {
                                                "reason": "Id missing.",
                                                "what": "Adapter.id"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "name": "Simatic Connector",
                                                "route": "/DataService/Backup/Config"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Backup/ConfigFile": {
            "post": {
                "tags": [
                    "Backup"
                ],
                "summary": "Restore the configuration backup as multipart file upload.",
                "description": "This route has the same features as /Backup/Config. Is is implemented as multipart/form file upload to be able to use config files which are bigger than 4 MB.",
                "parameters": [
                    {
                        "name": "fromIIH",
                        "in": "query",
                        "description": "This indicates that the restore call is coming from IIH. Only IIH should use this parameter.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "password",
                        "in": "query",
                        "description": "Required if the backup is encrypted.",
                        "schema": {
                            "type": "string",
                            "example": "1234"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "description": "This is the file download with GET.",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "config": {
                                        "type": "string",
                                        "format": "application/json"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request,<br>The examples are only a selection of the possible error values. Several consistency checks are made.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "RootAssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Asset.parentId is invalid: Root asset not found.",
                                            "errorParams": {
                                                "reason": "Root asset not found.",
                                                "what": "Asset.parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "missingAssetId": "0",
                                                "missingParentId": "",
                                                "route": "/DataService/Backup/Config"
                                            }
                                        }
                                    },
                                    "AdapterIdMissing": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter Adapter.id is invalid: Id missing.",
                                            "errorParams": {
                                                "reason": "Id missing.",
                                                "what": "Adapter.id"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "name": "Simatic Connector",
                                                "route": "/DataService/Backup/Config"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Backup/Data": {
            "get": {
                "tags": [
                    "Backup"
                ],
                "summary": "Get the data backup.",
                "description": "Download the whole data backup. This includes all content from all variables and aggregation variables. This is configured as an automatic file download",
                "responses": {
                    "200": {
                        "description": "Data as txt file with own format",
                        "content": {
                            "text/plain": {}
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Backup"
                ],
                "summary": "Restore the data backup.",
                "description": "Restore the data backup downloaded with GET request.",
                "requestBody": {
                    "required": true,
                    "description": "This is the file download with GET.",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "data": {
                                        "type": "string",
                                        "format": "text/plain"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success,<br>The possible errors are listet in the errors array, in the example are only a few possible errors listed.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RestoreDataResult"
                                },
                                "example": {
                                    "variables": [
                                        {
                                            "id": "75f4aa369aef4c4a8332e8bbe5ae57bf",
                                            "name": "Variable1",
                                            "type": "Double",
                                            "path": "edge/TopAsset",
                                            "count": 200
                                        }
                                    ],
                                    "errors": [
                                        "Line 100: Missing id",
                                        "Line 200: Variable with id 099fdb1ca4fd4829a7afdeff7091ee0c not found.",
                                        "Line 300: Failed to convert XXXXXXX to timestamp.",
                                        "Line 400: Tab delimited timestamp and value expected",
                                        "Line 500: Failed to convert XXX to qualitycode",
                                        "Line 600: Failed to convert double value X.X into a int8 value: Out of range (overflow)."
                                    ],
                                    "maxErrorsReached": false
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Backup/Data/{id}": {
            "get": {
                "tags": [
                    "Backup"
                ],
                "summary": "Get the txt export of a single variable.",
                "description": "Download the txt file of a variable or an aggregation variable. This is configured as an automatic file download",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is included in the result.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": false,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": false,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "includeAggregations",
                        "description": "If it is true, exported file includes data of aggregation variables.",
                        "required": false,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Data as txt file which contains one variable data and optionally its aggregation data.",
                        "content": {
                            "text/plain": {}
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidTimeRange": {
                                        "$ref": "#/components/examples/DataInvalidTimeRangeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Backup"
                ],
                "summary": "Restore the exported txt file into a variable.",
                "description": "Restore the txt file downloaded with variable export.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "description": "This is the txt file download with GET.",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "data": {
                                        "type": "string",
                                        "format": "text/plain"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success,<br>The possible errors are listet in the errors array, in the example are only a few possible errors listed.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RestoreDataResult"
                                },
                                "example": {
                                    "variables": [
                                        {
                                            "id": "75f4aa369aef4c4a8332e8bbe5ae57bf",
                                            "name": "Variable1",
                                            "type": "Double",
                                            "path": "edge/TopAsset",
                                            "count": 200
                                        }
                                    ],
                                    "errors": [
                                        "Line 100: Variable header shouldn't exist in variable data file.",
                                        "Line 200: Missing or wrong aggregation type.",
                                        "Line 300: Failed to convert XXXXXXX to timestamp.",
                                        "Line 400: Tab delimited timestamp and value expected.",
                                        "Line 500: Failed to convert XXX to qualitycode.",
                                        "Line 600: Failed to convert double value X.X into a int8 value: Out of range (overflow)."
                                    ],
                                    "maxErrorsReached": false
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Backup/AlarmData": {
            "get": {
                "tags": [
                    "Backup"
                ],
                "summary": "Get the alarm data backup.",
                "description": "Download the whole alarm data backup. This includes all content from all channels and alarms and extended properties. This is configured as an automatic file download",
                "responses": {
                    "200": {
                        "description": "Data as txt file with own format",
                        "content": {
                            "text/plain": {}
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Backup"
                ],
                "summary": "Restore the alarm data backup.",
                "description": "Restore the alarm data backup downloaded with GET request.",
                "requestBody": {
                    "required": true,
                    "description": "This is the file download with GET.",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "data": {
                                        "type": "string",
                                        "format": "text/plain"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success,<br>The possible errors are listet in the errors array, in the example are only a few possible errors listed.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RestoreAlarmDataResult"
                                },
                                "example": {
                                    "alarmChannels": [
                                        {
                                            "alarmChannelId": "3845831fca4148269c2dae60547cae24",
                                            "alarmCount": 10,
                                            "extendedPropertyCount": 100
                                        }
                                    ],
                                    "errors": [
                                        "Line 1: Database version row is incorrect",
                                        "Line 200: ChannelId or tableName cannot be parsed.",
                                        "Line 300: Provided invalid channelId or table name.",
                                        "Line 400: Failed to restore an alarm data.",
                                        "Line 500: Failed to restore an extended property data.",
                                        "Line 600: Data values and columns are mismatch. Some values are missing for this record."
                                    ],
                                    "maxErrorsReached": false
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Calculate": {
            "post": {
                "tags": [
                    "Calculate"
                ],
                "summary": "Calculate an aggregated value.",
                "description": "Calculate an aggregated value for several datasources. Currently all datasource types are handled as variables. Some aggregation are not supported for single value calculation (None, MinMaxTrend, Gantt, GanttView, StepDuration, ValueChanges). The response size is limited to 4 MB. In order to not exceed this limit, maximum 100 dataSources are supported per request. Furthermore, you should be cautions when choosing the time range and cycle time as these affect the size of the response, too.",
                "parameters": [
                    {
                        "name": "usePrecalculatedData",
                        "in": "query",
                        "description": "Optional parameter to be able to switch off the usage of precalculated data. By default precalculated data is always used if present.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "useInterpolatedData",
                        "in": "query",
                        "description": "Optional parameter to be able to switch off the usage of interpolated data. By default interpolated data is always used if an acquisitionCycle is configured for the attribute.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CalculateRequest"
                            },
                            "example": {
                                "from": "2022-08-16T12:00:00",
                                "to": "2022-08-16T16:00:00",
                                "dataSources": [
                                    {
                                        "id": "3a801b60917e4ca291ff027ba263697e",
                                        "type": "Variable",
                                        "aggregation": "Average"
                                    }
                                ],
                                "qualityCodeFilter": {
                                    "include": true,
                                    "qualityGroups": [
                                        "Good",
                                        "Uncertain"
                                    ],
                                    "qualityCodes": [
                                        64,
                                        448
                                    ]
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CalculateResult"
                                    }
                                },
                                "examples": {
                                    "Success": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "timestamp": "2022-08-16T16:00:00.000Z",
                                                "value": 2.5,
                                                "qualitycode": 448
                                            }
                                        ],
                                        "description": "Value could be succesfully calculated."
                                    },
                                    "Static": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "staticValue": 12,
                                                "value": null
                                            }
                                        ],
                                        "description": "A static value was stored for the attribute"
                                    },
                                    "No value": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "value": null
                                            }
                                        ],
                                        "description": "There was no value in the given time window."
                                    },
                                    "Not found": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "error": {
                                                    "service": "IIH Essentials",
                                                    "state": 404,
                                                    "stateText": "NotFound",
                                                    "errorCode": 4,
                                                    "errorKey": "NotFound",
                                                    "message": "The Variable with the id 3a801b60917e4ca291ff027ba263697e was not found.",
                                                    "errorParams": {
                                                        "id": "3a801b60917e4ca291ff027ba263697e",
                                                        "what": "Variable"
                                                    }
                                                },
                                                "value": null
                                            }
                                        ],
                                        "description": "Data source was not found."
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "InvalidAggregation": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body.dataSources[0].aggregation is invalid: The aggregation GanttView may not be used for single value calculation.",
                                            "errorParams": {
                                                "reason": "The aggregation GanttView may not be used for single value calculation.",
                                                "what": "body.dataSources[0].aggregation"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Calculate"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/CalculateTrend": {
            "post": {
                "tags": [
                    "Calculate"
                ],
                "summary": "Calculate a trend of aggregated values.",
                "description": "Calculate a trend of aggregated values for several datasources. Currently all datasource types are handled as variables. The response size is limited to 4 MB. In order to not exceed this limit, maximum 100 dataSources are supported per request. Furthermore, you should be cautions when choosing the time range and cycle time as these affect the size of the response, too.",
                "parameters": [
                    {
                        "name": "usePrecalculatedData",
                        "in": "query",
                        "description": "Optional parameter to be able to switch off the usage of precalculated data. By default precalculated data is always used if present.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "useInterpolatedData",
                        "in": "query",
                        "description": "Optional parameter to be able to switch off the usage of interpolated data. By default interpolated data is always used if an acquisitionCycle is configured for the attribute.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CalculateTrendRequest"
                            },
                            "example": {
                                "from": "2022-08-16T12:00:00",
                                "to": "2022-08-16T16:00:00",
                                "calculationTimeRange": 1,
                                "dataSources": [
                                    {
                                        "id": "3a801b60917e4ca291ff027ba263697e",
                                        "type": "Variable",
                                        "aggregation": "Average"
                                    }
                                ],
                                "qualityCodeFilter": {
                                    "include": true,
                                    "qualityGroups": [
                                        "Good",
                                        "Uncertain"
                                    ],
                                    "qualityCodes": [
                                        64,
                                        448
                                    ]
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/CalculateTrendResult"
                                    }
                                },
                                "examples": {
                                    "Success": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "values": [
                                                    {
                                                        "timestamp": "2022-08-17T08:00:00.000Z",
                                                        "value": 1,
                                                        "qualitycode": 448
                                                    },
                                                    {
                                                        "timestamp": "2022-08-17T08:05:00.000Z",
                                                        "value": 2,
                                                        "qualitycode": 448
                                                    },
                                                    {
                                                        "timestamp": "2022-08-17T08:10:00.000Z",
                                                        "value": 3,
                                                        "qualitycode": 448
                                                    },
                                                    {
                                                        "timestamp": "2022-08-17T08:15:00.000Z",
                                                        "value": 4,
                                                        "qualitycode": 448
                                                    }
                                                ]
                                            }
                                        ]
                                    },
                                    "Static": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "staticValue": 12,
                                                "value": []
                                            }
                                        ],
                                        "description": "A static value was stored for the attribute"
                                    },
                                    "No value": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "value": []
                                            }
                                        ],
                                        "description": "There was no value in the given time window."
                                    },
                                    "Not found": {
                                        "value": [
                                            {
                                                "dataSource": {
                                                    "id": "3a801b60917e4ca291ff027ba263697e",
                                                    "type": "Variable",
                                                    "aggregation": "Average"
                                                },
                                                "error": {
                                                    "service": "IIH Essentials",
                                                    "state": 404,
                                                    "stateText": "NotFound",
                                                    "errorCode": 4,
                                                    "errorKey": "NotFound",
                                                    "message": "The Variable with the id 3a801b60917e4ca291ff027ba263697e was not found.",
                                                    "errorParams": {
                                                        "id": "3a801b60917e4ca291ff027ba263697e",
                                                        "what": "Variable"
                                                    }
                                                },
                                                "value": []
                                            }
                                        ],
                                        "description": "Data source was not found."
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/CalculateJobCollections": {
            "post": {
                "summary": "Create calculate-job collection.",
                "tags": [
                    "CalculateJobCollections"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "jobs": {
                                        "type": "array",
                                        "items": {
                                            "$ref": "#/components/schemas/CalculateJobRequest"
                                        }
                                    }
                                }
                            },
                            "example": {
                                "jobs": [
                                    {
                                        "from": "2022-08-16T12:00:00",
                                        "to": "2022-08-16T16:00:00",
                                        "mode": "Single",
                                        "calculationTimeRange": 1,
                                        "dataSource": {
                                            "id": "3a801b60917e4ca291ff027ba263697e",
                                            "type": "Variable",
                                            "aggregation": "None"
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CalculateJobCollectionResult"
                                },
                                "examples": {
                                    "CalculateJobCollectionResult": {
                                        "$ref": "#/components/examples/CalculateJobCollectionResultExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/CalculateJobCollections/Ids": {
            "get": {
                "summary": "Get all job calculation ids",
                "tags": [
                    "CalculateJobCollections"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                },
                                "example": [
                                    "6b0e5e3f8dea409db6c44d6d8e3cf370",
                                    "9d387c1e92cc4abca6999869766f9f72"
                                ]
                            }
                        }
                    }
                }
            }
        },
        "/DataService/CalculateJobCollections/{id}": {
            "get": {
                "summary": "Get the state of a calculate-job collection.",
                "tags": [
                    "CalculateJobCollections"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "fetchMode",
                        "in": "query",
                        "schema": {
                            "$ref": "#/components/schemas/FetchMode"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/CalculateJobCollectionResult"
                                },
                                "examples": {
                                    "Success": {
                                        "$ref": "#/components/examples/CalculateJobCollectionResultExample"
                                    },
                                    "Empty": {
                                        "value": {
                                            "jobCollectionId": "cb8c8cf6dac6428ea31ee1d6d96c1bce",
                                            "result": []
                                        },
                                        "description": "Returned if id was not found."
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidFetchParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "summary": "Abort and delete calculate-job collection.",
                "tags": [
                    "CalculateJobCollections"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/CalculateJobCollections/{id}/{jobIndex}": {
            "delete": {
                "summary": "Abort a single calculate job of a calculate-job collection.",
                "tags": [
                    "CalculateJobCollections"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "jobIndex",
                        "example": "1",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "oneOf": [
                                        {
                                            "$ref": "#/components/schemas/SuccessResponse"
                                        },
                                        {
                                            "type": "string",
                                            "example": "false"
                                        }
                                    ]
                                },
                                "examples": {
                                    "Success": {
                                        "value": {
                                            "success": true
                                        }
                                    },
                                    "JobCollectionNotFound": {
                                        "value": {
                                            "success": true
                                        }
                                    },
                                    "jobIndexNotFound": {
                                        "value": "false"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data": {
            "get": {
                "summary": "Read data of multiple variables.",
                "description": "Get time series data of multiple variables. The response size is limited to 4 MB. In order to not exceed this limit, maximum 100 variables are supported per request. Furthermore, you should be cautions when choosing the time range and cycle time as these affect the size of the response, too. \n\n Please note that the generated curl command and request URL should be modified before using sending the request to IIH Essentials. The returned array for variableIds must be enclosed in (square) brackets [], each single string should be in quotation marks and strings should remain separated by commas, in case multiple strings are used for a filter. For instance: \n\n - For a single variableId: http://localhost:4203/DataService/Data?variableIds=[\"53f05e175c0c48bd9742157c1a462ca9\"]&from=2024-04-17T09:00:00.000Z&to=2024-04-17T10:05:00.000Z \n\n - For multiple variableIds: http://localhost:4203/DataService/Data?variableIds=[\"53f05e175c0c48bd9742157c1a462ca9\",\"eab960dcb97e4752b298387f780cba1e\"]&from=2024-04-17T09:00:00.000Z&to=2024-04-17T10:05:00.000Z",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "variableIds",
                        "description": "The variableIds have to be specified as JSON array of strings.",
                        "example": [
                            "d0df2a40afd64671bda7b53ce8f08ef8"
                        ],
                        "required": true,
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is not included in the result.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "limit",
                        "description": "Optional parameter to specify the maximum number of values to be returned for one variable. Must be between 2000 and zero. If not specified or outside of the boundaries, a default limit of 2000 is used. If there are more datapoints in the requested period than the specified limit, an additional object 'hasMoreData' is returned with the response. It provides information how to request the remaining datapoints. If one variable has reached the limit, the number of values of other variables could be reduced, too. The reason is that 'from' and 'to' are adapted to the first and last data point of the variable which has reached the limit, and 'from' and 'to' are always applied to all variables of the request.",
                        "example": 1000,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    },
                    {
                        "name": "order",
                        "description": "Optional parameter to specify in which time order the values should be returned. If not specified the default value will be Ascending.",
                        "in": "query",
                        "example": "Ascending",
                        "schema": {
                            "$ref": "#/components/schemas/SortOrder"
                        }
                    },
                    {
                        "name": "excludeBadQuality",
                        "description": "Optional parameter to exclude values which have bad quality code.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolated",
                        "description": "Optional parameter to return interpolated data.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolationInterval",
                        "description": "Optional parameter to specify the interpolation interval in milliseconds. If not specified the acquisitionCycle of the Attribute is used.",
                        "example": 5000,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    },
                    {
                        "name": "qualityFilterInclude",
                        "description": "Optional parameter to specify whether to include the specified quality groups/codes. True to include them and false to exclude them.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "qualityFilterGroups",
                        "description": "Optional parameter to specify the quality groups to filter. It's the OR logic with qualityFilterCodes parameter.",
                        "example": "Good",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "Good",
                                "Uncertain",
                                "Bad"
                            ]
                        }
                    },
                    {
                        "name": "qualityFilterCodes",
                        "description": "Optional parameter to specify the quality codes to filter. It's the OR logic with qualityFilterGroups parameter.",
                        "example": 192,
                        "in": "query",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataResponseArray"
                                },
                                "examples": {
                                    "AllData": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:03:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ]
                                                },
                                                {
                                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:05:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:10:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:15:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "LimitData": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        }
                                                    ]
                                                },
                                                {
                                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                                    "values": []
                                                }
                                            ],
                                            "hasMoreData": {
                                                "from": "2022-08-17T08:02:00.000Z",
                                                "to": "2022-08-17T09:00:00.000Z"
                                            }
                                        },
                                        "description": "The data limit is set to 2. The first variable is limited by 2 values and a hasMoreData object is created. This limits the second variable, as all their values are after the from timestamp of the hasMoreData object."
                                    },
                                    "Static": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [],
                                                    "staticValue": 12345678
                                                }
                                            ]
                                        },
                                        "description": "A static value was stored for the variable."
                                    },
                                    "ErrorNotFound": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "1432dae06c5f4008a4caa192cba073a61",
                                                    "values": [],
                                                    "error": {
                                                        "service": "IIH Essentials",
                                                        "state": 404,
                                                        "stateText": "NotFound",
                                                        "errorCode": 4,
                                                        "errorKey": "NotFound",
                                                        "message": "The Variable with the id 1432dae06c5f4008a4caa192cba073a61 was not found.",
                                                        "errorParams": {
                                                            "id": "1432dae06c5f4008a4caa192cba073a61",
                                                            "what": "Variable"
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidLimit": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter limit is invalid: Value less than zero not allowed.",
                                            "errorParams": {
                                                "reason": "Value less than zero not allowed.",
                                                "what": "limit"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/Data"
                                            }
                                        }
                                    },
                                    "InvalidTimeRange": {
                                        "$ref": "#/components/examples/DataInvalidTimeRangeExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "summary": "Write data of multiple variables.",
                "description": "Write time series data of multiple variables. Not more than 100 variables and 25.000 data points in total should be send in one request.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "ignoreErrors",
                        "description": "use ignoreErrors flag to ignore errors while writing multiple data, like value invalid format error, variable not found error",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Data"
                                }
                            },
                            "example": [
                                {
                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                    "values": [
                                        {
                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                            "value": 2,
                                            "qualitycode": 192
                                        },
                                        {
                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                            "value": 3,
                                            "qualitycode": 192
                                        },
                                        {
                                            "timestamp": "2022-08-17T08:03:00.000Z",
                                            "value": 4,
                                            "qualitycode": 192
                                        }
                                    ]
                                },
                                {
                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                    "values": [
                                        {
                                            "timestamp": "2022-08-17T08:05:00.000Z",
                                            "value": 2,
                                            "qualitycode": 192
                                        },
                                        {
                                            "timestamp": "2022-08-17T08:10:00.000Z",
                                            "value": 3,
                                            "qualitycode": 192
                                        },
                                        {
                                            "timestamp": "2022-08-17T08:15:00.000Z",
                                            "value": 4,
                                            "qualitycode": 192
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Without ignoreError parameter/ignoreError=False, then return Success if all data write successful. With ignoreError=true, if all data write successful, then only return Success; if some data have error, then other datas will be writen sucessful, the response will still return Success, with errors which error datas meet",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataBulkIgnoreErrorsResponse"
                                },
                                "examples": {
                                    "ignoreErrors": {
                                        "$ref": "#/components/examples/DataBulkIgnoreErrorsResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidValue": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].values[0].value is invalid: Can not convert to datatype Int32.",
                                            "errorParams": {
                                                "reason": "Can not convert to datatype Int32.",
                                                "what": "body[0].values[0].value"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data"
                                            }
                                        }
                                    },
                                    "InvalidTimeStamp": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].values[0].timestamp is invalid: Date expected.",
                                            "errorParams": {
                                                "reason": "Date expected.",
                                                "what": "body[0].values[0].timestamp"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data"
                                            }
                                        }
                                    },
                                    "InvalidQualityCode": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].values[0].qualitycode is invalid: UInt16 expected (value range from 0 to 65535).",
                                            "errorParams": {
                                                "reason": "UInt16 expected (value range from 0 to 65535).",
                                                "what": "body[0].values[0].qualitycode"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "summary": "Delete data of multiple variables.",
                "description": "Delete time series data of multiple variables.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "variableIds",
                        "description": "The variableIds have to be specified as JSON array of strings.",
                        "example": "[\"9d9ed88826854821884e17cdeeb98fa7\",\"87906f351b4844c4960bfc99d7e41dc3\"]",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is not included in the result.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidTimeRange": {
                                        "$ref": "#/components/examples/DataInvalidTimeRangeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/Bulk/Read": {
            "post": {
                "summary": "Get timeseries data of multiple variables.",
                "description": "Bulk version of single variable read. The response size is limited to 4 MB. In order to not exceed this limit, maximum 100 variables are supported per request. Furthermore, you should be cautions when choosing the time range and cycle time as these affect the size of the response, too.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is not included in the result. It can be overriden in the request body by giving a 'from' value to the specific variable.",
                        "example": "2023-06-10T00:00:00.000Z",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from. It can be overriden in the request body by giving a 'to' value to the specific variable.",
                        "example": "2023-06-21T08:00:00.000Z",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "limit",
                        "description": "Optional parameter to specify the maximum number of values to be returned for one variable. If not specified a default limit of 2000 is used. Has to be greater or equal than zero. It can be overriden in the request body by giving a 'limit' value to the specific variable.",
                        "example": 1,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    },
                    {
                        "name": "order",
                        "description": "Optional parameter to specify in which time order the values should be returned. If not specified the default value will be Ascending. It can be overriden in the request body by giving a 'order' value to the specific variable.",
                        "in": "query",
                        "example": "Descending",
                        "schema": {
                            "$ref": "#/components/schemas/SortOrder"
                        }
                    },
                    {
                        "name": "excludeBadQuality",
                        "description": "Optional parameter to exclude values which have bad quality code.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolated",
                        "description": "Optional parameter to return interpolated data.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolationInterval",
                        "description": "Optional parameter to specify the interpolation interval in milliseconds. If not specified the acquisitionCycle of the Attribute is used.",
                        "example": 5000,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/DataReadBulkRequest"
                                }
                            },
                            "example": [
                                {
                                    "variableId": "01b6c990a77e474eabc0c2f6e407be68",
                                    "from": "2023-06-21T00:00:00.000Z",
                                    "to": "2023-06-21T13:00:00.000Z",
                                    "limit": 3,
                                    "order": "Ascending"
                                },
                                {
                                    "variableId": "1420e7e5f832456c8480b571618a6d78",
                                    "from": "2023-06-21T00:00:00.000Z",
                                    "to": "2023-06-21T13:00:00.000Z",
                                    "limit": 2,
                                    "excludeBadQuality": true
                                },
                                {
                                    "variableId": "311acdf6ca85446e8a5d6ef846c5e91c",
                                    "from": "2023-06-21T00:00:00.000Z",
                                    "to": "2023-06-21T13:00:00.000Z"
                                },
                                {
                                    "variableId": "82a25c4bbf3940e6b69c04911906e727"
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataResponseArrayList"
                                },
                                "examples": {
                                    "LimitData": {
                                        "value": [
                                            {
                                                "data": [
                                                    {
                                                        "variableId": "01b6c990a77e474eabc0c2f6e407be68",
                                                        "values": [
                                                            {
                                                                "timestamp": "2023-06-21T09:23:33.000Z",
                                                                "value": 3553,
                                                                "qualitycode": 192
                                                            },
                                                            {
                                                                "timestamp": "2023-06-21T09:23:34.000Z",
                                                                "value": 3554,
                                                                "qualitycode": 192
                                                            },
                                                            {
                                                                "timestamp": "2023-06-21T09:23:35.000Z",
                                                                "value": 3555,
                                                                "qualitycode": 192
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "hasMoreData": {
                                                    "from": "2023-06-21T09:23:35.000Z",
                                                    "to": "2023-06-21T13:00:00.000Z"
                                                }
                                            },
                                            {
                                                "data": [
                                                    {
                                                        "variableId": "1420e7e5f832456c8480b571618a6d78",
                                                        "values": [
                                                            {
                                                                "timestamp": "2023-06-21T09:30:34.000Z",
                                                                "value": 375,
                                                                "qualitycode": 192
                                                            },
                                                            {
                                                                "timestamp": "2023-06-21T09:30:33.000Z",
                                                                "value": 374,
                                                                "qualitycode": 192
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "hasMoreData": {
                                                    "from": "2023-06-21T00:00:00.000Z",
                                                    "to": "2023-06-21T09:30:32.000Z"
                                                }
                                            },
                                            {
                                                "data": [
                                                    {
                                                        "variableId": "311acdf6ca85446e8a5d6ef846c5e91c",
                                                        "values": [
                                                            {
                                                                "timestamp": "2023-06-21T09:30:34.000Z",
                                                                "value": 381,
                                                                "qualitycode": 192
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "hasMoreData": {
                                                    "from": "2023-06-21T00:00:00.000Z",
                                                    "to": "2023-06-21T09:30:33.000Z"
                                                }
                                            },
                                            {
                                                "data": [
                                                    {
                                                        "variableId": "82a25c4bbf3940e6b69c04911906e727",
                                                        "values": [
                                                            {
                                                                "timestamp": "2023-06-20T13:56:21.000Z",
                                                                "value": 1938,
                                                                "qualitycode": 192
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "hasMoreData": {
                                                    "from": "2023-06-10T00:00:00.000Z",
                                                    "to": "2023-06-20T13:56:20.000Z"
                                                }
                                            }
                                        ],
                                        "description": "The data limit is set to 1 in parameters. First variable overrided it by 3 and a hasMoreData object specific to it is created. Order is set to Descending as default in query parameters. Only first variable overrided it with Ascending. The rest used the default Descending order. Default from and to values are specified in parameters but except the last variable, all variables have overriden the time range. All variables have their specific hasMoreData result in their response objects."
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidTimeStamp": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].from is invalid: Date expected.",
                                            "errorParams": {
                                                "reason": "Date expected.",
                                                "what": "body[0].from"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/{id}": {
            "get": {
                "summary": "Read data of a single variable.",
                "description": "Get time series data of a single variable. The response size is limited to 4 MB. In order to not exceed this limit, you should be cautions when choosing the time range and cycle time as these affect the size of the response, too.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is not included in the result.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "limit",
                        "description": "Optional parameterto specify the maximum number of values to be returned for one variable. If not specified a default limit of 2000 is used. Has to be greater or equal than zero. If one variable has reached its limit, it can have an impact on the returned values of other variables, as the hasMoreData Object limits all data with its from timestamp.",
                        "example": 1000,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    },
                    {
                        "name": "order",
                        "description": "Optional parameter to specify in which time order the values should be returned. If not specified the default value will be Ascending.",
                        "in": "query",
                        "example": "Ascending",
                        "schema": {
                            "$ref": "#/components/schemas/SortOrder"
                        }
                    },
                    {
                        "name": "excludeBadQuality",
                        "description": "Optional parameter to exclude values which have bad quality code.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolated",
                        "description": "Optional parameter to return interpolated data.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "interpolationInterval",
                        "description": "Optional parameter to specify the interpolation interval in milliseconds. If not specified the acquisitionCycle of the Attribute is used.",
                        "example": 5000,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataResponseArray"
                                },
                                "examples": {
                                    "AllData": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:03:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "LimitData": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        }
                                                    ]
                                                }
                                            ],
                                            "hasMoreData": {
                                                "from": "2022-08-17T08:02:00.000Z",
                                                "to": "2022-08-17T09:00:00.000Z"
                                            }
                                        },
                                        "description": "The data limit is set to 2."
                                    },
                                    "ErrorNotFound": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "1432dae06c5f4008a4caa192cba073a61",
                                                    "values": [],
                                                    "error": {
                                                        "service": "IIH Essentials",
                                                        "state": 404,
                                                        "stateText": "NotFound",
                                                        "errorCode": 4,
                                                        "errorKey": "NotFound",
                                                        "message": "The Variable with the id 1432dae06c5f4008a4caa192cba073a61 was not found.",
                                                        "errorParams": {
                                                            "id": "1432dae06c5f4008a4caa192cba073a61",
                                                            "what": "Variable"
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidLimit": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter limit is invalid: Value less than zero not allowed.",
                                            "errorParams": {
                                                "reason": "Value less than zero not allowed.",
                                                "what": "limit"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/Data/{id}"
                                            }
                                        }
                                    },
                                    "InvalidTimeRange": {
                                        "$ref": "#/components/examples/DataInvalidTimeRangeExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "summary": "Write data of a single variable.",
                "description": "Write time series data of a single variable. Not more than 25.000 data points in total should be send in one request.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "ignoreErrors",
                        "description": "use ignoreErrors flag to ignore errors while writing data, like value invalid format error, variable not found error",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Value"
                                }
                            },
                            "example": [
                                {
                                    "timestamp": "2022-08-17T08:01:00.000Z",
                                    "value": 2,
                                    "qualitycode": 192
                                },
                                {
                                    "timestamp": "2022-08-17T08:02:00.000Z",
                                    "value": 3,
                                    "qualitycode": 192
                                },
                                {
                                    "timestamp": "2022-08-17T08:03:00.000Z",
                                    "value": 4,
                                    "qualitycode": 192
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataBulkIgnoreErrorsResponse"
                                },
                                "examples": {
                                    "ignoreErrors": {
                                        "$ref": "#/components/examples/DataIgnoreErrorsResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidValue": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].value is invalid: Can not convert to datatype Int32.",
                                            "errorParams": {
                                                "reason": "Can not convert to datatype Int32.",
                                                "what": "body[0].value"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data/{id}"
                                            }
                                        }
                                    },
                                    "InvalidTimeStamp": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].timestamp is invalid: Date expected.",
                                            "errorParams": {
                                                "reason": "Date expected.",
                                                "what": "body[0].timestamp"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data/{id}"
                                            }
                                        }
                                    },
                                    "InvalidQualityCode": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter body[0].qualitycode is invalid: UInt16 expected (value range from 0 to 65535).",
                                            "errorParams": {
                                                "reason": "UInt16 expected (value range from 0 to 65535).",
                                                "what": "body[0].qualitycode"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Data/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "summary": "Delete data of single variable.",
                "description": "Delete time series data of a single variable.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "example": "1432dae06c5f4008a4caa192cba073a6",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of the data query. A value stored with a timestamp exactly of 'from' is not included in the result.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of the data query. A value with a timestamp exactly of 'to' is included in the result. Has to be greater than from.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidTimeRange": {
                                        "$ref": "#/components/examples/DataInvalidTimeRangeExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/Size": {
            "get": {
                "summary": "Get database size.",
                "description": "Return the size of the internal database.",
                "tags": [
                    "Data"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/{id}/Size": {
            "get": {
                "summary": "Get data size.",
                "description": "Return the size of one variable in the internal database.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/{id}/Count": {
            "get": {
                "summary": "Count data.",
                "description": "Count data for a selected variable within a time range.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "from",
                        "description": "Begin timestamp of data generation.",
                        "example": "2020-01-01T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    },
                    {
                        "name": "to",
                        "description": "End timestamp of data generation.",
                        "example": "2020-01-02T00:00:00.000Z",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataBulkResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Data/Delta": {
            "post": {
                "summary": "Get data delta.",
                "description": "Get the last values from a variable starting from a timestamp. The possible value from the timestamp will not be included in the return. The maximum number of value per variable is 2000. More values can be requested with another request with lastRequestTime from the last answer.",
                "tags": [
                    "Data"
                ],
                "parameters": [
                    {
                        "name": "excludeBadQuality",
                        "description": "Optional parameter to exclude values which have bad quality code.",
                        "example": true,
                        "in": "query",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "type": "object",
                                    "properties": {
                                        "variableId": {
                                            "type": "string",
                                            "example": "9d9ed88826854821884e17cdeeb98fa7"
                                        },
                                        "lastRequestTime": {
                                            "type": "string",
                                            "format": "date-time",
                                            "example": "2022-08-17T08:01:00.000Z",
                                            "description": "optional timestamp, if no timestamp is delivered, only the last found value will be returned. The value will the same timestamp will not be included in the return."
                                        }
                                    }
                                }
                            },
                            "example": [
                                {
                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                    "lastRequestTime": "2022-08-17T08:00:00.000Z"
                                },
                                {
                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                    "lastRequestTime": "2022-08-17T08:00:00.000Z"
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataResponseArray"
                                },
                                "examples": {
                                    "AllData": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:01:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:02:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:03:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ],
                                                    "lastRequestTime": "2022-08-17T08:03:00.000Z"
                                                },
                                                {
                                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:05:00.000Z",
                                                            "value": 2,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:10:00.000Z",
                                                            "value": 3,
                                                            "qualitycode": 192
                                                        },
                                                        {
                                                            "timestamp": "2022-08-17T08:15:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ],
                                                    "lastRequestTime": "2022-08-17T08:15:00.000Z"
                                                }
                                            ]
                                        }
                                    },
                                    "NoLastRequestTime": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:03:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ],
                                                    "lastRequestTime": "2022-08-17T08:03:00.000Z"
                                                },
                                                {
                                                    "variableId": "87906f351b4844c4960bfc99d7e41dc3",
                                                    "values": [
                                                        {
                                                            "timestamp": "2022-08-17T08:15:00.000Z",
                                                            "value": 4,
                                                            "qualitycode": 192
                                                        }
                                                    ],
                                                    "lastRequestTime": "2022-08-17T08:15:00.000Z"
                                                }
                                            ]
                                        }
                                    },
                                    "NoValues": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": [],
                                                    "lastRequestTime": "2022-08-17T08:15:00.000Z"
                                                }
                                            ]
                                        },
                                        "description": "There at no values after the provided timestamp."
                                    },
                                    "NoValuesNoTimeStamp": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "9d9ed88826854821884e17cdeeb98fa7",
                                                    "values": []
                                                }
                                            ]
                                        },
                                        "description": "No last request timestamp provided and there at no values at all."
                                    },
                                    "ErrorNotFound": {
                                        "value": {
                                            "data": [
                                                {
                                                    "variableId": "1432dae06c5f4008a4caa192cba073a61",
                                                    "values": [],
                                                    "error": {
                                                        "service": "IIH Essentials",
                                                        "state": 404,
                                                        "stateText": "NotFound",
                                                        "errorCode": 4,
                                                        "errorKey": "NotFound",
                                                        "message": "The Variable with the id 1432dae06c5f4008a4caa192cba073a61 was not found.",
                                                        "errorParams": {
                                                            "id": "1432dae06c5f4008a4caa192cba073a61",
                                                            "what": "Variable"
                                                        }
                                                    }
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination": {
            "get": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Get all data destinations.",
                "description": "Get a list of all available data destinations.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationsResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Create a new data destination.",
                "description": "Create a new data destination. Name must be unique and not empty. Mqtt Client connection for mindsphere must be unique.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataDestinationCreate"
                            },
                            "examples": {
                                "MindSphere": {
                                    "$ref": "#/components/examples/DataDestinationMdspRequestExample"
                                },
                                "Senseye": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeRequestExample"
                                },
                                "SenseyeWithoutHierarchy": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyRequestExample"
                                },
                                "GenericMQTTNoAuthAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTNoAuthNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsRequestExample"
                                },
                                "IIHSync": {
                                    "$ref": "#/components/examples/DataDestinationIIHSyncRequestExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationRead"
                                },
                                "examples": {
                                    "MindSphere": {
                                        "$ref": "#/components/examples/DataDestinationMdspExample"
                                    },
                                    "Senseye": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeExample"
                                    },
                                    "SenseyeWithoutHierarchy": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyExample"
                                    },
                                    "GenericMQTTNoAuthAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsExample"
                                    },
                                    "GenericMQTTNoAuthNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsExample"
                                    },
                                    "IIHSync": {
                                        "$ref": "#/components/examples/DataDestinationIIHSyncExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "DataDestinationNameAlreadyInUse",
                                            "message": "There is already an data destination with the name 'wccdev'.",
                                            "errorParams": {
                                                "nameInUse": "wccdev"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination"
                                            }
                                        }
                                    },
                                    "MdspClientNotUnique": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 36,
                                            "errorKey": "DataDestinationMdspClientAlreadyInUse",
                                            "message": "There is already an active data destination with this mqtt client.",
                                            "errorParams": {},
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}": {
            "get": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Read a data destination.",
                "description": "Read a specific data destination with the id from path.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3c49642087f2459fa705b24fa61a3bb9",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationRead"
                                },
                                "examples": {
                                    "MindSphere": {
                                        "$ref": "#/components/examples/DataDestinationMdspExample"
                                    },
                                    "Senseye": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeExample"
                                    },
                                    "SenseyeWithoutHierarchy": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyExample"
                                    },
                                    "GenericMQTTNoAuthAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsExample"
                                    },
                                    "GenericMQTTNoAuthNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsExample"
                                    },
                                    "IIHSync": {
                                        "$ref": "#/components/examples/DataDestinationIIHSyncExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Update a data destination.",
                "description": "Update a specific data destination. Name must be unique and not empty. 'type' is readOnly. Mqtt Client connection for mindsphere must be unique.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3c49642087f2459fa705b24fa61a3bb9",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataDestinationUpdate"
                            },
                            "example": {
                                "MindSphere": {
                                    "$ref": "#/components/examples/DataDestinationMdspRequestExample"
                                },
                                "Senseye": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeRequestExample"
                                },
                                "SenseyeWithoutHierarchy": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyRequestExample"
                                },
                                "GenericMQTTNoAuthAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTNoAuthNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsRequestExample"
                                },
                                "IIHSync": {
                                    "$ref": "#/components/examples/DataDestinationIIHSyncRequestExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationRead"
                                },
                                "examples": {
                                    "MindSphere": {
                                        "$ref": "#/components/examples/DataDestinationMdspExample"
                                    },
                                    "Senseye": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeExample"
                                    },
                                    "SenseyeWithoutHierarchy": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyExample"
                                    },
                                    "GenericMQTTNoAuthAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsExample"
                                    },
                                    "GenericMQTTNoAuthNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsExample"
                                    },
                                    "IIHSync": {
                                        "$ref": "#/components/examples/DataDestinationIIHSyncExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 35,
                                            "errorKey": "DataDestinationNameAlreadyInUse",
                                            "message": "There is already an data destination with the name 'wccdev'.",
                                            "errorParams": {
                                                "nameInUse": "wccdev"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination"
                                            }
                                        }
                                    },
                                    "MdspClientNotUnique": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 36,
                                            "errorKey": "DataDestinationMdspClientAlreadyInUse",
                                            "message": "There is already an active data destination with this mqtt client.",
                                            "errorParams": {},
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Delete a data destination.",
                "description": "Delete a specific data destination.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3c49642087f2459fa705b24fa61a3bb9",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationRead"
                                },
                                "examples": {
                                    "MindSphere": {
                                        "$ref": "#/components/examples/DataDestinationMdspExample"
                                    },
                                    "Senseye": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeExample"
                                    },
                                    "SenseyeWithoutHierarchy": {
                                        "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyExample"
                                    },
                                    "GenericMQTTNoAuthAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsExample"
                                    },
                                    "GenericMQTTNoAuthNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTCertNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsExample"
                                    },
                                    "GenericMQTTUserPWNoAdvancedSettings": {
                                        "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsExample"
                                    },
                                    "IIHSync": {
                                        "$ref": "#/components/examples/DataDestinationIIHSyncExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InUse": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 68,
                                            "errorKey": "DataDestinationDeleteFailed_IsUsed",
                                            "message": "Data destinations which are in use cannot be deleted.",
                                            "debugInfo": {
                                                "method": "DELETE",
                                                "route": "/DataService/DataDestination/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/Test": {
            "post": {
                "tags": [
                    "DataDestination"
                ],
                "summary": "Test a data destination.",
                "description": "Test a new data destination.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/DataDestinationCreate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/DataDestinationUpdate"
                                    }
                                ]
                            },
                            "examples": {
                                "MindSphere": {
                                    "$ref": "#/components/examples/DataDestinationMdspRequestExample"
                                },
                                "Senseye": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeRequestExample"
                                },
                                "SenseyeWithoutHierarchy": {
                                    "$ref": "#/components/examples/DataDestinationSenseyeWithoutHierarchyRequestExample"
                                },
                                "GenericMQTTNoAuthAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTNoAuthNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTNoAuthNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTCertNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTCertNoAdvancedSettingsRequestExample"
                                },
                                "GenericMQTTUserPWNoAdvancedSettings": {
                                    "$ref": "#/components/examples/DataDestinationGenericMQTTUserPWNoAdvancedSettingsRequestExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataDestinationState"
                                },
                                "examples": {
                                    "Connected": {
                                        "value": {
                                            "connected": true
                                        }
                                    },
                                    "Disconnected": {
                                        "value": {
                                            "connected": false,
                                            "error": {
                                                "service": "IIH Essentials",
                                                "state": 400,
                                                "stateText": "BadRequest",
                                                "errorCode": 77,
                                                "errorKey": "MdspDataDestinationApiError",
                                                "message": "Problem connecting to Insights Hub API. Reason: Bad Credentials",
                                                "errorParams": {
                                                    "reason": "Bad Credentials"
                                                },
                                                "debugInfo": {
                                                    "mode": "AppCredentials",
                                                    "status": "401"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataRetentions": {
            "get": {
                "tags": [
                    "DataRetention"
                ],
                "summary": "Get the data retention setting.",
                "description": "Get the data retention setting of the specified asset, aspect or variable. If there is no data retention configured at the object, the data retention settings inherited from an parent object will be returned if there is some.",
                "parameters": [
                    {
                        "name": "sourceId",
                        "in": "query",
                        "example": "466e7de8e5734528a8991d044649f100",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "sourceTypeId",
                        "in": "query",
                        "schema": {
                            "$ref": "#/components/schemas/SourceType"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataRetention"
                                },
                                "examples": {
                                    "Configured": {
                                        "$ref": "#/components/examples/DataRetentionExample"
                                    },
                                    "Cleared": {
                                        "$ref": "#/components/examples/DataRetentionEmptyExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Aspect with the id 0a190ba28c7c4bcb9d9cc9a014f977ad was not found.",
                                            "errorParams": {
                                                "id": "0a190ba28c7c4bcb9d9cc9a014f977ad",
                                                "what": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/DataRetentions"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "DataRetention"
                ],
                "summary": "Update the data retention setting.",
                "description": "Update the data retention setting of the specified asset, aspect or variable.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataRetention"
                            },
                            "examples": {
                                "Configure": {
                                    "$ref": "#/components/examples/DataRetentionExample"
                                },
                                "Clear": {
                                    "$ref": "#/components/examples/DataRetentionEmptyExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataRetention"
                                },
                                "examples": {
                                    "Configured": {
                                        "$ref": "#/components/examples/DataRetentionExample"
                                    },
                                    "Cleared": {
                                        "$ref": "#/components/examples/DataRetentionEmptyExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Asset with the id 0a190ba28c7c4bcb9d9cc9a014f977ad was not found.",
                                            "errorParams": {
                                                "id": "0a190ba28c7c4bcb9d9cc9a014f977ad",
                                                "what": "Asset"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/DataRetentions"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/v2/DataRetentions": {
            "get": {
                "tags": [
                    "DataRetention"
                ],
                "summary": "Get the data retention setting with inherited setting optionally.",
                "description": "Get the data retention setting of the specified asset, aspect or variable if exist. If includeInherited query parameter is true, the data retention settings inherited from the specified parent object will be included in the response.",
                "parameters": [
                    {
                        "name": "sourceId",
                        "in": "query",
                        "example": "466e7de8e5734528a8991d044649f100",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "sourceTypeId",
                        "in": "query",
                        "schema": {
                            "$ref": "#/components/schemas/SourceType"
                        },
                        "required": true
                    },
                    {
                        "name": "includeInherited",
                        "in": "query",
                        "description": "default false, if set inherited data retention will be included in the response.",
                        "example": "true",
                        "schema": {
                            "type": "boolean"
                        },
                        "required": false
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataRetentionV2Response"
                                },
                                "examples": {
                                    "Basic": {
                                        "$ref": "#/components/examples/DataRetentionV2Example"
                                    },
                                    "WithInherited": {
                                        "$ref": "#/components/examples/DataRetentionV2ExampleWithInherited"
                                    },
                                    "NullDataRetention": {
                                        "$ref": "#/components/examples/DataRetentionV2ExampleNullDataRetention"
                                    },
                                    "NullInherited": {
                                        "$ref": "#/components/examples/DataRetentionV2ExampleNullInherited"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    },
                                    "MissingQueryParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Aspect with the id 0a190ba28c7c4bcb9d9cc9a014f977ad was not found.",
                                            "errorParams": {
                                                "id": "0a190ba28c7c4bcb9d9cc9a014f977ad",
                                                "what": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/DataRetentions"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataRetentions/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by data retentions.",
                "description": "Return the size of the data-retention folder. Is deprecated and supported until 31.10.2025.",
                "tags": [
                    "DataRetention"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataSources": {
            "get": {
                "tags": [
                    "DataSource"
                ],
                "summary": "Get datasources.",
                "description": "Get all existing datasources from an asset.",
                "parameters": [
                    {
                        "name": "assetId",
                        "in": "query",
                        "description": "the asset to search for datasources.",
                        "example": "466e7de8e5734528a8991d044649f100",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSource"
                                },
                                "examples": {
                                    "Success": {
                                        "value": [
                                            {
                                                "type": "Variable",
                                                "id": "3bb94ea2325242a7a4270dabe02a23db",
                                                "aggregation": "None",
                                                "name": "DatabaseSize",
                                                "assetId": "8b7e7009e4fa49158d7f287b64be504c",
                                                "aspectName": "TestAspect",
                                                "unit": "",
                                                "dataType": "Double",
                                                "path": [
                                                    "edge",
                                                    "TopAsset"
                                                ],
                                                "acquisitionCategory": "ProcessValue",
                                                "defaultAggregation": "None"
                                            }
                                        ]
                                    },
                                    "NoDataSourcesOrAssetNotFound": {
                                        "value": []
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "DataSource"
                ],
                "summary": "Resolve datasources.",
                "description": "Resolve the specified datasource references.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/DataSourceReference"
                                }
                            },
                            "example": [
                                {
                                    "type": "Variable",
                                    "id": "3bb94ea2325242a7a4270dabe02a23db",
                                    "aggregation": "None"
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSource"
                                },
                                "examples": {
                                    "Found": {
                                        "value": [
                                            {
                                                "type": "Variable",
                                                "id": "3bb94ea2325242a7a4270dabe02a23db",
                                                "aggregation": "None",
                                                "name": "DatabaseSize",
                                                "assetId": "8b7e7009e4fa49158d7f287b64be504c",
                                                "aspectName": "TestAspect",
                                                "unit": "",
                                                "dataType": "Double",
                                                "path": [
                                                    "edge",
                                                    "TopAsset"
                                                ],
                                                "acquisitionCategory": "ProcessValue",
                                                "defaultAggregation": "None"
                                            }
                                        ]
                                    },
                                    "Not Found": {
                                        "value": [
                                            {
                                                "type": "Variable",
                                                "id": "3bb94ea2325242a7a4270dabe02a23db",
                                                "aggregation": "None",
                                                "name": "",
                                                "assetId": "",
                                                "aspectName": "",
                                                "unit": "",
                                                "dataType": "Double",
                                                "path": [],
                                                "acquisitionCategory": "ProcessValue",
                                                "defaultAggregation": "None",
                                                "error": {
                                                    "service": "IIH Essentials",
                                                    "state": 404,
                                                    "stateText": "NotFound",
                                                    "errorCode": 4,
                                                    "errorKey": "NotFound",
                                                    "message": "The Variable with the id 3bb94ea2325242a7a4270dabe02a23db was not found.",
                                                    "errorParams": {
                                                        "id": "3bb94ea2325242a7a4270dabe02a23db",
                                                        "what": "Variable"
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataSync": {
            "get": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Get all data syncs.",
                "description": "Get a list of all available data sync for a specific source.",
                "parameters": [
                    {
                        "name": "sourceId",
                        "example": "d0df2a40afd64671bda7b53ce8f08ef8",
                        "in": "query",
                        "description": "sourceId to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "sourceTypeId",
                        "example": "asset",
                        "in": "query",
                        "description": "sourceTypeId of the sourceId to search for",
                        "schema": {
                            "$ref": "#/components/schemas/SourceType"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSyncArray"
                                },
                                "examples": {
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithAggregationExample"
                                    },
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithoutAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "AssetNotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    },
                                    "AspectNotFound": {
                                        "$ref": "#/components/examples/AspectNotFoundExample"
                                    },
                                    "VariableNotFound": {
                                        "$ref": "#/components/examples/VariableNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Create a new data sync.",
                "description": "Create a new data sync. Blocked if this overwritts existing datasyncs in startime.",
                "parameters": [],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataSync"
                            },
                            "examples": {
                                "WithAggregation": {
                                    "$ref": "#/components/examples/DataSyncWithAggregationExample"
                                },
                                "WithoutAggregation": {
                                    "$ref": "#/components/examples/DataSyncWithoutAggregationExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSync"
                                },
                                "examples": {
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DataSyncWithAggregationExample"
                                    },
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DataSyncWithoutAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "RootAssetError": {
                                        "$ref": "#/components/examples/DataSyncRootAssetNotAllowedExample"
                                    },
                                    "AlreadyInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 69,
                                            "errorKey": "DataSyncAlreadyInUse",
                                            "message": "There is already a data sync for this source with the destination wccdev.",
                                            "errorParams": {
                                                "destName": "wccdev"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataSync"
                                            }
                                        }
                                    },
                                    "OverwriteStartTime": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 71,
                                            "errorKey": "DataSyncStartTimeOverwrite",
                                            "message": "Not allowed to overwrite startime for existing data sync.",
                                            "errorParams": {
                                                "destName": "wccdev"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataSync"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataSync/{id}": {
            "get": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Read a data sync.",
                "description": "Read a specific data sync with the id from path.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data sync id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSync"
                                },
                                "examples": {
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithAggregationExample"
                                    },
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithoutAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataSyncNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Update a data sync.",
                "description": "Update a specific data sync. 'sourceId', 'sourceTypeId', 'dataDestinationid' and 'startTime' are readOnly.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data sync id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DataSync"
                            },
                            "examples": {
                                "WithAggregation": {
                                    "$ref": "#/components/examples/DataSyncWithAggregationExample"
                                },
                                "WithoutAggregation": {
                                    "$ref": "#/components/examples/DataSyncWithoutAggregationExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSync"
                                },
                                "examples": {
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithAggregationExample"
                                    },
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithoutAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NotSupported": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter DataSync is invalid: Only supported to change the start time or the aggregation.",
                                            "errorParams": {
                                                "reason": "Only supported to change the start time.",
                                                "what": "DataSync"
                                            },
                                            "debugInfo": {
                                                "id": "14f539f918c343bd8320d3d0dd14dddb",
                                                "method": "PUT",
                                                "route": "/DataService/DataSync/{id}",
                                                "sourceId": "0",
                                                "sourceType": "asset"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataSyncNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Delete a data sync.",
                "description": "Delete a specific data sync.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data sync id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DataSync"
                                },
                                "examples": {
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithAggregationExample"
                                    },
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DataSyncStateWithoutAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/DataSyncNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataSync/errors": {
            "get": {
                "tags": [
                    "DataSync"
                ],
                "deprecated": true,
                "summary": "Get the erros of a data sync.",
                "description": "Get a list of all erros from a data sync, including all child errors",
                "parameters": [
                    {
                        "name": "sourceId",
                        "example": "d0df2a40afd64671bda7b53ce8f08ef8",
                        "in": "query",
                        "description": "sourceId to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "sourceTypeId",
                        "example": "asset",
                        "in": "query",
                        "description": "sourceTypeId of the sourceId to search for",
                        "schema": {
                            "$ref": "#/components/schemas/SourceType"
                        },
                        "required": true
                    },
                    {
                        "name": "dataDestinationId",
                        "example": "66501abda97a498c9e246b13195e47ea",
                        "in": "query",
                        "description": "dataDestinationId of the data sync to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/DataSyncError"
                                    }
                                },
                                "examples": {
                                    "NoErrors": {
                                        "value": []
                                    },
                                    "WrongAspectName": {
                                        "value": [
                                            {
                                                "error": {
                                                    "service": "IIH Essentials",
                                                    "state": 400,
                                                    "stateText": "BadRequest",
                                                    "errorCode": 78,
                                                    "errorKey": "MdspDataSyncApiError",
                                                    "message": "Insights Hub API error for asset type - SubAsset: code=assetmngmnt.aspect.name.pattern,msg=Given name is not a valid aspect name,log=assetmngmnt.aspect.name.pattern;",
                                                    "errorParams": {
                                                        "object": "SubAsset",
                                                        "reason": "code=assetmngmnt.aspect.name.pattern,msg=Given name is not a valid aspect name,log=assetmngmnt.aspect.name.pattern;",
                                                        "type": "asset type"
                                                    }
                                                },
                                                "sourceId": "fe6bd521ae984c1faa57eefec2fed8ee",
                                                "sourceType": "asset",
                                                "destinationId": "66501abda97a498c9e246b13195e47ea",
                                                "state": "Error",
                                                "path": "edge/TopAsset/SubAsset"
                                            },
                                            {
                                                "error": {
                                                    "service": "IIH Essentials",
                                                    "state": 400,
                                                    "stateText": "BadRequest",
                                                    "errorCode": 78,
                                                    "errorKey": "MdspDataSyncApiError",
                                                    "message": "Insights Hub API error for aspect - Aspect 123: code=assetmngmnt.aspect.name.pattern,msg=Given name is not a valid aspect name,log=assetmngmnt.aspect.name.pattern;",
                                                    "errorParams": {
                                                        "object": "Aspect 123",
                                                        "reason": "code=assetmngmnt.aspect.name.pattern,msg=Given name is not a valid aspect name,log=assetmngmnt.aspect.name.pattern;",
                                                        "type": "aspect"
                                                    }
                                                },
                                                "sourceId": "cfc32e75291a41f5bb862ff54546d327",
                                                "sourceType": "aspect",
                                                "destinationId": "66501abda97a498c9e246b13195e47ea",
                                                "state": "Error",
                                                "path": "edge/TopAsset/SubAsset/Aspect 123"
                                            }
                                        ]
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingQueryParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidQueryParameterExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "AssetNotFound": {
                                        "$ref": "#/components/examples/AssetNotFoundExample"
                                    },
                                    "AspectNotFound": {
                                        "$ref": "#/components/examples/AspectNotFoundExample"
                                    },
                                    "VariableNotFound": {
                                        "$ref": "#/components/examples/VariableNotFoundExample"
                                    },
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}/Hierarchy": {
            "get": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Get a list of destination hierarchies.",
                "description": "Get a list of destination hierarchies for a the given data destination id. Additionally the list can be filtered by parentIds and paging parameters.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "parentIds",
                        "example": [
                            "537df346969c44ba8cc0941c498e59d9",
                            "b7d94ead14064f2883866c3bdc14ab2b"
                        ],
                        "in": "query",
                        "description": "list of parent ids to filter",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "id of the item **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "name": "includeHasChildren",
                        "in": "query",
                        "description": "Check if this element has any children in the destination hierarchy. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/DestinationHierarchy"
                                    }
                                },
                                "examples": {
                                    "Structure": {
                                        "$ref": "#/components/examples/DestinationHierarchyArrayExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    },
                                    "InvalidTakeParameter": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter take is invalid: Must be greater than zero.",
                                            "errorParams": {
                                                "reason": "Must be greater than zero.",
                                                "what": "take"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidOffsetParameter": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter offset is invalid: Must not be less than zero.",
                                            "errorParams": {
                                                "reason": "Must not be less than zero.",
                                                "what": "offset"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidReferenceParameter": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter reference is invalid: Object not found in result set.",
                                            "errorParams": {
                                                "reason": "Object not found in result set.",
                                                "what": "reference"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Create a new destination hierarchy.",
                "description": "Create a new destination hierarchy. Name and sourceId must be unique within the same parent. AlarmChannel is only possible for destination type mindsphere. Aggregations are only used for attributes. StartTime is only used for attributes and alarm channels. For top level hierarchy objects for generic mqtt, a hierarchy configuration is needed.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DestinationHierarchy"
                            },
                            "examples": {
                                "WithoutAggregation": {
                                    "$ref": "#/components/examples/DestinationHierarchyExample"
                                },
                                "WithAggregation": {
                                    "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                },
                                "GenericMqttHierarchyConfigurationFlexible": {
                                    "value": {
                                        "sourceType": "asset",
                                        "sourceName": "TopAsset",
                                        "sourceId": "91d64626-e1d1-4166-a513-923a7f2a2d44",
                                        "parentId": "",
                                        "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                                        "values": [
                                            {
                                                "key": "hierarchyConfiguration",
                                                "value": "{\"syncParameters\":{\"interval\":0,\"trigger\":\"4a5e9e6d-7bfa-4c9a-b433-5ca3570d8f68\",\"include\":true,\"merge\":false,\"granular\":false},\"configParameters\":{\"topic\":\"/test/genmqtt\",\"payload\":{\"ts\":\"$timestamp\",\"v\":\"$value\"}}}"
                                            }
                                        ]
                                    },
                                    "description": "Example for a top hierarchy element for generic mqtt with a hierarchy configuration. The settings are for flexible mode (granular = false) have no publish internval, trigger on a attribute change, include unchanged values and do not merge. For more details about the hierarchy configuration see the IIH documentation about configuring a destination hierarchy package."
                                },
                                "GenericMqttHierarchyConfigurationAutomatic": {
                                    "value": {
                                        "sourceType": "asset",
                                        "sourceName": "TopAsset",
                                        "sourceId": "91d64626-e1d1-4166-a513-923a7f2a2d44",
                                        "parentId": "",
                                        "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                                        "values": [
                                            {
                                                "key": "hierarchyConfiguration",
                                                "value": "{\"syncParameters\":{\"interval\":10,\"trigger\":\"onChange\",\"include\":false,\"merge\":true,\"granular\":true},\"configParameters\":{\"topic\":\"/test/genmqtt\",\"payload\":{\"ts\":\"$timestamp\",\"v\":\"$valueTemplate\"},\"valueTemplate\":{\"v\":\"$value\",\"t\":\"$timestamp\"}}}"
                                            }
                                        ]
                                    },
                                    "description": "Example for a top hierarchy element for generic mqtt with a hierarchy configuration. The settings are for automatic mode (granular = true) have a publish internval, trigger on every change, do not include unchanged values and merge. For more details about the hierarchy configuration see the IIH documentation about configuring a destination hierarchy package."
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                },
                                "examples": {
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyExample"
                                    },
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "ValuesNotSupported": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values is invalid. Reason: Values are not supported for this destination type.",
                                            "errorParams": {
                                                "what": "values"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ValuesNotSupported2": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values is invalid. Reason: Values are not supported for this hierarchy level.",
                                            "errorParams": {
                                                "what": "values"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfiguration": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameter": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParameters": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishInterval": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.interval is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.interval"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishTrigger": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.trigger is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.trigger"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishInclude": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.include is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.include"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationIncludeNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.include is invalid. Reason: Include hierarchy not possible with granular.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.include"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationTriggerNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.trigger is invalid. Reason: Trigger attribtue not possible with granular.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.trigger"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge not possible with granular and no publish interval.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeMustBeEnabled": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge must be enabled with granular and publish interval.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeOnlyWithInterval": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge only possible with interval and no trigger attribute.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersTopic": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.topic is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.topic"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersPayload": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationValueOnlyWithoutMerge": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload.value is invalid. Reason: value only possible without merge.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload.value"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersValueTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.valueTemplate is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.valueTemplate"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "If $valueTemplate is used in payload, there must be an object valueTemplate defined in configParameters."
                                    },
                                    "InvalidHierarchyConfigurationEmptyValueTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.valueTemplate is invalid. Reason: Object cannot be empty.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.valueTemplate"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationNoValueOrTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload is invalid. Reason: Either value or valueTemplate must be present.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ParentNotAllowed": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter parentId is invalid. Reason: Parent with type aspect is not allowed for source type asset",
                                            "errorParams": {
                                                "what": "parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "Different destination types allow different structures. Senseye and mindsphere need an aspect for attributes and alarms. Also it is not allowed to have an attribute/alarm channel as a parent."
                                    },
                                    "NameMustBeEmpty": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name must be empty if sourceId is used.",
                                            "errorParams": {
                                                "what": "name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "AttributeNeedsSource": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceType is invalid. Reason: SourceType Attribute/AlarmChannel is not supported without SourceId.",
                                            "errorParams": {
                                                "what": "sourceType"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "NameMustBeSet": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name must be set if sourceId is not used.",
                                            "errorParams": {
                                                "what": "name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ParentNotAllowed2": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter parentId is invalid. Reason: Only assets can have no parent.",
                                            "errorParams": {
                                                "what": "parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "UniquenessName": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name must be unique",
                                            "errorParams": {
                                                "what": "name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "The same name cannot be used twice within the same parent."
                                    },
                                    "UniquenessSourceId": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceId is invalid. Reason: SourceId must be unique",
                                            "errorParams": {
                                                "what": "sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "The same sourceId cannot be used twice within the same parent."
                                    },
                                    "AlarmChannelNotAllowed": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceType is invalid. Reason: SourceType AlarmChannel not enabled for this destination.",
                                            "errorParams": {
                                                "what": "sourceType"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "Only type mindsphere allows AlarmChannel as source type."
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}/Hierarchy/{hierarchyId}": {
            "get": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Get a destination hierarchy.",
                "description": "Get a specfific destination hierarchy.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "hierarchyId",
                        "example": "a95625055a4d4f89acb29749165fb16c",
                        "in": "path",
                        "description": "destination hierarchy id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "includeHasChildren",
                        "in": "query",
                        "description": "Check if this element has any children in the destination hierarchy. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                },
                                "examples": {
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyExample"
                                    },
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    },
                                    "DestinationHierarchyNotFound": {
                                        "$ref": "#/components/examples/DestinationHierarchyNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Update a destination hierarchy.",
                "description": "Update a specfific destination hierarchy. Name and sourceId must be unique within the same parent.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "hierarchyId",
                        "example": "a95625055a4d4f89acb29749165fb16c",
                        "in": "path",
                        "description": "destination hierarchy id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DestinationHierarchy"
                            },
                            "examples": {
                                "WithoutAggregation": {
                                    "$ref": "#/components/examples/DestinationHierarchyExample"
                                },
                                "WithAggregation": {
                                    "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                },
                                "examples": {
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyExample"
                                    },
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "ValuesNotSupported": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values is invalid. Reason: Values are not supported for this destination type.",
                                            "errorParams": {
                                                "what": "values"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ValuesNotSupported2": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values is invalid. Reason: Values are not supported for this hierarchy level.",
                                            "errorParams": {
                                                "what": "values"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfiguration": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameter": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParameters": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishInterval": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.interval is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.interval"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishTrigger": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.trigger is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.trigger"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationSyncParameterPublishInclude": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.include is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.include"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationIncludeNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.include is invalid. Reason: Include hierarchy not possible with granular.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.include"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationTriggerNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.trigger is invalid. Reason: Trigger attribtue not possible with granular.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.trigger"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeNotWithGranular": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge not possible with granular and no publish interval.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeMustBeEnabled": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge must be enabled with granular and publish interval.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationMergeOnlyWithInterval": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.syncParameters.merge is invalid. Reason: Merge only possible with interval and no trigger attribute.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.syncParameters.merge"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersTopic": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.topic is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.topic"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersPayload": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationValueOnlyWithoutMerge": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload.value is invalid. Reason: value only possible without merge.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload.value"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "MissingHierarchyConfigurationConfigParametersValueTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "MissingParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.valueTemplate is missing.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.valueTemplate"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        },
                                        "description": "If $valueTemplate is used in payload, there must be an object valueTemplate defined in configParameters."
                                    },
                                    "InvalidHierarchyConfigurationEmptyValueTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.valueTemplate is invalid. Reason: Object cannot be empty.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.valueTemplate"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "InvalidHierarchyConfigurationNoValueOrTemplate": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter values.key.hierarchyConfiguration.configParameters.payload is invalid. Reason: Either value or valueTemplate must be present.",
                                            "errorParams": {
                                                "what": "values.key.hierarchyConfiguration.configParameters.payload"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ParentNotAllowed": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter parentId is invalid. Reason: Parent with type aspect is not allowed for source type asset",
                                            "errorParams": {
                                                "what": "parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "NameMustBeEmpty": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name must be empty if sourceId is used.",
                                            "errorParams": {
                                                "what": "name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "AttributeNeedsSource": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceType is invalid. Reason: SourceType Attribute is not supported without SourceId.",
                                            "errorParams": {
                                                "what": "sourceType"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "ParentNotAllowed2": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter parentId is invalid. Reason: Only assets can have no parent.",
                                            "errorParams": {
                                                "what": "parentId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "UniquenessName": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter name is invalid. Reason: Name must be unique",
                                            "errorParams": {
                                                "what": "name"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "UniquenessSourceId": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceId is invalid. Reason: SourceId must be unique",
                                            "errorParams": {
                                                "what": "sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "SourceIdChange": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter sourceId is invalid. Reason: SourceId cannot be set, only removed.",
                                            "errorParams": {
                                                "what": "sourceId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    },
                                    "NotAllowed": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter DestinationHierarchy is invalid. Reason:Only supported to change parent, source, name and the aggregation configuration.",
                                            "errorParams": {
                                                "what": "DestinationHierarchy"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/DataDestination/{id}/Hierarchy"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    },
                                    "DestinationHierarchyNotFound": {
                                        "$ref": "#/components/examples/DestinationHierarchyNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Delete a destination hierarchy.",
                "description": "Delete a specfific destination hierarchy.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "hierarchyId",
                        "example": "a95625055a4d4f89acb29749165fb16c",
                        "in": "path",
                        "description": "destination hierarchy id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                },
                                "examples": {
                                    "WithoutAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyExample"
                                    },
                                    "WithAggregation": {
                                        "$ref": "#/components/examples/DestinationHierarchyWithAggregationExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    },
                                    "DestinationHierarchyNotFound": {
                                        "$ref": "#/components/examples/DestinationHierarchyNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}/Hierarchy/Bulk/Create": {
            "post": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Create a set of new destination hierarchies.",
                "description": "Create a set of new destination hierarchies. Name and sourceId must be unique within the same parent. AlarmChannel is only possible for destination type mindsphere. For more restrictions and possible errors see POST /DataService/DataDestination/{id}/Hierarchy.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                }
                            },
                            "examples": {
                                "Create": {
                                    "$ref": "#/components/examples/DestinationHierarchyArrayExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchyBulkResponse"
                                },
                                "examples": {
                                    "Create": {
                                        "$ref": "#/components/examples/DestinationHierarchyBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}/Hierarchy/Bulk/Update": {
            "post": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Update a set of new destination hierarchies.",
                "description": "Update a set of new destination hierarchies. Name and sourceId must be unique within the same parent. For more restrictions and possible errors see PUT /DataService/DataDestination/{id}/Hierarchy/{hierarchyId}.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/DestinationHierarchy"
                                }
                            },
                            "examples": {
                                "Update": {
                                    "$ref": "#/components/examples/DestinationHierarchyArrayExample"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchyBulkResponse"
                                },
                                "examples": {
                                    "Create": {
                                        "$ref": "#/components/examples/DestinationHierarchyBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/DataDestination/{id}/Hierarchy/Bulk/Delete": {
            "post": {
                "tags": [
                    "DestinationHierarchy"
                ],
                "summary": "Delete a set of new destination hierarchies.",
                "description": "Delete a set of new destination hierarchies.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "08ff6fd3ba7e4a94887708b22c6fb70b",
                        "in": "path",
                        "description": "data destination id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "example": [
                                "53abb2fdc0da4c24b84b735930c7b9c8",
                                "099fdb1ca4fd4829a7afdeff7091ee02"
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DestinationHierarchyBulkResponse"
                                },
                                "examples": {
                                    "Delete": {
                                        "$ref": "#/components/examples/DestinationHierarchyBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "DataDestinationNotFound": {
                                        "$ref": "#/components/examples/DataDestinationNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Service/Version": {
            "get": {
                "tags": [
                    "Service"
                ],
                "summary": "Get version.",
                "description": "Get the current version of dataservice.",
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VersionInfo"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Service/IsRunning": {
            "get": {
                "tags": [
                    "Service"
                ],
                "summary": "Check if dataservice is running.",
                "description": "Can be called to check if dataservice is available.",
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "isRunning": {
                                            "type": "boolean",
                                            "example": true,
                                            "readOnly": true,
                                            "description": "returns always true."
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Channels": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Get all synchronization channels.",
                "description": "Get a list of all available synchronization channels.",
                "parameters": [
                    {
                        "name": "includeState",
                        "in": "query",
                        "description": "If true additional runtime state information will be included in the response.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannelsResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Create a new synchronization channel.",
                "description": "Create a new synchronization channel.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SyncChannel"
                            },
                            "example": {
                                "channelName": "Channel_1",
                                "active": true,
                                "config": {
                                    "mqttHost": "localhost",
                                    "mqttPort": 1883,
                                    "useCredentials": true,
                                    "username": "edge",
                                    "password": "edge",
                                    "useCertificates": false
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannel"
                                },
                                "examples": {
                                    "SyncChannelExample": {
                                        "$ref": "#/components/examples/SyncChannelExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Channels/{id}": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Read a synchronization channel.",
                "description": "Read a specific synchronization channel.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "13d99c75-3f78-4336-b3ea-823384296835",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "includeState",
                        "in": "query",
                        "description": "If true additional runtime state information will be included in the response.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannel"
                                },
                                "examples": {
                                    "SyncChannelExample": {
                                        "$ref": "#/components/examples/SyncChannelExample"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Update a synchronization channel.",
                "description": "Update a specific synchronization channel.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "13d99c75-3f78-4336-b3ea-823384296835",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SyncChannel"
                            },
                            "example": {
                                "channelName": "Channel_1",
                                "active": true,
                                "config": {
                                    "mqttHost": "localhost",
                                    "mqttPort": 1883,
                                    "useCredentials": true,
                                    "username": "edge",
                                    "password": "edge",
                                    "useCertificates": false
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannel"
                                },
                                "examples": {
                                    "SyncChannelExample": {
                                        "$ref": "#/components/examples/SyncChannelExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Delete a synchronization channel.",
                "description": "Delete a specific synchronization channel.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "13d99c75-3f78-4336-b3ea-823384296835",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannel"
                                },
                                "examples": {
                                    "SyncChannelExample": {
                                        "$ref": "#/components/examples/SyncChannelExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Children": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Get all synchronization children.",
                "description": "Get a list of all available synchronization children.",
                "parameters": [
                    {
                        "name": "channelId",
                        "in": "query",
                        "description": "The id of the SyncChannel to get the children for. If not specified all SyncChild objects are returned.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "includeState",
                        "in": "query",
                        "description": "If true additional runtime state information will be included in the response.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChildResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Create a new synchronization child.",
                "description": "Create a new synchronization child.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SyncChild"
                            },
                            "example": {
                                "childName": "Child_1",
                                "channelId": "13d99c75-3f78-4336-b3ea-823384296835",
                                "location": "af67e288-12e2-4098-b0ef-e50485c9e211",
                                "active": true
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChannel"
                                },
                                "example": {
                                    "childId": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                                    "childName": "Child_1",
                                    "channelId": "13d99c75-3f78-4336-b3ea-823384296835",
                                    "location": "af67e288-12e2-4098-b0ef-e50485c9e211",
                                    "active": true
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Children/{id}": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Read a synchronization child.",
                "description": "Read a specific synchronization child.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "includeState",
                        "in": "query",
                        "description": "If true additional runtime state information will be included in the response.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChild"
                                },
                                "example": {
                                    "childId": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                                    "childName": "Child_1",
                                    "channelId": "13d99c75-3f78-4336-b3ea-823384296835",
                                    "location": "af67e288-12e2-4098-b0ef-e50485c9e211",
                                    "active": true
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Update a synchronization child.",
                "description": "Update a specific synchronization child.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SyncChild"
                            },
                            "example": {
                                "childName": "Child_1",
                                "channelId": "13d99c75-3f78-4336-b3ea-823384296835",
                                "location": "af67e288-12e2-4098-b0ef-e50485c9e211",
                                "active": true
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChild"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Delete a synchronization child.",
                "description": "Delete a specific synchronization child.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "cleanup",
                        "in": "query",
                        "description": "If true all objects synchronized via this SyncChild will be deleted as well.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SyncChild"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Children/{id}/DeleteObjects": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Delete synchronized objects.",
                "description": "Delete all objects synchronized via a specific synchronization child.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Children/{id}/ReleaseObjects": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Release synchronized objects.",
                "description": "Release all objects synchronized via a specific synchronization child.<br>Released objects are no longer associated with the synchronization child and can be edited or deleted by the user.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Sync/Children/{id}/ReleaseObject": {
            "get": {
                "tags": [
                    "Synchronization"
                ],
                "summary": "Release synchronized object subtree.",
                "description": "Release the specified object and all synchronized objects in its subtree for a specific synchronization child.<br>Released objects are no longer associated with the synchronization child and can be edited or deleted by the user.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "anchor",
                        "description": "Anchor of the object to release.",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SuccessResponse"
                                },
                                "example": {
                                    "success": true
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/VariableConfigurations/{id}": {
            "get": {
                "tags": [
                    "VariableConfigurations"
                ],
                "summary": "Get a variable configuration.",
                "description": "Get a variable configuration. If not found a default configuration will be send.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3a801b60917e4ca291ff027ba263697e",
                        "in": "path",
                        "description": "variable configuration id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariableConfiguration"
                                },
                                "examples": {
                                    "Default": {
                                        "value": {
                                            "variableId": "3a801b60917e4ca291ff027ba263697e",
                                            "unit": "",
                                            "isAggregated": false,
                                            "acquisitionCategory": "ProcessValue",
                                            "acquisitionCycle": {
                                                "base": "acyclic",
                                                "factor": 0
                                            },
                                            "counterConfigurations": []
                                        }
                                    },
                                    "Set": {
                                        "value": {
                                            "variableId": "3a801b60917e4ca291ff027ba263697e",
                                            "unit": "%",
                                            "isAggregated": true,
                                            "acquisitionCategory": "Counter",
                                            "acquisitionCycle": {
                                                "factor": 1,
                                                "base": "Minute"
                                            },
                                            "counterConfigurations": [
                                                {
                                                    "validFrom": "2021-12-01T00:00:00Z",
                                                    "counterConstant": 1,
                                                    "counterType": "ReverseCounter",
                                                    "triggeredReset": false,
                                                    "rangeStart": null,
                                                    "rangeEnd": null
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "VariableConfigurations"
                ],
                "summary": "Update a variable configuration.",
                "description": "Update a specific variable configuration. If the configuration for this id does it exist, it will be created.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3a801b60917e4ca291ff027ba263697e",
                        "in": "path",
                        "description": "variable configuration to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/VariableConfiguration"
                            },
                            "example": {
                                "unit": "",
                                "isAggregated": false,
                                "acquisitionCategory": "None",
                                "acquisitionCycle": {
                                    "base": "hour",
                                    "factor": 3
                                },
                                "counterConfigurations": []
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariableConfiguration"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "VariableConfigurations"
                ],
                "summary": "Delete a variable configuration.",
                "description": "Delete a variable configuration. If the configuration does not exist, only a default config will be returned.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "3a801b60917e4ca291ff027ba263697e",
                        "in": "path",
                        "description": "variable configuration to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariableConfiguration"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/VariableConfigurations/Size": {
            "get": {
                "summary": "Get used disk space by variable configurations.",
                "description": "Return the size of the variableConfigurations folder.",
                "tags": [
                    "VariableConfigurations"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables": {
            "get": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Get all variables.",
                "description": "Get a list of Variables. Variables can be filtered by assetsIds, aspectIds, adapterIds or variableIds. If no filter is specified, all variables will be returned. It is not supported to specify more than one filter parameter. \n\n Please note that the generated curl command and request URL should be modified, if a filter is being used, before using sending the request to IIH Essentials. The returned array must be enclosed in (square) brackets [], each single string should be in quotation marks and strings should remain separated by commas, in case multiple strings are used for a filter. For instance: \n\n - Filtering for a single assetId: http://localhost:4203/DataService/Variables?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\"] \n\n - Filtering for multiple assetIds: http://localhost:4203/DataService/Variables?assetIds=[\"53f05e175c0c48bd9742157c1a462ca9\",\"eab960dcb97e4752b298387f780cba1e\"]",
                "parameters": [
                    {
                        "name": "assetIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "example": [
                            "d0df2a40afd64671bda7b53ce8f08ef8"
                        ],
                        "description": "Filter the variable list by assetIds."
                    },
                    {
                        "name": "aspectIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "required": false,
                        "example": [
                            "53abb2fdc0da4c24b84b735930c7b9c8"
                        ],
                        "description": "Filter the variable list by aspectIds."
                    },
                    {
                        "name": "adapterIds",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "required": false,
                        "example": [
                            "profinet"
                        ],
                        "description": "Filter the variable list by adapterIds."
                    },
                    {
                        "name": "variable",
                        "in": "query",
                        "style": "form",
                        "explode": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        },
                        "required": false,
                        "example": [
                            "624c0f7b550c4c468c848842489582f3"
                        ],
                        "description": "Filter the variable list by variableIds."
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariablesResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "TooManyFilter": {
                                        "$ref": "#/components/examples/TooManyFilterExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Create an variable.",
                "description": "Create a new variable. Name must be unique in the provided aspect or asset and not empty. It is not allowed to create a variable from an aspect with aspect type.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Variable"
                            },
                            "examples": {
                                "With Adapter": {
                                    "value": {
                                        "variableName": "Variable1",
                                        "dataType": "Double",
                                        "assetId": "0",
                                        "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                        "adapterId": "profinet",
                                        "topic": "PLC1::Double1::4::7"
                                    }
                                },
                                "Without Adapter": {
                                    "value": {
                                        "variableName": "Variable1",
                                        "dataType": "Double",
                                        "assetId": "0",
                                        "aspectId": ""
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Variable"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 37,
                                            "errorKey": "VariableNameAlreadyInUse",
                                            "message": "The asset 'edge' has already a variable with the name 'Variable1'.",
                                            "errorParams": {
                                                "asset": "edge",
                                                "nameInUse": "Variable1"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    },
                                    "NoAspectTypeMember": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 53,
                                            "errorKey": "VariableInstance_NoCreate",
                                            "message": "It is not allowed to create AspectType instance members.",
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    },
                                    "InconsistentParents": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter aspectId is invalid: The specified aspect is not a child of the specified asset.",
                                            "errorParams": {
                                                "reason": "The specified aspect is not a child of the specified asset.",
                                                "what": "aspectId"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "AssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Asset with the id 01 was not found.",
                                            "errorParams": {
                                                "id": "01",
                                                "what": "Asset"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    },
                                    "AspectNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Aspect with the id 1 was not found.",
                                            "errorParams": {
                                                "id": "1",
                                                "what": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    },
                                    "AdapterNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Adapter with the id 123 was not found.",
                                            "errorParams": {
                                                "id": "123",
                                                "what": "Adapter"
                                            },
                                            "debugInfo": {
                                                "method": "POST",
                                                "route": "/DataService/Variables"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/{id}": {
            "get": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Read a variable.",
                "description": "Read a specific variable with the id from path.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "53abb2fdc0da4c24b84b735930c7b9c8",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Variable"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/VariableNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Update a variable.",
                "description": "Update a specific variable. Name must be unique in the provided aspect or asset.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "53abb2fdc0da4c24b84b735930c7b9c8",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "forceDataTypeChange",
                        "required": false,
                        "in": "query",
                        "example": true,
                        "schema": {
                            "type": "boolean"
                        },
                        "description": "if datatype is changed and the types cannot be converted without error, this forces to convert it anyway."
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Variable"
                            },
                            "example": {
                                "variableName": "Variable1",
                                "dataType": "Double",
                                "assetId": "0",
                                "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                "adapterId": "profinet",
                                "topic": "PLC1::Double1::4::7"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Aspect"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "MissingParameter": {
                                        "$ref": "#/components/examples/ExceptionMissingParameterExample"
                                    },
                                    "InvalidParameter": {
                                        "$ref": "#/components/examples/ExceptionInvalidParameterExample"
                                    },
                                    "NameInUse": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 37,
                                            "errorKey": "VariableNameAlreadyInUse",
                                            "message": "The asset 'edge' has already a variable with the name 'Variable1'.",
                                            "errorParams": {
                                                "asset": "edge",
                                                "nameInUse": "Variable1"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    },
                                    "NoAspectTypeMember": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 53,
                                            "errorKey": "VariableInstance_NoCreate",
                                            "message": "It is not allowed to create AspectType instance members.",
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    },
                                    "InconsistentParents": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "message": "Parameter aspectId is invalid: The specified aspect is not a child of the specified asset.",
                                            "errorParams": {
                                                "reason": "The specified aspect is not a child of the specified asset.",
                                                "what": "aspectId"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/VariableNotFoundExample"
                                    },
                                    "AssetNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Asset with the id 01 was not found.",
                                            "errorParams": {
                                                "id": "01",
                                                "what": "Asset"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    },
                                    "AspectNotFound": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 404,
                                            "stateText": "NotFound",
                                            "errorCode": 4,
                                            "errorKey": "NotFound",
                                            "message": "The Aspect with the id 1 was not found.",
                                            "errorParams": {
                                                "id": "1",
                                                "what": "Aspect"
                                            },
                                            "debugInfo": {
                                                "method": "PUT",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Delete a variable.",
                "description": "Delete a specific variable. Only variables who are not part of an aspect type can be deleted.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "53abb2fdc0da4c24b84b735930c7b9c8",
                        "in": "path",
                        "description": "variable id to search for",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Variable"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NoAspectTypeMember": {
                                        "value": {
                                            "service": "IIH Essentials",
                                            "state": 400,
                                            "stateText": "BadRequest",
                                            "errorCode": 56,
                                            "errorKey": "VariableInstance_NoDelete",
                                            "message": "It is not allowed to delete AspectType instance members.",
                                            "debugInfo": {
                                                "method": "DELETE",
                                                "route": "/DataService/Variables/{id}"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "NotFound": {
                                        "$ref": "#/components/examples/VariableNotFoundExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/Size": {
            "get": {
                "deprecated": true,
                "summary": "Get used disk space by variable variables.",
                "description": "Return the size of the variables folder.",
                "tags": [
                    "Variables"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Size"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/TotalNumber": {
            "get": {
                "deprecated": true,
                "summary": "Get the total number of variables.",
                "description": "Return the total number of variables in system.",
                "tags": [
                    "Variables"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TotalNumber"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/TotalNumberMappedToSource": {
            "get": {
                "deprecated": true,
                "summary": "Get the total number of variables which mapped to data source.",
                "description": "Return the total number of variables which mapped to data source in system.",
                "tags": [
                    "Variables"
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TotalNumberMappedToSource"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/Bulk/Create": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Create a set of variables.",
                "description": "Create a set of new variables. Name must be unique in the provided variable within the asset or aspect and not empty. The provided assetId and aspectId must exist. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Variable"
                                }
                            },
                            "example": [
                                {
                                    "variableName": "Variable1",
                                    "dataType": "Double",
                                    "assetId": "0",
                                    "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                    "adapterId": "profinet",
                                    "topic": "PLC1::Double1::4::7"
                                },
                                {
                                    "variableName": "Variable2",
                                    "dataType": "Double",
                                    "assetId": "0",
                                    "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                    "adapterId": "profinet",
                                    "topic": "PLC1::Double1::4::7"
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariableBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/VariableBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/Bulk/Update": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Update a set of variables.",
                "description": "Update a set of variables. Name must be unique in the provided variable within the asset or aspect and not empty. The provided assetId and aspectId must exist. There is a limit of 1000 objects with one call.",
                "parameters": [
                    {
                        "name": "forceDataTypeChange",
                        "required": false,
                        "in": "query",
                        "example": true,
                        "schema": {
                            "type": "boolean"
                        },
                        "description": "If datatype is changed and the types cannot be converted without error, this forces to convert it anyway."
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/components/schemas/Variable"
                                }
                            },
                            "example": [
                                {
                                    "variableId": "53abb2fdc0da4c24b84b735930c7b9c8",
                                    "variableName": "Variable1",
                                    "dataType": "Double",
                                    "blobType": "image/png",
                                    "assetId": "0",
                                    "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                    "unit": "",
                                    "adapterId": "profinet",
                                    "topic": "PLC1::Double1::4::7",
                                    "aspectName": "Aspect",
                                    "connected": false,
                                    "store": true
                                },
                                {
                                    "variableId": "099fdb1ca4fd4829a7afdeff7091ee02",
                                    "variableName": "Variable2",
                                    "dataType": "Double",
                                    "blobType": "image/png",
                                    "assetId": "0",
                                    "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                                    "unit": "",
                                    "adapterId": "profinet",
                                    "topic": "PLC1::Double1::4::8",
                                    "aspectName": "Aspect",
                                    "connected": false,
                                    "store": true
                                }
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AspectBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/AspectBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/Bulk/Delete": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Delete a set of variables.",
                "description": "Delete a set of variables. There is a limit of 1000 objects with one call.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "example": [
                                "53abb2fdc0da4c24b84b735930c7b9c8",
                                "099fdb1ca4fd4829a7afdeff7091ee02"
                            ]
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariableBulkResponse"
                                },
                                "examples": {
                                    "Aspect": {
                                        "$ref": "#/components/examples/VariableBulkResponseExample"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "examples": {
                                    "Bulk Limit": {
                                        "$ref": "#/components/examples/ExceptionBulkLimitExample"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/ValidateRule": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Validate a rule.",
                "description": "For rule based variables, this route can be used to validate variable's rule formula. Variable should be provided in the body with all rule tags.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Variable"
                            },
                            "example": {
                                "variableName": "Name",
                                "dataType": "Int32",
                                "assetId": "0",
                                "sourceType": "Rule",
                                "rule": {
                                    "formula": "var1 + var2",
                                    "tags": [
                                        {
                                            "name": "var1",
                                            "adapterId": "simaticadapter",
                                            "connectionName": "S7400-01",
                                            "tagName": "Tag_1",
                                            "dataType": "Int32"
                                        },
                                        {
                                            "name": "var2",
                                            "adapterId": "s7plus",
                                            "connectionName": "S71500-01",
                                            "tagName": "Tag_2",
                                            "dataType": "Double"
                                        }
                                    ]
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariablesValidateRuleResponse"
                                },
                                "examples": {
                                    "Success": {
                                        "value": {
                                            "success": true
                                        }
                                    },
                                    "Error": {
                                        "value": {
                                            "success": false,
                                            "error": {
                                                "service": "IIH Essentials",
                                                "state": 400,
                                                "stateText": "BadRequest",
                                                "errorCode": 80,
                                                "errorKey": "VariableRuleCompileError",
                                                "message": "Formula compilation failed: ERR209 - Premature end of expression[1]",
                                                "errorParams": {
                                                    "reason": "ERR209 - Premature end of expression[1]"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/Variables/ExecuteRule": {
            "post": {
                "deprecated": true,
                "tags": [
                    "Variables"
                ],
                "summary": "Execute a rule.",
                "description": "For rule based variables, this route can be used to execute variable's rule formula. Variable should be provided in the body with all rule tags and values.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Variable"
                            },
                            "example": {
                                "variableName": "Name",
                                "dataType": "Int32",
                                "assetId": "0",
                                "sourceType": "Rule",
                                "rule": {
                                    "formula": "var1 + var2",
                                    "tags": [
                                        {
                                            "name": "var1",
                                            "adapterId": "simaticadapter",
                                            "connectionName": "S7400-01",
                                            "tagName": "Tag_1",
                                            "dataType": "Int32"
                                        },
                                        {
                                            "name": "var2",
                                            "adapterId": "s7plus",
                                            "connectionName": "S71500-01",
                                            "tagName": "Tag_2",
                                            "dataType": "Double"
                                        }
                                    ]
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "var1",
                        "description": "Name of the parameter should be the name of the tag. For each tags, there should be a query parameter to give its value.",
                        "example": "5",
                        "required": true,
                        "in": "query",
                        "schema": {
                            "type": "number"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/VariablesExecuteRuleResponse"
                                },
                                "examples": {
                                    "Success": {
                                        "value": {
                                            "success": true,
                                            "value": 5
                                        }
                                    },
                                    "Error": {
                                        "value": {
                                            "success": false,
                                            "error": {
                                                "service": "IIH Essentials",
                                                "state": 400,
                                                "stateText": "BadRequest",
                                                "errorCode": 80,
                                                "errorKey": "VariableRuleCompileError",
                                                "message": "Formula compilation failed: ERR209 - Premature end of expression[1]",
                                                "errorParams": {
                                                    "reason": "ERR209 - Premature end of expression[1]"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor/v1/aspects": {
            "post": {
                "tags": [
                    "Anchor Aspects"
                ],
                "summary": "Creates an aspect.",
                "description": "Creates an aspect. All depending types must be known to the system. Attributes are always specific to the entity and can only be-reused in case of a constant behavior of the associated attribute type. Attributes can always consist of a value (in this case the value must match the attribute type's data type) and a attribute type definition. The latter is required for instance-specific attributes. If the complete attribute type definition is present, the system must check if the definition is identical to the already known one which might have come from the entity type.",
                "requestBody": {
                    "description": "JSON document of the Aspect to be created. Missing $anchor-identifiers will automatically be created. `$concept` (if present) must be set to value `aspect`.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Entity"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created aspect instance serialized according to schema `Entity`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Entity"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor Aspects"
                ],
                "summary": "Returns all aspects.",
                "description": "Returns all aspects.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AspectType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub entities within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of Aspect instances serialized according to schema `Entity`. `$concept` (if present) is always set to value `aspect`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Entity"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/aspects/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Aspects"
                ],
                "summary": "Returns an aspect.",
                "description": "Returns an aspect.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the aspect.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub aspects or aspects within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the Aspect instance serialized according to schema `Entity`. `$concept` (if present) is always set to value `aspect`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Entity"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Aspects"
                ],
                "summary": "Removes an aspect.",
                "description": "Removes an aspect.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the aspect.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/aspecttypes": {
            "post": {
                "tags": [
                    "Anchor AspectTypes"
                ],
                "summary": "Creates an aspect type.",
                "description": "All depending types must be known to the system. AttributeTypes are always defined along with an aspect or aspect. An already existing attribute type can be re-used. If the ID of an rerfered type is known, no additional information needs to be transported. Aside from this, definitions can always be complete (identifier and additional information), but the system must check if the definition is identical to the already known one.",
                "requestBody": {
                    "description": "JSON document of the AspectType to be created. Missing $anchor-identifiers will automatically be created. `$concept` (if present) must be set to value `aspect`.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/EntityType"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created AspectType instance serialized according to schema `EntityType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor AspectTypes"
                ],
                "summary": "Returns all aspect types.",
                "description": "Returns all aspect types.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AspectType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub aspect types or aspect types within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "includeInherited",
                        "in": "query",
                        "description": "Includes attributes of types which the actual aspect type inherits from. Default: `true`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of AspectType instances serialized according to schema `EntityType`. `$concept` (if present) is always set to value `aspect`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/EntityType"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/aspecttypes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor AspectTypes"
                ],
                "summary": "Returns an aspect type.",
                "description": "Returns an aspect type.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the aspect type.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub aspect types or aspect types within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "includeInherited",
                        "in": "query",
                        "description": "Includes attributes of types which the actual aspect type inherits from. Default: `true`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the AspectType instances serialized according to schema `EntityType`. `$concept` (if present) is always set to value `aspect`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityType"
                                }
                            },
                            "application/schema+json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor AspectTypes"
                ],
                "summary": "Removes an aspect type.",
                "description": "Removes an aspect type. The given identifier must exist, otherwise the method will fail.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the aspect type.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/assets": {
            "post": {
                "tags": [
                    "Anchor Assets"
                ],
                "summary": "Creates an asset.",
                "description": "Creates an asset. All depending types must be known to the system. Attributes are always specific to the entity and can only be-reused in case of a constant behavior of the associated attribute type. Attributes can always consist of a value (in this case the value must match the attribute type's data type) and a attribute type definition. The latter is required for instance-specific attributes. If the complete attribute type definition is present, the system must check if the definition is identical to the already known one which might have come from the entity type.",
                "requestBody": {
                    "description": "JSON document of the Asset to be created. Missing $anchor-identifiers will automatically be created. `$concept` (if present) must be set to value `asset`.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Entity"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created asset instance serialized according to schema `Entity`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Entity"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor Assets"
                ],
                "summary": "Returns all assets.",
                "description": "Returns all assets.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AssetType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub entities within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of Asset instances serialized according to schema `Entity`. `$concept` (if present) is always set to value `asset`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Entity"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/assets/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Assets"
                ],
                "summary": "Returns an asset.",
                "description": "Returns an asset.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the asset.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub assets or aspects within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the Asset instance serialized according to schema `Entity`. `$concept` (if present) is always set to value `asset`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Entity"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Assets"
                ],
                "summary": "Removes an asset.",
                "description": "Removes an asset.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the asset.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/assettypes": {
            "post": {
                "tags": [
                    "Anchor AssetTypes"
                ],
                "summary": "Creates an asset type.",
                "description": "All depending types must be known to the system. AttributeTypes are always defined along with an asset or aspect. An already existing attribute type can be re-used. If the ID of an rerfered type is known, no additional information needs to be transported. Aside from this, definitions can always be complete (identifier and additional information), but the system must check if the definition is identical to the already known one.",
                "requestBody": {
                    "description": "JSON document of the AssetType to be created. Missing $anchor-identifiers will automatically be created. `$concept` (if present) must be set to value `asset`.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/EntityType"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created AssetType instance serialized according to schema `EntityType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor AssetTypes"
                ],
                "summary": "Returns all asset types.",
                "description": "Returns all asset types.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AssetType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub asset types or aspect types within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "includeInherited",
                        "in": "query",
                        "description": "Includes attributes of types which the actual asset type inherits from. Default: `true`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of AssetType instances serialized according to schema `EntityType`. `$concept` (if present) is always set to value `asset`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/EntityType"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/assettypes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor AssetTypes"
                ],
                "summary": "Returns an asset type.",
                "description": "Returns an asset type.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the asset type.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub asset types or aspect types within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    },
                    {
                        "name": "includeInherited",
                        "in": "query",
                        "description": "Includes attributes of types which the actual asset type inherits from. Default: `true`",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the AssetType instances serialized according to schema `EntityType`. `$concept` (if present) is always set to value `asset`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityType"
                                }
                            },
                            "application/schema+json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor AssetTypes"
                ],
                "summary": "Removes an asset type.",
                "description": "Removes an asset type. The given identifier must exist, otherwise the method will fail.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the asset type.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/attributes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Returns the value of an attribute.",
                "description": "Returns the value of an attribute.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the attribute.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "details",
                        "in": "query",
                        "description": "Controls whether just the plain value should be returned or the Attribute definition including details. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Value of the attribute or attribute definition with details.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeOrAttributeValue"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "put": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Updates the value of an attribute.",
                "description": "Updates the value of an attribute.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the attribute.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "description": "Plain value of the attribute or attribute definition incl. measurement unit and other additional information.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AttributeOrAttributeValue"
                            },
                            "example": 42
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Deletes an attribute.",
                "description": "Deletes an attribute.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the attribute.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/{domainconcept}/{anchor}/attributes": {
            "get": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Returns all attributes that belong to an entity.",
                "description": "Returns all attributes that belong to an entity.",
                "parameters": [
                    {
                        "name": "domainconcept",
                        "in": "path",
                        "description": "Concept the attribute belongs to. (.e.g. \"assets\")",
                        "required": true,
                        "schema": {
                            "pattern": "^(assets|aspects)$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of an entity.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AttributeType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Value of the attribute or attribute definition with details.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Attribute"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "post": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Creates an attribute.",
                "description": "Creates an attribute.",
                "parameters": [
                    {
                        "name": "domainconcept",
                        "in": "path",
                        "description": "Concept the attribute belongs to. (.e.g. \"assets\")",
                        "required": true,
                        "schema": {
                            "pattern": "^(assets|aspects)$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of an entity.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "description": "Definition of the attribute.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Attribute"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the created Attribute serialized according to schema `Attribute`."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/{domainconcept}/{anchor}/attributes/{name}": {
            "get": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Returns the value of an attribute.",
                "description": "Returns the value of an attribute.",
                "parameters": [
                    {
                        "name": "domainconcept",
                        "in": "path",
                        "description": "Concept the attribute belongs to. (.e.g. \"assets\")",
                        "required": true,
                        "schema": {
                            "pattern": "^(assets|aspects)$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of an entity.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "name",
                        "in": "path",
                        "description": "Attribute name",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "details",
                        "in": "query",
                        "description": "Controls whether just the plain value should be returned or the Attribute definition including details. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Value of the attribute or attribute definition with details.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeOrAttributeValue"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "put": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Updates the value of an attribute.",
                "description": "Updates the value of an attribute.",
                "parameters": [
                    {
                        "name": "domainconcept",
                        "in": "path",
                        "description": "Concept the attribute belongs to. (.e.g. \"assets\")",
                        "required": true,
                        "schema": {
                            "pattern": "^(assets|aspects)$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of an entity.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "name",
                        "in": "path",
                        "description": "Attribute name",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "description": "Plain value of the attribute or attribute definition incl. measurement unit and other additional information.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AttributeOrAttributeValue"
                            },
                            "example": 42
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Attributes"
                ],
                "summary": "Deletes an attribute.",
                "description": "Deletes an attribute.",
                "parameters": [
                    {
                        "name": "domainconcept",
                        "in": "path",
                        "description": "Concept the attribute belongs to. (.e.g. \"assets\")",
                        "required": true,
                        "schema": {
                            "pattern": "^(assets|aspects)$",
                            "type": "string"
                        }
                    },
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of an entity.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "name",
                        "in": "path",
                        "description": "Attribute name",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/attributetypes": {
            "post": {
                "tags": [
                    "Anchor AttributeTypes"
                ],
                "summary": "Creates a new AttributeType.",
                "description": "Creates a new AttributeType.",
                "requestBody": {
                    "description": "The JSON document of the AttributeType to be created according to schema `AttributeType`",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AttributeType"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the created AttributeType serialized according to schema `AttributeType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor AttributeTypes"
                ],
                "summary": "Returns all AttributeTypes.",
                "description": "Returns all AttributeTypes.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AttributeType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided attribute. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON array document of the AttributeType instances serialized according to schema `AttributeType`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AttributeType"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/attributetypes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor AttributeTypes"
                ],
                "summary": "Returns the requested AttributeType.",
                "description": "Returns the requested AttributeType.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the AttributeType",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the requested AttributeType serialized according to schema `AttributeType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor AttributeTypes"
                ],
                "summary": "Removes an AttributeType.",
                "description": "Removes an AttributeType.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the AttributeType to be deleted.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/metadata/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Metadata"
                ],
                "summary": "Returns the metadata for any element of interest.",
                "description": "Returns the metadata for any element of interest. There must be an element in the system that belongs to the given identifier.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the element of interest.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "Comma-separated list of filters for metadata keys (that is origin and key with an dot in between, e.g. `mindsphere.tenant-id`, resulting into the same schema as for namespaced types). Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the metadata associated with the element serialized according to schema `Metadata`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Metadata"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "patch": {
                "tags": [
                    "Anchor Metadata"
                ],
                "summary": "Updates metadata for a given element.",
                "description": "Updates metadata for a given element. There must be an element in the system that belongs to the given identifier. In contrast to other endpoints, there must not be metadata created via `POST` upfront.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the element for which metadata shall be added or updated.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "description": "JSON document with the metadata associated with the element.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Metadata"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Metadata"
                ],
                "summary": "Deletes the metadata for a given element.",
                "description": "Deletes the metadata for a given element. This is the only DELETE method that supports filters. There must be an element in the system that belongs to the given identifier.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the element of interest.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "Comma-separated list of filters for metadata keys (that is origin and key with an dot in between, e.g. `mindsphere.tenant-id`, resulting into the same schema as for namespaced types). Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/references": {
            "post": {
                "tags": [
                    "Anchor References"
                ],
                "summary": "Creates a Reference.",
                "description": "Creates a Reference.",
                "requestBody": {
                    "description": "JSON document of the Aspect to be created, serialized according to schema `Reference`. Missing $anchor-identifiers will automatically be created.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Reference"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created Reference instance serialized according to schema `Reference`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Reference"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor References"
                ],
                "summary": "Returns all References.",
                "description": "Returns all References.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the ReferenceType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of References.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Reference"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/references/{anchor}": {
            "get": {
                "tags": [
                    "Anchor References"
                ],
                "summary": "Returns a Reference.",
                "description": "Returns a Reference.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the Reference.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the Reference instance serialized according to schema `Reference`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Reference"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor References"
                ],
                "summary": "Deletes a Reference.",
                "description": "Deletes a Reference.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the reference.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/referencetypes": {
            "post": {
                "tags": [
                    "Anchor ReferenceTypes"
                ],
                "summary": "Creates a ReferenceType.",
                "description": "Creates a ReferenceType.",
                "requestBody": {
                    "description": "JSON document of the Aspect to be created, serialized according to schema `ReferenceType`. Missing $anchor-identifiers will automatically be created.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ReferenceType"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created ReferenceType instance serialized according to schema `ReferenceType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ReferenceType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor ReferenceTypes"
                ],
                "summary": "Returns all ReferenceTypes.",
                "description": "Returns all ReferenceTypes.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the ReferenceType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON array document of the RefereceType instances serialized according to schema `ReferenceType`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ReferenceType"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/referencetypes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor ReferenceTypes"
                ],
                "summary": "Returns a ReferenceType.",
                "description": "Returns a ReferenceType.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifer of the ReferenceType",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the ReferenceType instance serialized according to schema `ReferenceType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ReferenceType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor ReferenceTypes"
                ],
                "summary": "Deletes a Reference.",
                "description": "Deletes a Reference.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifer of the ReferenceType",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/relations": {
            "post": {
                "tags": [
                    "Anchor Relations"
                ],
                "summary": "Creates a Relation.",
                "description": "Creates a Relation.",
                "requestBody": {
                    "description": "JSON document of the Aspect to be created, serialized according to schema `Relation`. Missing $anchor-identifiers will automatically be created.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Relation"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created Relation instance serialized according to schema `Relation`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Relation"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor Relations"
                ],
                "summary": "Returns all Relations.",
                "description": "Returns all Relations.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the RelationType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of Relations.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Relation"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/relations/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Relations"
                ],
                "summary": "Returns a Relation.",
                "description": "Returns a Relation.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the relation.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the Relation instance serialized according to schema `Relation`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Relation"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Relations"
                ],
                "summary": "Deletes a Relation.",
                "description": "Deletes a Relation.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the Relation.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/relationtypes": {
            "post": {
                "tags": [
                    "Anchor RelationTypes"
                ],
                "summary": "Creates a RelationType.",
                "description": "Creates a RelationType.",
                "requestBody": {
                    "description": "JSON document of the Aspect to be created, serialized according to schema `RelationType`. Missing $anchor-identifiers will automatically be created.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/RelationType"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created RelationType instance serialized according to schema `RelationType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RelationType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor RelationTypes"
                ],
                "summary": "Returns all RelationTypes.",
                "description": "Returns all RelationTypes.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the RelationType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON array document of the RelationType instances serialized according to schema `RelationType`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/RelationType"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/relationtypes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor RelationTypes"
                ],
                "summary": "Returns a RelationType.",
                "description": "Returns a RelationType.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the RelationType",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the RelationType instance serialized according to schema `RelationType`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/RelationType"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor RelationTypes"
                ],
                "summary": "Deletes a RelationType.",
                "description": "Deletes a RelationType.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the RelationType.",
                        "required": true,
                        "schema": {
                            "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/views": {
            "post": {
                "tags": [
                    "Anchor Views"
                ],
                "summary": "Creates a view",
                "description": "Missing `$anchor`-identifier will automatically be created. `$name` and `$entrypoint` are mandatory. If no array of `$relations` is provided, an array with one wildcard entry only will be used as default. The methods fails if the identifier of the view is already in use or the entrypoint does not exist. Relevant relations are not checked.",
                "requestBody": {
                    "description": "JSON document of the View to be created.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/View"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "201": {
                        "description": "JSON document of the newly created View instance.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/View"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "get": {
                "tags": [
                    "Anchor Views"
                ],
                "summary": "Returns all views.",
                "description": "There is currently no filtering or pagination in place.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub assets or aspects within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with array of View instances serialized according to schema `Entity`.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/View"
                                    }
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor/v1/views/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Views"
                ],
                "summary": "Returns a view.",
                "description": "Returns a view.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the view",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "$ref": "#/components/parameters/SelectorsParameter"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document of the View instance serialized according to schema `Entity`.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/View"
                                }
                            }
                        }
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Views"
                ],
                "summary": "Deletes a view.",
                "description": "The given identifier must exist, otherwise the method will fail.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the view",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/attributes/{anchor}": {
            "get": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Returns the requested Attribute.",
                "description": "Returns the requested Attribute.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the Attribute.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_includeSource",
                        "in": "query",
                        "description": "If true the $_source property will be added to the returned Attributes.<br>`Usecase` Allow to provide the source configuration also with the new API. Prevent multiple queries when loading Attributes in the frontend.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Attribute definition.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeEx"
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Deletes an attribute.",
                "description": "Deletes an attribute.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the attribute.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "304": {
                        "$ref": "#/components/responses/DataNotModified"
                    },
                    "400": {
                        "$ref": "#/components/responses/RequestMalformed"
                    },
                    "401": {
                        "$ref": "#/components/responses/Unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/Forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/NotFound"
                    },
                    "405": {
                        "$ref": "#/components/responses/MethodNotAllowed"
                    },
                    "410": {
                        "$ref": "#/components/responses/ResourceGone"
                    },
                    "415": {
                        "$ref": "#/components/responses/UnsupportedMediaType"
                    },
                    "422": {
                        "$ref": "#/components/responses/UnprocessableEntity"
                    },
                    "429": {
                        "$ref": "#/components/responses/RequestRejected"
                    },
                    "500": {
                        "$ref": "#/components/responses/InternalError"
                    }
                }
            },
            "patch": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Updates an attribute.",
                "description": "Creates an attribute.<br>`Usecase` Entity editor Attributes tab - add Attributes of an Entity generic (not knowing if it is an Asset, Aspect or View).<br>`Usecase` Provide symetric set of interfaces.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the Attribute.",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_includeSource",
                        "in": "query",
                        "description": "If true the $_source property will be added to the returned Attributes.<br>`Usecase` Allow to provide the source configuration also with the new API. Prevent multiple queries when loading Attributes in the frontend.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_protectData",
                        "in": "query",
                        "description": "This query parameter specifies the behaviour on datatype change.<br>If set to true an error will be returned if there are already timeseries values stored which are incompatible with the new datatype. The errorKey in this case is AdapterTags_IncompatibleData.<br>If false or not specified incompatible timeseries values are deleted. Compatible (convertable) timeseries values are preserved.<br>`Usecase` Protect the user from loosing data.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "requestBody": {
                    "description": "JSON document of the Attribute to be updated.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AttributeEx"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Attribute definition.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeEx"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/attributes": {
            "get": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Returns all attributes.",
                "description": "Returns all attributes.<br>`Usecase`: Entity editor Attributes tab - load Attributes of an Entity (not knowing if it is an Asset, Aspect or View).<br>`Usecase` AttributeType editor Instances tab - show instances of AttributeType.",
                "parameters": [
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "one or multiple filter statements. Default: `*`",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "typefilter",
                        "in": "query",
                        "description": "UUID of the AttributeType the response has to match or be inherited from. Default: Empty, filter not active.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the anchor **after** which the result set shall start. Default: Empty, start with the first entry.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Maximum offset of entries with respect to the provided reference. Default: `0`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Default: `20`",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "name": "_datatypefilter",
                        "in": "query",
                        "description": "Filter by datatype. One datatype or multiple comma-separated datatypes can be selected.<br><br>Special syntax can be used to exclude specific datatypes:<br>`*,-composition,-aggregation` Return all datatypes except composition and aggregation.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_arrayfilter",
                        "in": "query",
                        "description": "Filter by array. Only true or false are supported. To get both (arrays and non-arrays) the query parameter must be omitted.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_resolveAggregatedAttributes",
                        "in": "query",
                        "description": "Add attributes linked via aggregation attributes to the result.<br>`Usecase` Show translated OPC-UA Model which uses aggregation attributes.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_owner",
                        "in": "query",
                        "description": "Filter. Anchor of the Entity which Attributes should be returned.<br>`Usecase` Be able to use this route as alternative to /{domainconcept}/{anchor}/attributes.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_includeSource",
                        "in": "query",
                        "description": "If true the $_source property will be added to the returned Attributes.<br>`Usecase` Allow to provide the source configuration also with the new API. Prevent multiple queries when loading Attributes in the frontend.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Attribute definitions.",
                        "headers": {
                            "x-anchor-position": {
                                "description": "Position of the anchor provided as reference.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Position of the anchor provided as reference.",
                                    "format": ""
                                }
                            },
                            "x-anchor-count": {
                                "description": "Overall count of results.",
                                "schema": {
                                    "type": "integer",
                                    "description": "Overall count of results.",
                                    "format": ""
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/AttributeEx"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Creates an attribute.",
                "description": "Creates an attribute.<br>`Usecase` Entity editor Attributes tab - add Attributes of an Entity generic (not knowing if it is an Asset, Aspect or View).<br>`Usecase` Provide symetric set of interfaces.",
                "parameters": [
                    {
                        "name": "_includeSource",
                        "in": "query",
                        "description": "If true the $_source property will be added to the returned Attributes.<br>`Usecase` Allow to provide the source configuration also with the new API. Prevent multiple queries when loading Attributes in the frontend.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_uniqueDisplayName",
                        "in": "query",
                        "description": "If _uniqueDisplayName is true, when creating attributes, it will check if the display name is unique under an asset and block the creating action of the one with duplicated display name.<br>If _uniqueDisplayName is false, it will ignore the uniqueness of the display name and allow creating attributes with the same display name under an asset.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "requestBody": {
                    "description": "JSON document of the Attribute to be created. Missing $anchor-identifiers will automatically be created. The $_owner property is mandatory.",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AttributeEx"
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Attribute definition.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/AttributeEx"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/assets/root": {
            "get": {
                "tags": [
                    "Anchor Entities (ex)"
                ],
                "summary": "Get the root asset of the IIH tree.",
                "description": "Get the root asset of the IIH tree.<br>Usecase: Get the entrypoint to the IIH tree.",
                "parameters": [
                    {
                        "name": "_includeHasAttributes",
                        "in": "query",
                        "description": "If true the $_hasAttributes property will be added to the returned Entites.<br>`Usecase` Show hasAttributes indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "JSON document with the Asset instance.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityEx"
                                },
                                "example": {
                                    "$anchor": "6e62544a-1463-4797-8dd0-876ca2bcf169",
                                    "$type": "anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90",
                                    "$name": "edge",
                                    "$concept": "asset"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/treeitems": {
            "get": {
                "tags": [
                    "Anchor TreeItems (ex)"
                ],
                "summary": "Returns all child TreeItems from a parent TreeItem.",
                "description": "Returns all child TreeItems from a parent TreeItem.<br>Not only Relations are used to build the tree but also Attributes of datatype composition and aggregation if they references Assets or Aspects.<br>`Usecase` Support OPC UA tree.",
                "parameters": [
                    {
                        "name": "_viewPoint",
                        "in": "query",
                        "required": true,
                        "description": "The anchor of the parent TreeItem to get the children from.<br>Can be set to null to return all existing TreeItems (global search UseCase).",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_view",
                        "in": "query",
                        "description": "Allows to choose another view than the IIH main view.<br>`Usecase` Navigation using a view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "reference",
                        "in": "query",
                        "description": "UUID of the entry **after** which the result set shall start. If not specified the result starts with the first entry.",
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset of entries with respect to the provided reference.",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 0
                        }
                    },
                    {
                        "name": "take",
                        "in": "query",
                        "description": "Maximum number of entries in the result. Maximum allowed value is 1024.",
                        "schema": {
                            "type": "integer",
                            "format": "int32",
                            "default": 20
                        }
                    },
                    {
                        "name": "namefilter",
                        "in": "query",
                        "description": "One or multiple filter statements.",
                        "schema": {
                            "type": "string",
                            "default": "*"
                        }
                    },
                    {
                        "name": "_language",
                        "in": "query",
                        "description": "The UI language of the client application. When this query parameter is provided sorting and filtering takes displaynames into account.<br>In order to provide an intuitive sorting and filtering behaviour the client application must implement a fallback strategie to select the text to use as name for an object.<br>Prio 1: $displayname in the specified language<br>Prio 2: $displayname in neutral language xx-XX<br>Prio 3: The objects $name<br>`Examples`<br>xx-XX: Language neutral<br>en-US: english (United States)<br>de-DE: german (Germany)<br>`Usecase` Support the implementation of a localized UI.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_includeHasChildren",
                        "in": "query",
                        "description": "If true the $_hasChildren property will be added to the returned Entites.<br>`Usecase` Show hasChildren indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeHasAttributes",
                        "in": "query",
                        "description": "If true the $_hasAttributes property will be added to the returned Entites.<br>`Usecase` Show hasAttributes indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeNulls",
                        "in": "query",
                        "description": "Controls if aggregation and composition Attributes not referencing an entity ($value=null) should be considered.<br>`Usecase` true: IIH Essentials to edit the model.<br>`Usecase` false: Client applications to use the model.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TreeItem definitions.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TreeItem"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/treeitems/find": {
            "get": {
                "tags": [
                    "Anchor TreeItems (ex)"
                ],
                "summary": "Find a tree item by its path.",
                "description": "Find a tree item by a provided path.<br> Relations and also Attributes of datatype composition and aggregation are used to find the path.",
                "parameters": [
                    {
                        "name": "path",
                        "in": "query",
                        "description": "Path to search for the entity. Can a string like \"edge/TopAsset/SubAsset\" or a json array [\"edge\",\"TopAsset\",\"SubAsset\"].",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "_view",
                        "in": "query",
                        "description": "Allows to choose another view than the IIH main view.<br>`Usecase` Navigation using a view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_language",
                        "in": "query",
                        "description": "The UI language of the client application. When this query parameter is provided searching takes displaynames into account.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_includeHasChildren",
                        "in": "query",
                        "description": "If true the $_hasChildren property will be added to the returned Entity.<br>`Usecase` Show hasChildren indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeHasAttributes",
                        "in": "query",
                        "description": "If true the $_hasAttributes property will be added to the returned Entity.<br>`Usecase` Show hasAttributes indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeNulls",
                        "in": "query",
                        "description": "Controls if aggregation and composition Attributes not referencing an entity ($value=null) should be considered.<br>`Usecase` true: IIH Essentials to edit the model.<br>`Usecase` false: Client applications to use the model.",
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TreeItem definitions.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TreeItem"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "TreeItem definitions.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                },
                                "example": {
                                    "errors": [
                                        {
                                            "service": "IIH Essentials",
                                            "status": 400,
                                            "title": "BadRequest",
                                            "errorCode": 3,
                                            "errorKey": "InvalidParameter",
                                            "detail": "Parameter query.path is invalid. Reason: The path could not be found: edge/TopAsset/Wrong",
                                            "errorParams": {
                                                "reason": "The path could not be found: edge/TopAsset/Wrong",
                                                "what": "query.path"
                                            },
                                            "debugInfo": {
                                                "method": "GET",
                                                "route": "/DataService/anchor-ex/v1/treeitems/find"
                                            }
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/treeitems/{anchor}": {
            "get": {
                "tags": [
                    "Anchor TreeItems (ex)"
                ],
                "summary": "Returns the TreeItem specified via anchor.",
                "description": "Returns the TreeItem specified via anchor.<br>`Usecase` Support OPC UA tree.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the TreeItem.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "_view",
                        "in": "query",
                        "description": "Allows to choose another view than the IIH main view.<br>`Usecase` Navigation using a view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_language",
                        "in": "query",
                        "description": "The UI language of the client application.<br>`Usecase` Support the implementation of a localized UI.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "_includeHasChildren",
                        "in": "query",
                        "description": "If true the $_hasChildren property will be added to the returned Entites.<br>`Usecase` Show hasChildren indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeHasAttributes",
                        "in": "query",
                        "description": "If true the $_hasAttributes property will be added to the returned Entites.<br>`Usecase` Show hasAttributes indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TreeItem definition.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TreeItem"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/treeitems/{anchor}/entity": {
            "get": {
                "tags": [
                    "Anchor TreeItems (ex)"
                ],
                "summary": "Return the entity linked to a TreeItem.",
                "description": "Return the entity linked to a TreeItem.<br>A TreeItem can be an Asset or Aspect, but it can also be an Attribute of datatype composition or aggregation if it references an Asset or Aspect.<br>`Usecase` Support OPC UA tree.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the TreeItem.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "expanded",
                        "in": "query",
                        "description": "Sub assets or aspects within attributes shall be automatically expanded and serialized along. Default: `false`",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_includeHasAttributes",
                        "in": "query",
                        "description": "If true the $_hasAttributes property will be added to the returned Entites.<br>`Usecase` Show hasAttributes indicator in Asset navigation bar.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    },
                    {
                        "name": "_expandTypeAnchors",
                        "in": "query",
                        "description": "If true anchors of types will be returned as fully qualified identifiers including the types name. Pattern: typename@anchor. Example: anchor.asset-base@0ad068b1-b1a2-420a-9907-3c03c2784e90.",
                        "schema": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Entity linked to the TreeItem.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/EntityEx"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/treeitems/{anchor}/paths": {
            "get": {
                "tags": [
                    "Anchor TreeItems (ex)"
                ],
                "summary": "Returns all paths of the specified TreeItem.",
                "description": "Returns all paths of the specified TreeItem.<br>`Usecase` Support OPC UA tree.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the TreeItem.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "_view",
                        "in": "query",
                        "description": "Allows to choose another view than the IIH main view.<br>`Usecase` Navigation using a view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_language",
                        "in": "query",
                        "description": "The UI language of the client application. Displaynames will be returned for this language. If not specified Displaynames are not included in the response.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TreeItem path definitions.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TreeItemPath"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/attributes/{anchor}/paths": {
            "get": {
                "tags": [
                    "Anchor Attributes (ex)"
                ],
                "summary": "Returns all paths of the specified Attribute.",
                "description": "Returns all paths of the specified Attribute.<br>`Usecase` Customer specific request.",
                "parameters": [
                    {
                        "name": "anchor",
                        "in": "path",
                        "description": "Unique identifier of the Attribute.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "_view",
                        "in": "query",
                        "description": "Allows to choose another view than the IIH main view.<br>`Usecase` Navigation using a view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "_language",
                        "in": "query",
                        "description": "The UI language of the client application. Displaynames will be returned for this language. If not specified Displaynames are not included in the response.",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "TreeItem path definitions.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/TreeItemPath"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/originators": {
            "get": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Get all originators.",
                "description": "Get a list of all available originators.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Originator"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Create a new originator.",
                "description": "Create a new originator.",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Originator"
                            },
                            "example": {
                                "id": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                                "name": "IIH Semantics",
                                "label": "OPC UA",
                                "details": "IIH Semantics Version 2.4"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Originator"
                                },
                                "example": {
                                    "id": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                                    "name": "IIH Semantics",
                                    "label": "OPC UA",
                                    "details": "IIH Semantics Version 2.4"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/originators/{id}": {
            "get": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Read an originator specified via id.",
                "description": "Read an originator specified via id.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Originator"
                                },
                                "example": {
                                    "id": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                                    "name": "IIH Semantics",
                                    "label": "OPC UA",
                                    "details": "IIH Semantics Version 2.4"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Update an originator.",
                "description": "Update an originator.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Originator"
                            },
                            "example": {
                                "id": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                                "name": "IIH Semantics",
                                "label": "OPC UA",
                                "details": "IIH Semantics Version 2.4"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Originator"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Delete an originator.",
                "description": "Delete an originator.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/originators/{id}/ReleaseObjects": {
            "get": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Release all objects associated with an originator.",
                "description": "Release all objects associated with an originator.<br>Released objects are no longer associated with the originator and can be edited or deleted by the user.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "This method returns with an HTTP status code only."
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/originators/{id}/AttachObject": {
            "get": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Attach an object to an originator.",
                "description": "Associates the specified object (Anchor) with the given originator. Attached objects become managed by the originator until released.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "anchor",
                        "in": "query",
                        "description": "Anchor of the object to attach.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        },
                        "example": "3b9c8e7f-0d9c-4e82-9b2f-2c0d4b1a9b9f"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Attachment established.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                },
                                "example": {
                                    "success": true
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/DataService/anchor-ex/v1/originators/{id}/ReleaseObject": {
            "get": {
                "tags": [
                    "Anchor Originators (ex)"
                ],
                "summary": "Release a single object and its underlying elements associated with an originator",
                "description": "Releases one attached object and its underlying elements from the given originator. After release, the object is no longer associated and can be edited or deleted by the user.",
                "parameters": [
                    {
                        "name": "id",
                        "example": "6907bd13-a040-4ae0-b2b4-b46809f08382",
                        "in": "path",
                        "schema": {
                            "type": "string"
                        },
                        "required": true
                    },
                    {
                        "name": "anchor",
                        "in": "query",
                        "description": "Anchor of the object to release.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        },
                        "example": "3b9c8e7f-0d9c-4e82-9b2f-2c0d4b1a9b9f"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Release completed.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                },
                                "example": {
                                    "success": true
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Exception"
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "Abstraction": {
                "enum": [
                    "type",
                    "template",
                    "instance"
                ],
                "type": "string",
                "description": "An enumeration to select an abstraction"
            },
            "AcquisitionCategory": {
                "type": "string",
                "enum": [
                    "None",
                    "ProcessValue",
                    "Power",
                    "Energy",
                    "Flow",
                    "Amount",
                    "Counter",
                    "State"
                ]
            },
            "Adapter": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true,
                        "example": "profinet"
                    },
                    "name": {
                        "type": "string",
                        "example": "Profinet IO Connector"
                    },
                    "type": {
                        "type": "string",
                        "readOnly": true,
                        "example": "simaticadapter",
                        "enum": [
                            "simaticadapter",
                            "hmiruntime",
                            "connectivitysuite",
                            "systeminfo"
                        ]
                    },
                    "locked": {
                        "type": "boolean",
                        "readOnly": true,
                        "description": "true, if this adapter is a default system adapter, which cannot be changed.",
                        "example": true
                    },
                    "active": {
                        "type": "boolean",
                        "description": "true, if this adapter is enabled.",
                        "example": true
                    },
                    "isDefault": {
                        "type": "boolean",
                        "example": false
                    },
                    "canBrowse": {
                        "type": "boolean",
                        "description": "true, if this type of adapter supports browsing.",
                        "example": true
                    },
                    "connected": {
                        "type": "boolean",
                        "readOnly": true,
                        "example": false
                    },
                    "config": {
                        "type": "object",
                        "description": "Adapter type specific configuration.",
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/AdapterMqttConfig"
                            },
                            {
                                "$ref": "#/components/schemas/AdapterOpenPipeConfig"
                            },
                            {
                                "$ref": "#/components/schemas/AdapterGrpcConfig"
                            },
                            {
                                "$ref": "#/components/schemas/AdapterSystemInfoConfig"
                            }
                        ]
                    },
                    "error": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "readOnly": true,
                                "nullable": true,
                                "description": "Error informations it there are problems with the adapter."
                            }
                        ]
                    },
                    "connectorInfo": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/ConnectorState"
                            },
                            {
                                "readOnly": true,
                                "nullable": true,
                                "description": "Detailed info about the internal state of the connector. Not all connectors provide this information."
                            }
                        ]
                    }
                }
            },
            "AdapterBrowseResponse": {
                "type": "object",
                "properties": {
                    "tags": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AdapterBrowseTag"
                        }
                    },
                    "debugInfo": {
                        "type": "object",
                        "properties": {
                            "hint": {
                                "oneOf": [
                                    {
                                        "type": "string",
                                        "example": "Adapter is not active."
                                    },
                                    {
                                        "type": "string",
                                        "example": "Adapter does not support browsing."
                                    },
                                    {
                                        "type": "string",
                                        "example": "Active adapter not found."
                                    }
                                ]
                            }
                        }
                    }
                }
            },
            "AdapterBrowseTag": {
                "type": "object",
                "properties": {
                    "connectionName": {
                        "type": "string",
                        "example": "profinet"
                    },
                    "tagName": {
                        "type": "string",
                        "example": "Int1"
                    },
                    "topic": {
                        "type": "string",
                        "example": "profinet::Int1::8::4"
                    },
                    "tagType": {
                        "type": "string",
                        "example": "DInt"
                    },
                    "dataType": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataType"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    }
                }
            },
            "AdapterDiscoveryResponse": {
                "type": "object",
                "properties": {
                    "adapters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Adapter"
                        }
                    },
                    "mqttError": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "grpcError": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    }
                }
            },
            "AdapterGrpcConfig": {
                "type": "object",
                "properties": {
                    "appInstanceId": {
                        "type": "string",
                        "example": "css7pdriver1"
                    },
                    "defaultCycle": {
                        "$ref": "#/components/schemas/TimeRange"
                    }
                }
            },
            "AdapterMqttConfig": {
                "type": "object",
                "properties": {
                    "useDatabusSettings": {
                        "type": "boolean",
                        "nullable": true,
                        "example": false
                    },
                    "brokerURL": {
                        "type": "string",
                        "example": "tcp://ie-databus:1883"
                    },
                    "username": {
                        "type": "string",
                        "example": ""
                    },
                    "password": {
                        "type": "string",
                        "example": "",
                        "description": "The password will only transfered from the frontend to the backend in the POST and PUT methods.",
                        "nullable": true
                    },
                    "browseURL": {
                        "type": "string",
                        "example": "ie/m/j/simatic/v1/pnhs1/dp"
                    }
                }
            },
            "AdapterOpenPipeConfig": {
                "type": "object",
                "properties": {
                    "openPipePath": {
                        "type": "string",
                        "example": "/tmp/siemens/automation/HmiRuntime"
                    }
                }
            },
            "AdapterSystemInfoConfig": {
                "type": "object"
            },
            "AdapterWriteValueErrorCode": {
                "type": "string",
                "enum": [
                    "ATTRIBUTE_NOT_FOUND",
                    "ATTRIBUTE_NOT_CONNECTED",
                    "TAG_INCONSISTENT",
                    "TAG_MISSING",
                    "ADAPTER_NOT_FOUND",
                    "ADAPTER_NOT_ACTIVE",
                    "ADAPTER_NOT_SUPPORTED",
                    "ADAPTER_NOT_CONNECTED",
                    "ADAPTER_NO_METADATA",
                    "CONNECTION_NOT_FOUND",
                    "TAG_NOT_FOUND",
                    "TAG_ALREADY_ADDED",
                    "TAG_NOT_WRITEABLE",
                    "VALUE_NOT_ACCEPTED",
                    "WRITE_FAILED",
                    "CHILD_NOT_CONNECTED",
                    "DATASYNC_NOT_ENABLED",
                    "VARIABLE_NOT_FOUND",
                    "VARIABLE_NOT_CONNECTED"
                ]
            },
            "AdapterWriteValueRequest": {
                "type": "object",
                "description": "Provide needed information about one value to write. Prefered way is to specify attributeAnchor and value. Alternatively it is possible to specify adapter tag infos directly.",
                "properties": {
                    "attributeAnchor": {
                        "description": "The $anchor of the attribute to write.",
                        "type": "string",
                        "format": "uuid",
                        "nullable": true
                    },
                    "variableId": {
                        "description": "Deprecated. Use attributeAnchor instead. Still supported for backward compatibility.",
                        "type": "string",
                        "nullable": true
                    },
                    "value": {
                        "oneOf": [
                            {
                                "type": "number"
                            },
                            {
                                "type": "boolean"
                            },
                            {
                                "type": "string"
                            }
                        ]
                    },
                    "tag": {
                        "type": "object",
                        "description": "Optional way to specify the target tag. attributeAnchor must be set to null in this case.",
                        "nullable": true,
                        "properties": {
                            "adapterId": {
                                "type": "string"
                            },
                            "connectionName": {
                                "type": "string"
                            },
                            "tagName": {
                                "type": "string"
                            }
                        }
                    }
                }
            },
            "AdapterWriteValueResponse": {
                "type": "object",
                "description": "Returns information about the success or failiure of writing one value.",
                "properties": {
                    "attributeAnchor": {
                        "description": "The $anchor of the attribute written to.",
                        "type": "string",
                        "format": "uuid",
                        "nullable": true
                    },
                    "variableId": {
                        "description": "Deprecated. Only set if variableId was used in the request.",
                        "type": "string",
                        "nullable": true
                    },
                    "success": {
                        "type": "boolean"
                    },
                    "errorCode": {
                        "allOf": [
                            {
                                "description": "Only set if success is false.",
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/AdapterWriteValueErrorCode"
                            }
                        ]
                    },
                    "errorDescription": {
                        "type": "string",
                        "description": "Only set if success is false. More details about the occoured error.",
                        "nullable": true
                    }
                }
            },
            "AdaptersResponse": {
                "type": "object",
                "properties": {
                    "adapters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Adapter"
                        }
                    }
                }
            },
            "Aggregation": {
                "type": "string",
                "enum": [
                    "None",
                    "Count",
                    "Average",
                    "Min",
                    "Max",
                    "Sum",
                    "First",
                    "Last",
                    "StandardDeviation",
                    "Variance",
                    "Counter",
                    "Timer",
                    "TimeWeightedAverage"
                ]
            },
            "AggregationInfo": {
                "type": "object",
                "properties": {
                    "type": {
                        "$ref": "#/components/schemas/Aggregation"
                    },
                    "cycle": {
                        "$ref": "#/components/schemas/TimeRange"
                    }
                }
            },
            "AggregationObject": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "description": "aggregation id and also the id of the generated variable",
                        "example": "8b7e7009e4fa49158d7f287b64be504c"
                    },
                    "sourceId": {
                        "type": "string",
                        "description": "the variable id of the source variable",
                        "example": "39e32d19d95846f8b6a1b520893707fc"
                    },
                    "sourceDataType": {
                        "type": "string",
                        "readOnly": true,
                        "description": "depends on the source variable",
                        "example": "Double",
                        "nullable": true
                    },
                    "aggregation": {
                        "$ref": "#/components/schemas/Aggregation"
                    },
                    "cycle": {
                        "$ref": "#/components/schemas/TimeRange"
                    },
                    "provideAsVariable": {
                        "type": "boolean",
                        "example": false,
                        "deprecated": true,
                        "description": "optional, is deprecated and will be supported until 2024-06-01."
                    },
                    "publishMqtt": {
                        "type": "boolean",
                        "example": false,
                        "deprecated": true,
                        "description": "optional, is deprecated and will be supported until 2024-06-01."
                    },
                    "aggregationOptions": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AggregationOptions"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    }
                }
            },
            "AggregationOptions": {
                "type": "object",
                "properties": {
                    "statusValues": {
                        "type": "array",
                        "items": {
                            "type": "number"
                        },
                        "example": [
                            10,
                            20,
                            30
                        ]
                    },
                    "microStop": {
                        "type": "object",
                        "description": "Optionally, can be set for Duration and Occurrence aggregations.",
                        "properties": {
                            "values": {
                                "type": "array",
                                "description": "State values to be included in micro stops.",
                                "items": {
                                    "type": "number"
                                },
                                "example": [
                                    10,
                                    20,
                                    30
                                ]
                            },
                            "threshold": {
                                "type": "number",
                                "description": "Maximum duration of a micro stop in milliseconds",
                                "example": 1000
                            }
                        }
                    }
                }
            },
            "AggregationValue": {
                "type": "object",
                "properties": {
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$anchor": {
                        "type": "string",
                        "format": "uuid"
                    }
                },
                "additionalProperties": false
            },
            "Alarm": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true
                    },
                    "alarmChannelId": {
                        "type": "string"
                    },
                    "alarmId": {
                        "type": "string"
                    },
                    "raisedTime": {
                        "type": "string",
                        "format": "date-time"
                    },
                    "acknowledgedTime": {
                        "type": "string",
                        "nullable": true,
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "confirmTime": {
                        "type": "string",
                        "nullable": true,
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "clearedTime": {
                        "type": "string",
                        "nullable": true,
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "removedTime": {
                        "type": "string",
                        "nullable": true,
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "timeStamp": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "reason": {
                        "type": "string",
                        "enum": [
                            "Raised",
                            "Acknowledged",
                            "Confirmed",
                            "Cleared"
                        ]
                    },
                    "priority": {
                        "type": "integer"
                    },
                    "area": {
                        "type": "string"
                    },
                    "source": {
                        "type": "string"
                    },
                    "origin": {
                        "type": "string"
                    },
                    "alarmClass": {
                        "type": "string"
                    },
                    "isActive": {
                        "type": "boolean",
                        "nullable": true,
                        "description": "Not present if not relevant."
                    },
                    "isAcknowledged": {
                        "type": "boolean",
                        "nullable": true,
                        "description": "Not present if not relevant."
                    },
                    "isConfirm": {
                        "type": "boolean",
                        "nullable": true,
                        "description": "Not present if not relevant."
                    },
                    "alarmText": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AlarmText"
                        }
                    },
                    "extendedProperties": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ExtendedProperties"
                        }
                    }
                }
            },
            "AlarmChannel": {
                "type": "object",
                "description": "An alarm channel defines how alarms from a specific adapter/PLC are filtered, processed, and stored. It acts as a configuration object that determines which alarms should be captured based on various filter criteria.",
                "required": [
                    "name",
                    "assetId",
                    "adapterId",
                    "active"
                ],
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true,
                        "description": "id of the alarm channel (uuid format). This field is automatically generated by the system when creating a new channel and cannot be manually set.",
                        "example": "6eb0af16e0c940ffb342f1120c202b68"
                    },
                    "name": {
                        "type": "string",
                        "description": "Human-readable name of the alarm channel. Must be unique within the scope of the parent asset and cannot be empty. Used for identification and display purposes.",
                        "example": "Production Line 1 Alarms",
                        "minLength": 1
                    },
                    "assetId": {
                        "type": "string",
                        "description": "id of the asset that owns this alarm channel. The alarm channel will be associated with this asset and cannot be moved to a different asset after creation. Must reference an existing asset (cannot be the root asset).",
                        "example": "9dea3dee2fad47c1bad220c93bcebbe0",
                        "minLength": 1
                    },
                    "adapterId": {
                        "type": "string",
                        "description": "id of the adapter/connector that provides the alarms to this channel. If empty, the channel will not process incoming alarms from any adapter. Must reference an existing adapter when specified.",
                        "example": "s7plus-adapter-001"
                    },
                    "languages": {
                        "type": "array",
                        "description": "Optional list of language codes for localized alarm texts. Used for filtering alarms based on text language. When specified, only alarms with texts in these languages will be processed. Can contain multiple languages for most adapters. Special requirement: OpenPipe adapters require exactly one valid language code (e.g., 'en-US'). Empty array or omitted field means no language filtering (all languages accepted).",
                        "items": {
                            "type": "string",
                            "description": "Language code in format like 'en-US', 'de-DE', etc."
                        },
                        "example": [
                            "en-US",
                            "de-DE"
                        ]
                    },
                    "areaFilter": {
                        "type": "array",
                        "description": "Filter alarms by area field. Only alarms whose 'area' property matches one of these values will be processed. Empty array means no area filtering (all areas accepted).",
                        "items": {
                            "type": "string",
                            "description": "Area name to include in filtering"
                        },
                        "example": [
                            "System",
                            "Production",
                            "Safety"
                        ]
                    },
                    "alarmClassFilter": {
                        "type": "array",
                        "description": "Filter alarms by alarm class. Only alarms whose 'alarmClass' property matches one of these values will be processed. Empty array means no alarm class filtering (all classes accepted).",
                        "items": {
                            "type": "string",
                            "description": "Alarm class name to include in filtering"
                        },
                        "example": [
                            "Warning",
                            "Error",
                            "Critical"
                        ]
                    },
                    "sourceFilter": {
                        "type": "array",
                        "description": "Filter alarms by source field. Only alarms whose 'source' property matches one of these values will be processed. Empty array means no source filtering (all sources accepted). Typically contains PLC or device names.",
                        "items": {
                            "type": "string",
                            "description": "Source name to include in filtering"
                        },
                        "example": [
                            "PLC_1",
                            "PLC_2",
                            "Safety_Controller"
                        ]
                    },
                    "originFilter": {
                        "type": "array",
                        "description": "Filter alarms by origin field. Only alarms whose 'origin' property matches one of these values will be processed. Empty array means no origin filtering (all origins accepted).",
                        "items": {
                            "type": "string",
                            "description": "Origin name to include in filtering"
                        },
                        "example": [
                            "Station_A",
                            "Station_B"
                        ]
                    },
                    "isActiveFilter": {
                        "type": "array",
                        "description": "Filter alarms by their active state. Only alarms matching the specified active states will be processed. Empty array means no active state filtering (all states accepted).",
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        },
                        "example": [
                            "Yes",
                            "No"
                        ]
                    },
                    "isAcknowledgedFilter": {
                        "type": "array",
                        "description": "Filter alarms by their acknowledged state. Only alarms matching the specified acknowledgment states will be processed. Empty array means no acknowledgment filtering (all states accepted).",
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        },
                        "example": [
                            "No",
                            "NotRelevant"
                        ]
                    },
                    "isConfirmedFilter": {
                        "type": "array",
                        "description": "Filter alarms by their confirmed state. Only alarms matching the specified confirmation states will be processed. Empty array means no confirmation filtering (all states accepted).",
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        },
                        "example": [
                            "Yes",
                            "No"
                        ]
                    },
                    "extendedPropertiesFilters": {
                        "type": "array",
                        "description": "Filter alarms by custom extended properties. Each filter defines a property name and accepted values. Alarms must match ALL specified extended property filters to be processed. Empty array means no extended property filtering.",
                        "items": {
                            "$ref": "#/components/schemas/ExtendedPropertiesFilter"
                        }
                    },
                    "active": {
                        "type": "boolean",
                        "description": "Indicates whether the alarm channel is currently active and processing alarms. When false, the channel exists but does not process any incoming alarms.",
                        "example": true
                    },
                    "retention": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AlarmRetention"
                            }
                        ],
                        "description": "Optional retention policy for alarms in this channel. Defines how long alarms should be stored before automatic cleanup. If not specified, alarms are retained indefinitely.",
                        "nullable": true
                    }
                }
            },
            "AlarmFilter": {
                "type": "object",
                "properties": {
                    "key": {
                        "type": "string",
                        "enum": [
                            "IsActive",
                            "IsAcknowledged",
                            "IsConfirmed",
                            "Area",
                            "AlarmClass",
                            "Source",
                            "Origin",
                            "ExtendedProperty"
                        ],
                        "description": "The key of the filter (e.g. IsActive, IsAcknowledged, IsConfirmed, Area, AlarmClass, Source, Origin, ExtendedProperty)"
                    },
                    "operator": {
                        "type": "string",
                        "enum": [
                            "IsIn",
                            "IsNotIn",
                            "Contains",
                            "DoesNotContain",
                            "Exists",
                            "DoesNotExist"
                        ],
                        "description": "The operation to apply (e.g. IsIn, IsNotIn, Contains, DoesNotContain, Exists, DoesNotExist)"
                    },
                    "value": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "description": "The values for the filter operation (only if operator is of IsIn, IsNotIn, Contains, DoesNotContain). If the key is IsActive, IsAcknowledged or IsConfirmed, the strings 'Yes', 'No' and 'NotRelevant' must be used"
                    },
                    "name": {
                        "type": "string",
                        "description": "Name of the extended property (only if key is ExtendedProperty)",
                        "nullable": true
                    }
                }
            },
            "AlarmMetaData": {
                "type": "object",
                "properties": {
                    "areas": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "sources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "origins": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "alarmClasses": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "languages": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "AlarmQueryBody": {
                "type": "object",
                "properties": {
                    "alarmChannelIds": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "description": "Channel Ids, optional if AssetId is given and valid."
                        }
                    },
                    "assetIds": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "description": "Asset Ids, optional if channel is given and valid."
                        }
                    },
                    "areaFilter": {
                        "type": "array",
                        "description": "Filter by area.",
                        "nullable": true,
                        "items": {
                            "type": "string"
                        }
                    },
                    "alarmClassFilter": {
                        "type": "array",
                        "description": "Filter by alarmClass.",
                        "nullable": true,
                        "items": {
                            "type": "string"
                        }
                    },
                    "sourceFilter": {
                        "type": "array",
                        "description": "Filter by source.",
                        "nullable": true,
                        "items": {
                            "type": "string"
                        }
                    },
                    "originFilter": {
                        "type": "array",
                        "description": "Filter by origin.",
                        "nullable": true,
                        "items": {
                            "type": "string"
                        }
                    },
                    "isActiveFilter": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        }
                    },
                    "isAcknowledgedFilter": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        }
                    },
                    "isConfirmedFilter": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/IsAlarmState"
                        }
                    },
                    "extendedPropertiesFilters": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/ExtendedPropertiesFilter"
                        }
                    },
                    "alarmFilters": {
                        "type": "array",
                        "description": "List of filters applied to alarms",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/AlarmFilter"
                        }
                    },
                    "from": {
                        "type": "string",
                        "nullable": true,
                        "description": "timestamp starting as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "to": {
                        "type": "string",
                        "nullable": true,
                        "description": "to timestamp from request as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T13:00:00"
                    },
                    "order": {
                        "$ref": "#/components/schemas/SortOrder"
                    },
                    "take": {
                        "type": "number",
                        "description": "Optional, default is 20",
                        "example": 20
                    },
                    "offset": {
                        "type": "number",
                        "description": "Optional, default is 0",
                        "example": 0
                    }
                }
            },
            "AlarmRetention": {
                "type": "object",
                "description": "Defines the retention policy for alarms in the channel, specifying how long alarms should be stored before automatic cleanup.",
                "properties": {
                    "settings": {
                        "type": "object",
                        "description": "Container for retention policy settings",
                        "properties": {
                            "timeSettings": {
                                "type": "object",
                                "nullable": true,
                                "description": "Time-based retention settings. If null or not specified, alarms are retained indefinitely.",
                                "properties": {
                                    "timeRange": {
                                        "allOf": [
                                            {
                                                "$ref": "#/components/schemas/TimeRange"
                                            }
                                        ],
                                        "description": "Defines how long alarms should be retained before automatic deletion"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "AlarmText": {
                "type": "object",
                "properties": {
                    "language": {
                        "type": "string",
                        "description": "language like en-US"
                    },
                    "value": {
                        "type": "string",
                        "description": "the alarm text in the language"
                    }
                }
            },
            "AnchorConstraint": {
                "type": "object",
                "properties": {
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$type": {
                        "type": "string",
                        "description": "Only valid in case of abstraction instance with given concept.",
                        "format": "uuid"
                    },
                    "$base": {
                        "type": "string",
                        "description": "Only valid in case of abstraction type with given concept.",
                        "format": "uuid"
                    }
                },
                "additionalProperties": false
            },
            "AnchorObject": {
                "description": "Generic information about an object of the Anchor model.",
                "type": "object",
                "properties": {
                    "$anchor": {
                        "description": "The anchor of the Anchor model object.",
                        "type": "string",
                        "format": "uuid"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$name": {
                        "nullable": true,
                        "description": "The name of the Anchor model object.",
                        "type": "string"
                    },
                    "$displayname": {
                        "nullable": true,
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "Dictionary, where the key is country code (e.g. \"de-DE\") and the value a human-readable name for the given locality."
                    }
                }
            },
            "AnchorTypePointer": {
                "pattern": "^(?:(?=.{1,288}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}[@])?[0-9a-fA-F]{8}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{4}[-][0-9a-fA-F]{12}$",
                "type": "string",
                "additionalProperties": false,
                "description": "Points to the type the instance is based on. Can be defined by the UUID of type or 'type-name'@UUID."
            },
            "Aspect": {
                "type": "object",
                "properties": {
                    "aspectId": {
                        "type": "string",
                        "readOnly": true,
                        "example": "53abb2fdc0da4c24b84b735930c7b9c8"
                    },
                    "aspectName": {
                        "type": "string",
                        "example": "AspectName"
                    },
                    "assetId": {
                        "type": "string",
                        "example": "0"
                    },
                    "aspectTypeId": {
                        "type": "string",
                        "default": null,
                        "example": null
                    }
                }
            },
            "AspectBulkResponse": {
                "type": "object",
                "properties": {
                    "results": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Aspect"
                        }
                    },
                    "errors": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/Exception"
                        }
                    }
                }
            },
            "AspectType": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "example": "StepChainAnalysis_Step"
                    },
                    "name": {
                        "type": "string",
                        "example": "StepChainAnalysis_Step"
                    },
                    "isSystemTyp": {
                        "type": "boolean",
                        "readOnly": true,
                        "example": true
                    },
                    "variables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AspectTypeVariable"
                        },
                        "nullable": true
                    }
                }
            },
            "AspectTypeVariable": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "example": "StepChainAnalysis_Step_ActiveState"
                    },
                    "name": {
                        "type": "string",
                        "example": "StepChainAnalysis_Step_ActiveState"
                    },
                    "dataType": {
                        "type": "string",
                        "example": "Bool"
                    },
                    "unit": {
                        "type": "string",
                        "example": ""
                    },
                    "aspectTypeId": {
                        "type": "string",
                        "example": "StepChainAnalysis_Step"
                    }
                }
            },
            "AspectsResponse": {
                "type": "object",
                "properties": {
                    "aspects": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Aspect"
                        }
                    }
                }
            },
            "Asset": {
                "type": "object",
                "properties": {
                    "assetId": {
                        "type": "string",
                        "readOnly": true,
                        "example": "d0df2a40afd64671bda7b53ce8f08ef8"
                    },
                    "name": {
                        "type": "string",
                        "example": "TopAsset"
                    },
                    "parentId": {
                        "type": "string",
                        "example": "0"
                    },
                    "sortOrder": {
                        "type": "integer",
                        "example": 0
                    },
                    "hasChildren": {
                        "type": "boolean",
                        "description": "true if this asset has children.",
                        "readOnly": true,
                        "example": false
                    },
                    "children": {
                        "type": "array",
                        "description": "Optional, Only exists if the query parameter includeChildren was specified.",
                        "items": {
                            "$ref": "#/components/schemas/Asset"
                        },
                        "nullable": true,
                        "readOnly": true
                    },
                    "breadcrumb": {
                        "type": "array",
                        "description": "Optional. Only exists if the query parameter includeBreadcrumb was specified.",
                        "items": {
                            "$ref": "#/components/schemas/Asset"
                        },
                        "nullable": true,
                        "readOnly": true
                    }
                }
            },
            "AssetBulkResponse": {
                "type": "object",
                "properties": {
                    "results": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Asset"
                        }
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Exception"
                        },
                        "nullable": true
                    }
                }
            },
            "AssetsResponse": {
                "type": "object",
                "properties": {
                    "assets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Asset"
                        }
                    }
                }
            },
            "Attribute": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$type": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:[a-zA-Z_][a-zA-Z0-9_-]*)$",
                        "type": "string",
                        "description": "The name of an instance",
                        "example": "myinstance"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$value": {
                        "$ref": "#/components/schemas/AttributeValueOrArray"
                    },
                    "$datatype": {
                        "$ref": "#/components/schemas/AttributeDataType"
                    },
                    "$unit": {
                        "pattern": "^(?:0-.{1,255}|1-[a-zA-Z0-9]{1,3}|(?=.*[a-zA-Z])[a-zA-Z0-9]{1,3}|[1-9]{1}[0-9]{1}|(?:[1-9]{1}[0-9]{1,2}-[a-zA-Z0-9]{1,3}))$",
                        "type": "string",
                        "example": "10-CEL"
                    },
                    "$array": {
                        "type": "boolean"
                    }
                },
                "additionalProperties": false
            },
            "AttributeDataType": {
                "enum": [
                    "bool",
                    "uint8",
                    "int8",
                    "uint16",
                    "int16",
                    "uint32",
                    "int32",
                    "uint64",
                    "int64",
                    "float32",
                    "float64",
                    "timespan",
                    "timestamp",
                    "raw",
                    "string",
                    "bigstring",
                    "localizedstring",
                    "composition",
                    "aggregation",
                    "uuid",
                    "enum",
                    "flags"
                ],
                "type": "string",
                "description": "Indicates the datatype of this Attribute"
            },
            "AttributeDynamicValue": {
                "description": "Dynamic value of an Attribute. Contained in the Attribute property $_dynamicValue.<br> This is the latest (newest) timeseries value.<br>`Use case` Show online values in the Attribute tab.",
                "type": "object",
                "properties": {
                    "value": {
                        "description": "The dynamic value of an Attribute.",
                        "oneOf": [
                            {
                                "type": "boolean"
                            },
                            {
                                "type": "integer"
                            },
                            {
                                "type": "number"
                            },
                            {
                                "type": "string"
                            }
                        ]
                    },
                    "timestamp": {
                        "description": "The timestamp of the value.",
                        "type": "string",
                        "format": "date-time"
                    },
                    "qualitycode": {
                        "description": "The qualitycode of the value.",
                        "type": "integer"
                    },
                    "qualityinfo": {
                        "allOf": [
                            {
                                "description": "Extended qualitycode information of the value."
                            },
                            {
                                "$ref": "#/components/schemas/QualityInfo"
                            }
                        ]
                    }
                }
            },
            "AttributeEx": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Attribute"
                    },
                    {
                        "$ref": "#/components/schemas/AttributeExRequired"
                    },
                    {
                        "$ref": "#/components/schemas/AttributeExConvenience"
                    },
                    {
                        "$ref": "#/components/schemas/AttributeExState"
                    },
                    {
                        "$ref": "#/components/schemas/OriginatorIdAndSyncChildIdExtension"
                    }
                ]
            },
            "AttributeExConvenience": {
                "type": "object",
                "properties": {
                    "$_expandedType": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AttributeType"
                            },
                            {
                                "description": "Expanded AttributeType object. Added only if the query parameter _includeExpandedType is true.",
                                "nullable": true
                            }
                        ]
                    },
                    "$_path": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/EntityPath"
                            },
                            {
                                "description": "Specifies where the owning Entity is located in the IIH tree. Added only if the query parameter _includePath is true.",
                                "nullable": true
                            }
                        ]
                    },
                    "$_subEntities": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AnchorObject"
                        },
                        "description": "Details about Sub-Entities defined via composition or aggregation. Added only if the query parameter _includeSubEntities is true.<br>$_subEntities is always an array. For non-array attributes the array contains exactly one element.",
                        "nullable": true
                    },
                    "$_aggregatingAttribute": {
                        "type": "object",
                        "description": "Only present if GET /attributes is called with the query parameter _resolveAggregatedAttributes and the attribute is an resolved one.",
                        "properties": {
                            "$anchor": {
                                "type": "string",
                                "format": "uuid"
                            },
                            "$_index": {
                                "description": "Only used if the aggregating attribute is an array.",
                                "type": "number",
                                "format": "int32",
                                "nullable": true
                            }
                        }
                    }
                }
            },
            "AttributeExRequired": {
                "type": "object",
                "properties": {
                    "$_owner": {
                        "description": "Anchor of the Entity the Attribute belongs to. In GET methods added only if the query parameter _includeOrigin is true. In POST and PATCH methods $_owner and $_origin is always present in the result.",
                        "nullable": true,
                        "type": "string",
                        "format": "uuid"
                    },
                    "$_origin": {
                        "description": "Anchor of the EntityType the Attribute is inherited from. Null in case of a instance specific Attribute. Added only if the query parameter _includeOrigin is true.",
                        "nullable": true,
                        "type": "string",
                        "format": "uuid"
                    },
                    "$_source": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AttributeSource"
                            },
                            {
                                "description": "Source configuration of the Attribute. Added only if the query parameter _includeSource is true.<br>This property indicates if there is timeseries data attached to the Attribute. If its null there is no timeseries data attached.",
                                "nullable": true
                            }
                        ]
                    }
                }
            },
            "AttributeExState": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "format": "uuid"
                    },
                    "$_state": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AttributeState"
                            },
                            {
                                "description": "State info of the Attribute. Added only if the query parameter _includeState is true. Not available for static Attributes.",
                                "nullable": true
                            }
                        ]
                    },
                    "$_dynamicValue": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AttributeDynamicValue"
                            },
                            {
                                "description": "Dynamic value of the Attribute. Added only if the query parameter _includeDynamicValue is true. Not available for static Attributes.",
                                "nullable": true
                            }
                        ]
                    }
                }
            },
            "AttributeOrAttributeValue": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/AttributeValueOrArray"
                    },
                    {
                        "$ref": "#/components/schemas/Attribute"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "AttributeSource": {
                "description": "Source configuration of an Attribute. Contained in the Attribute property $_source.<br>The fact that there is a source configuration indicates that there is timeseries data attached to the Attribute. If $_source is null there is no timeseries data attached to the Attribute.",
                "type": "object",
                "properties": {
                    "sourceType": {
                        "description": "The type of the source.<br>`none` No connection to an external source. Data can be stored via the REST API.<br>`tag` Direct connection to a single tag of a connector.<br>`rule` Formula configuration. Formula operands are connected to tags of a connector.",
                        "type": "string",
                        "enum": [
                            "None",
                            "Tag",
                            "Rule"
                        ]
                    },
                    "store": {
                        "description": "If false no connection to the source will be established.",
                        "type": "boolean",
                        "nullable": true,
                        "default": true
                    },
                    "tag": {
                        "allOf": [
                            {
                                "description": "Source details in case of sourceType tag. Not present if sourceType is not tag.",
                                "type": "object",
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/AttributeSourceTag"
                            }
                        ]
                    },
                    "rule": {
                        "allOf": [
                            {
                                "description": "Source details in case of sourceType rule. Not present if sourceType is not rule.",
                                "type": "object",
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/AttributeSourceRule"
                            }
                        ]
                    }
                }
            },
            "AttributeSourceRule": {
                "description": "Source configuration details of an attribute in case sourceType is rule.",
                "type": "object",
                "properties": {
                    "formula": {
                        "description": "The formula of the rule.<br>`Example` var1 + var2<br>For this example the tags array must contain one entry with the name var1 and one entry with the name var2.",
                        "type": "string"
                    },
                    "tags": {
                        "description": "Array of tags to be assigned to formula operands.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AttributeSourceRuleTag"
                        }
                    }
                }
            },
            "AttributeSourceRuleTag": {
                "description": "Source configuration details of an Attribute in case sourceType is rule.",
                "type": "object",
                "properties": {
                    "adapterId": {
                        "description": "Id of the adapter (connector). This id is not an anchor.",
                        "type": "string"
                    },
                    "connectionName": {
                        "description": "Name of the connection inside the namespace of the connector.",
                        "type": "string"
                    },
                    "tagName": {
                        "description": "Name of the tag inside the namespace of the connector.",
                        "type": "string"
                    },
                    "dataType": {
                        "$ref": "#/components/schemas/DataType"
                    },
                    "name": {
                        "description": "Name of the formula operand this tag is assigned to.",
                        "type": "string"
                    }
                }
            },
            "AttributeSourceTag": {
                "description": "Source configuration details of an attribute in case sourceType is tag.",
                "type": "object",
                "properties": {
                    "adapterId": {
                        "description": "Id of the adapter (connector). This id is not an anchor.",
                        "type": "string"
                    },
                    "connectionName": {
                        "description": "Name of the connection inside the namespace of the connector.",
                        "type": "string"
                    },
                    "tagName": {
                        "description": "Name of the tag inside the namespace of the connector.",
                        "type": "string"
                    },
                    "dataType": {
                        "$ref": "#/components/schemas/DataType"
                    }
                }
            },
            "AttributeState": {
                "description": "State information of an attribute. Contained in the Attribute property $_state.<br>State colors:<br>`Green` connected is true and there are no errors.<br>`Yellow` connected is true and there are errors.<br>`Grey` connected is false and there are no errors. No connection by intent. Could be because store is false, the connector is deactivated, there is not source at all ect.<br>`Red` connected is false and there are errors.",
                "type": "object",
                "properties": {
                    "connected": {
                        "description": "Connection state to the source.",
                        "type": "boolean"
                    },
                    "errors": {
                        "description": "Array of errors.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AttributeStateError"
                        }
                    }
                }
            },
            "AttributeStateError": {
                "description": "One erro inside the $_state objects error array.<br>In reality here a full Exception object will be returned. Here only the minimal subset of properties relevant for the frontend application is shown.",
                "type": "object",
                "properties": {
                    "errorKey": {
                        "description": "This string is used to provide a localized message in the frontend.",
                        "type": "string"
                    },
                    "errorParams": {
                        "description": "Dictionary of parameters that must be put into the localized message.",
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                }
            },
            "AttributeType": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}$",
                        "type": "string",
                        "description": "The human-readable name of the type",
                        "example": "mynamespace.mytype"
                    },
                    "$base": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$origin": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$datatype": {
                        "$ref": "#/components/schemas/AttributeDataType"
                    },
                    "$behavior": {
                        "$ref": "#/components/schemas/Behavior"
                    },
                    "$nullable": {
                        "type": "boolean",
                        "description": "Defines if the value of an attribute can be set to NULL or not"
                    },
                    "$unit": {
                        "pattern": "^(?:0-.{1,255}|1-[a-zA-Z0-9]{1,3}|[0-1]|(?=.*[a-zA-Z])[a-zA-Z0-9]{1,3}|[1-9]{1}[0-9]{1,2}(?:-[a-zA-Z0-9]{1,3})?)$",
                        "type": "string",
                        "description": "Specifies the engineering unit of the value (optional)",
                        "example": "10-CEL"
                    },
                    "$array": {
                        "type": "boolean",
                        "description": "In case this field is set to true, instead of just one attribute value, there can be many"
                    },
                    "$minimum": {
                        "type": "integer",
                        "description": "Minimum amount of entries in an array. If undefined or 0 (zero), no minimum is given.",
                        "format": "int32"
                    },
                    "$maximum": {
                        "type": "integer",
                        "description": "Maximum amount of entries in an array. If undefined or 0 (zero), no maximum is given.",
                        "format": "int32"
                    },
                    "$constraint": {
                        "$ref": "#/components/schemas/Constraint"
                    }
                },
                "additionalProperties": false
            },
            "AttributeTypeOrAttributeTypePointer": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/AttributeType"
                    },
                    {
                        "$ref": "#/components/schemas/AttributeTypePointer"
                    },
                    {
                        "type": "string",
                        "format": "uuid"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "AttributeTypePointer": {
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "format": "uuid"
                    }
                },
                "additionalProperties": false,
                "nullable": true
            },
            "AttributeValue": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/BooleanValue"
                    },
                    {
                        "$ref": "#/components/schemas/IntegerValue"
                    },
                    {
                        "$ref": "#/components/schemas/FloatingValue"
                    },
                    {
                        "$ref": "#/components/schemas/StringValue"
                    },
                    {
                        "$ref": "#/components/schemas/StringArrayValue"
                    },
                    {
                        "$ref": "#/components/schemas/EntityValue"
                    },
                    {
                        "$ref": "#/components/schemas/AggregationValue"
                    },
                    {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "AttributeValueArray": {
                "oneOf": [
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/BooleanValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/IntegerValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/FloatingValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/StringValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/StringArrayValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/EntityValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AggregationValue"
                        }
                    },
                    {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DictionaryStringValue"
                        }
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "AttributeValueOrArray": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/AttributeValue"
                    },
                    {
                        "$ref": "#/components/schemas/AttributeValueArray"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "Behavior": {
                "enum": [
                    "dynamic",
                    "readonly",
                    "constant"
                ],
                "type": "string",
                "description": "An enumeration to select a behavior"
            },
            "BooleanValue": {
                "type": "boolean",
                "additionalProperties": false
            },
            "CalculateJobCollectionResult": {
                "type": "object",
                "properties": {
                    "jobCollectionId": {
                        "type": "string",
                        "example": "cb8c8cf6dac6428ea31ee1d6d96c1bce"
                    },
                    "result": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalculateJobResult"
                        }
                    }
                }
            },
            "CalculateJobMode": {
                "description": "Enumeration to specify the mode of a calculate job. <ul>Single - A single value over the whole time range should be calculated.</ul> <ul>Trend - Multiple values within the time range should be calculated taking the calculationTimeRange into account.</ul>",
                "type": "string",
                "enum": [
                    "Single",
                    "Trend"
                ]
            },
            "CalculateJobParams": {
                "type": "object",
                "properties": {
                    "from": {
                        "type": "integer",
                        "example": 133051932000000000
                    },
                    "to": {
                        "type": "integer",
                        "example": 133052004000000000
                    },
                    "mode": {
                        "$ref": "#/components/schemas/CalculateJobMode"
                    },
                    "calculationTimeRange": {
                        "type": "number",
                        "nullable": true
                    }
                }
            },
            "CalculateJobProgress": {
                "type": "object",
                "properties": {
                    "doneInMs": {
                        "type": "number"
                    },
                    "maxInMs": {
                        "type": "number"
                    },
                    "doneInPercent": {
                        "type": "number"
                    }
                }
            },
            "CalculateJobRequest": {
                "type": "object",
                "properties": {
                    "from": {
                        "type": "string",
                        "description": "timestamp to start calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "to": {
                        "type": "string",
                        "description": "timestamp to start calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T16:00:00"
                    },
                    "mode": {
                        "$ref": "#/components/schemas/CalculateJobMode"
                    },
                    "calculationTimeRange": {
                        "type": "number",
                        "nullable": true,
                        "example": 1
                    },
                    "dataSource": {
                        "$ref": "#/components/schemas/DataSourceReference"
                    },
                    "clientHandle": {
                        "type": "string",
                        "nullable": true
                    },
                    "now": {
                        "type": "string",
                        "description": "optional parameter to overide the current timestamp as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00",
                        "default": ""
                    }
                }
            },
            "CalculateJobResult": {
                "type": "object",
                "properties": {
                    "jobCollectionId": {
                        "type": "string",
                        "example": "cb8c8cf6dac6428ea31ee1d6d96c1bce"
                    },
                    "jobIndex": {
                        "type": "number",
                        "example": 0
                    },
                    "clientHandle": {
                        "type": "string",
                        "nullable": true
                    },
                    "state": {
                        "$ref": "#/components/schemas/CalculateJobState"
                    },
                    "progress": {
                        "$ref": "#/components/schemas/CalculateJobProgress"
                    },
                    "params": {
                        "$ref": "#/components/schemas/CalculateJobParams"
                    },
                    "dataSource": {
                        "$ref": "#/components/schemas/DataSourceReference"
                    },
                    "values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Value"
                        },
                        "nullable": true
                    },
                    "error": {
                        "description": "optional error description. If error is set, all values will be null.",
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    }
                }
            },
            "CalculateJobState": {
                "type": "string",
                "enum": [
                    "Created",
                    "Executing",
                    "Succeeded",
                    "Failed",
                    "Aborted"
                ]
            },
            "CalculateRequest": {
                "type": "object",
                "properties": {
                    "from": {
                        "type": "string",
                        "description": "timestamp to start calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "to": {
                        "type": "string",
                        "description": "timestamp to stop calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T16:00:00"
                    },
                    "dataSources": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataSourceReference"
                        }
                    },
                    "now": {
                        "type": "string",
                        "description": "optional parameter to overide the current timestamp as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00",
                        "default": ""
                    },
                    "variableConfigurations": {
                        "type": "array",
                        "description": "optional array of variable configurations",
                        "items": {
                            "$ref": "#/components/schemas/VariableConfiguration"
                        }
                    },
                    "qualityCodeFilter": {
                        "type": "object",
                        "description": "Optional filter to include or exclude specific quality codes and groups.",
                        "properties": {
                            "include": {
                                "type": "boolean",
                                "description": "Set to true to include the specified quality groups/codes, false to exclude them.",
                                "example": true
                            },
                            "qualityGroups": {
                                "type": "array",
                                "description": "An array of quality group names to filter by (e.g., 'Good', 'Uncertain').",
                                "items": {
                                    "type": "string",
                                    "enum": [
                                        "Good",
                                        "Uncertain",
                                        "Bad"
                                    ]
                                },
                                "example": [
                                    "Good",
                                    "Uncertain"
                                ]
                            },
                            "qualityCodes": {
                                "type": "array",
                                "description": "An array of specific quality codes to filter by (e.g., 64, 448).",
                                "items": {
                                    "type": "integer"
                                },
                                "example": [
                                    64,
                                    448
                                ]
                            }
                        }
                    }
                }
            },
            "CalculateResult": {
                "type": "object",
                "properties": {
                    "dataSource": {
                        "$ref": "#/components/schemas/DataSourceReference"
                    },
                    "timestamp": {
                        "type": "string",
                        "format": "date-time",
                        "description": "timestamp in ISO8601 format.",
                        "example": "2022-08-16T12:00:00.000Z"
                    },
                    "value": {
                        "type": "number",
                        "description": "The calculated result. Null in error case.",
                        "example": 2.5,
                        "nullable": true
                    },
                    "staticValue": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "type": "number",
                                "example": 12,
                                "description": "optional, only used if the datasource is a static attribute. Value of the static attribute."
                            },
                            {
                                "type": "boolean",
                                "example": false,
                                "description": "optional, only used if the datasource is a static boolean attribute. Value of the static attribute."
                            },
                            {
                                "type": "string",
                                "example": "static string value",
                                "description": "optional, only used if the datasource is a static attribute of type string. Value of the static attribute."
                            },
                            {
                                "type": "array",
                                "items": {
                                    "type": "number"
                                },
                                "example": [
                                    1,
                                    2,
                                    3
                                ],
                                "description": "optional, only used if the datasource is a static attribute of type array. Value of the static attribute."
                            },
                            {
                                "type": "object",
                                "example": {
                                    "en-US": "Hello",
                                    "es-US": "Hola"
                                },
                                "description": "optional, only used if the datasource is a static attribute of type object. Value of the static attribute."
                            }
                        ]
                    },
                    "qualitycode": {
                        "type": "number",
                        "description": "quality code of the calculated result.<br>Possible values are:<br>448: Good - Aggregated<br>344: Uncertain - Subnormal - Aggregated<br>256: Bad - Aggregated",
                        "example": 488
                    },
                    "error": {
                        "description": "optional error description. If error is set, value will be null.",
                        "nullable": true,
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    }
                }
            },
            "CalculateTrendRequest": {
                "type": "object",
                "properties": {
                    "from": {
                        "type": "string",
                        "description": "timestamp to start calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "to": {
                        "type": "string",
                        "description": "timestamp to stop calculation as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T16:00:00"
                    },
                    "dataSources": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataSourceReference"
                        }
                    },
                    "calculationTimeRange": {
                        "type": "integer",
                        "description": "The time range used to calculate one trendpoint. The value is specified in milliseconds.",
                        "example": 1
                    },
                    "now": {
                        "type": "string",
                        "nullable": true,
                        "description": "optional parameter to overide the current timestamp as ISO8601 string.",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00",
                        "default": ""
                    },
                    "variableConfigurations": {
                        "type": "array",
                        "nullable": true,
                        "description": "optional array of variable configurations",
                        "items": {
                            "$ref": "#/components/schemas/VariableConfiguration"
                        }
                    },
                    "aggregateRanges": {
                        "type": "array",
                        "nullable": true,
                        "description": "optional parameters to define the trend points for aggregation",
                        "items": {
                            "type": "object",
                            "properties": {
                                "from": {
                                    "type": "string",
                                    "description": "timestamp to start aggregation as ISO8601 string.",
                                    "format": "date-time",
                                    "example": "2022-08-16T12:00:00"
                                },
                                "to": {
                                    "type": "string",
                                    "description": "timestamp to stop aggregation as ISO8601 string.",
                                    "format": "date-time",
                                    "example": "2022-08-16T16:00:00"
                                }
                            }
                        }
                    },
                    "qualityCodeFilter": {
                        "type": "object",
                        "description": "Optional filter to include or exclude specific quality codes and groups.",
                        "properties": {
                            "include": {
                                "type": "boolean",
                                "description": "Set to true to include the specified quality groups/codes, false to exclude them.",
                                "example": true
                            },
                            "qualityGroups": {
                                "type": "array",
                                "description": "An array of quality group names to filter by (e.g., 'Good', 'Uncertain').",
                                "items": {
                                    "type": "string",
                                    "enum": [
                                        "Good",
                                        "Uncertain",
                                        "Bad"
                                    ]
                                },
                                "example": [
                                    "Good",
                                    "Uncertain"
                                ]
                            },
                            "qualityCodes": {
                                "type": "array",
                                "description": "An array of specific quality codes to filter by (e.g., 64, 448).",
                                "items": {
                                    "type": "integer"
                                },
                                "example": [
                                    64,
                                    448
                                ]
                            }
                        }
                    }
                }
            },
            "CalculateTrendResult": {
                "type": "object",
                "properties": {
                    "dataSource": {
                        "$ref": "#/components/schemas/DataSourceReference"
                    },
                    "qualitycode": {
                        "type": "number",
                        "description": "quality code of the calculated result.<br>Possible values are:<br>448: Good - Aggregated<br>344: Uncertain - Subnormal - Aggregated<br>256: Bad - Aggregated",
                        "example": 488
                    },
                    "values": {
                        "description": "Result for calculate trends. Null in error case.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CalculateTrendValue"
                        },
                        "nullable": true
                    },
                    "staticValue": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "type": "number",
                                "example": 12,
                                "description": "optional, only used if the datasource is a static attribute. Value of the static attribute."
                            },
                            {
                                "type": "boolean",
                                "example": false,
                                "description": "optional, only used if the datasource is a static boolean attribute. Value of the static attribute."
                            },
                            {
                                "type": "string",
                                "example": "static string value",
                                "description": "optional, only used if the datasource is a static attribute of type string. Value of the static attribute."
                            },
                            {
                                "type": "array",
                                "items": {
                                    "type": "number"
                                },
                                "example": [
                                    1,
                                    2,
                                    3
                                ],
                                "description": "optional, only used if the datasource is a static attribute of type array. Value of the static attribute."
                            },
                            {
                                "type": "object",
                                "example": {
                                    "en-US": "Hello",
                                    "es-US": "Hola"
                                },
                                "description": "optional, only used if the datasource is a static attribute of type object. Value of the static attribute."
                            }
                        ]
                    },
                    "error": {
                        "description": "optional error description. If error is set, values will be empty.",
                        "nullable": true,
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    }
                }
            },
            "CalculateTrendValue": {
                "type": "object",
                "properties": {
                    "timestamp": {
                        "type": "string",
                        "format": "date-time",
                        "description": "timestamp in ISO8601 format.",
                        "example": "2022-08-16T12:00:00.000Z"
                    },
                    "value": {
                        "type": "number",
                        "description": "the calculated result.",
                        "example": 2.5
                    },
                    "qualitycode": {
                        "type": "number",
                        "description": "quality code of the calculated result.<br>Possible values are:<br>448: Good - Aggregated<br>344: Uncertain - Subnormal - Aggregated<br>256: Bad - Aggregated",
                        "example": 448
                    }
                }
            },
            "Certificate": {
                "type": "object",
                "properties": {
                    "fileName": {
                        "type": "string",
                        "example": "Cert.pem",
                        "description": "name of certificate file"
                    },
                    "content": {
                        "type": "string",
                        "example": "",
                        "description": "content of certificate file"
                    }
                }
            },
            "Concept": {
                "enum": [
                    "entity",
                    "attribute",
                    "reference",
                    "relation",
                    "asset",
                    "aspect",
                    "view",
                    "package"
                ],
                "type": "string",
                "description": "An enumeration to select a concept"
            },
            "ConnectionState": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "description": "Name of the connection."
                    },
                    "state": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/ConnectionStateEnum"
                            },
                            {
                                "description": "Current state of the connection."
                            }
                        ]
                    },
                    "reason": {
                        "type": "string",
                        "description": "Reason of the state if available.",
                        "nullable": true
                    },
                    "timestamp": {
                        "type": "string",
                        "format": "date-time",
                        "description": "Timestamp of the state if available.",
                        "nullable": true
                    }
                }
            },
            "ConnectionStateEnum": {
                "type": "string",
                "enum": [
                    "good",
                    "stopped",
                    "bad"
                ]
            },
            "ConnectorState": {
                "type": "object",
                "properties": {
                    "state": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/ConnectorStateEnum"
                            },
                            {
                                "description": "Current state of the connector."
                            }
                        ]
                    },
                    "reason": {
                        "type": "string",
                        "description": "Reason of the state if available.",
                        "nullable": true
                    },
                    "timestamp": {
                        "type": "string",
                        "format": "date-time",
                        "description": "Timestamp of the state if available.",
                        "nullable": true
                    },
                    "connections": {
                        "type": "array",
                        "description": "Connection specific state information.",
                        "items": {
                            "$ref": "#/components/schemas/ConnectionState"
                        },
                        "nullable": true
                    }
                }
            },
            "ConnectorStateEnum": {
                "type": "string",
                "enum": [
                    "available",
                    "good",
                    "bad",
                    "unavailable"
                ]
            },
            "Constraint": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/AnchorConstraint"
                    },
                    {
                        "$ref": "#/components/schemas/StringConstraint"
                    },
                    {
                        "$ref": "#/components/schemas/KeyValuePairsConstraint"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "CounterType": {
                "type": "string",
                "enum": [
                    "UpCounter",
                    "ReverseCounter"
                ]
            },
            "Data": {
                "type": "object",
                "properties": {
                    "variableId": {
                        "type": "string",
                        "example": "0dc1963b0db54bc485d76a763315f604"
                    },
                    "values": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Value"
                        }
                    },
                    "staticValue": {
                        "nullable": true,
                        "oneOf": [
                            {
                                "type": "number",
                                "example": 12,
                                "description": "optional, only used if the datasource is a static attribute. Value of the static attribute."
                            },
                            {
                                "type": "boolean",
                                "example": false,
                                "description": "optional, only used if the datasource is a static boolean attribute. Value of the static attribute."
                            },
                            {
                                "type": "string",
                                "example": "static string value",
                                "description": "optional, only used if the datasource is a static attribute of type string. Value of the static attribute."
                            },
                            {
                                "type": "array",
                                "items": {
                                    "type": "number"
                                },
                                "example": [
                                    1,
                                    2,
                                    3
                                ],
                                "description": "optional, only used if the datasource is a static attribute of type array. Value of the static attribute."
                            },
                            {
                                "type": "object",
                                "example": {
                                    "en-US": "Hello",
                                    "es-US": "Hola"
                                },
                                "description": "optional, only used if the datasource is a static attribute of type object. Value of the static attribute."
                            }
                        ]
                    },
                    "error": {
                        "description": "optional error description. If error is set, values will be empty.",
                        "nullable": true,
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    },
                    "lastRequestTime": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2022-08-17T08:01:00.000Z",
                        "description": "only returned for /DataService/Data/Delta path."
                    }
                }
            },
            "DataBulkIgnoreErrorsResponse": {
                "type": "object",
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": true
                    },
                    "errors": {
                        "type": "array",
                        "nullable": true,
                        "items": {
                            "$ref": "#/components/schemas/Exception"
                        }
                    }
                }
            },
            "DataBulkResponse": {
                "type": "object",
                "properties": {
                    "rowCount": {
                        "type": "integer",
                        "description": "number of generated values.",
                        "example": 6
                    },
                    "size": {
                        "type": "integer",
                        "description": "size of generated data in bytes.",
                        "example": 84
                    },
                    "formattedSize": {
                        "type": "string",
                        "description": "format size of generated data as string.",
                        "example": "84.00 Byte"
                    },
                    "time": {
                        "type": "integer",
                        "description": "Elapsed time in microseconds to generate data.",
                        "example": 16057
                    },
                    "formattedTime": {
                        "type": "string",
                        "description": "Elapsed time to generate data as formatted string.",
                        "example": "1.606 milliseconds"
                    },
                    "speed": {
                        "type": "integer",
                        "description": "number of rows per Second",
                        "example": 3736
                    },
                    "formattedSpeed": {
                        "type": "string",
                        "description": "number of rows per Second as formatted string",
                        "example": "3736 rows/second"
                    }
                }
            },
            "DataDestination": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true,
                        "example": "3c49642087f2459fa705b24fa61a3bb9"
                    },
                    "name": {
                        "type": "string",
                        "example": "wccdev"
                    },
                    "type": {
                        "type": "string",
                        "readOnly": true,
                        "example": "mindsphere",
                        "enum": [
                            "mindsphere",
                            "senseye",
                            "genericmqtt",
                            "iih"
                        ]
                    },
                    "active": {
                        "type": "boolean",
                        "description": "true, if this data destinations enabled.",
                        "example": true
                    },
                    "connected": {
                        "type": "boolean",
                        "description": "true, if this data destination is connected.",
                        "example": true
                    },
                    "error": {
                        "description": "optional error description. If error is not set, value will be null.",
                        "nullable": true,
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    },
                    "connectionDetails": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SyncLibStatus"
                            },
                            {
                                "nullable": true,
                                "readOnly": true,
                                "description": "Only available for IIH DataDestination."
                            }
                        ]
                    }
                }
            },
            "DataDestinationCreate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/DataDestination"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "config": {
                                "type": "object",
                                "description": "configuration, dependent on data destination type.",
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/MdspDataDestinationConfigCreate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/SenseyeDataDestinationConfigCreate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigCreate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/IIHDataDestinationConfig"
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "DataDestinationRead": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/DataDestination"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "config": {
                                "type": "object",
                                "description": "configuration, dependent on data destination type.",
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/MdspDataDestinationConfigRead"
                                    },
                                    {
                                        "$ref": "#/components/schemas/SenseyeDataDestinationConfig"
                                    },
                                    {
                                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigRead"
                                    },
                                    {
                                        "$ref": "#/components/schemas/IIHDataDestinationConfig"
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "DataDestinationState": {
                "type": "object",
                "properties": {
                    "connected": {
                        "type": "boolean",
                        "description": "true, if this data destination is connected.",
                        "example": true
                    },
                    "error": {
                        "description": "optional error description. If error is not set, value will be null.",
                        "nullable": true,
                        "allOf": [
                            {
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            }
                        ]
                    },
                    "connectionDetails": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SyncLibStatus"
                            },
                            {
                                "nullable": true,
                                "readOnly": true,
                                "description": "Only available for IIH DataDestination."
                            }
                        ]
                    }
                }
            },
            "DataDestinationSyncState": {
                "type": "string",
                "enum": [
                    "NoSync",
                    "Disconnected",
                    "Syncing",
                    "Synced",
                    "Error"
                ],
                "description": "Current sync state of DataSync object, only readable in GET calls."
            },
            "DataDestinationUpdate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/DataDestination"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "config": {
                                "type": "object",
                                "description": "configuration, dependent on data destination type.",
                                "oneOf": [
                                    {
                                        "$ref": "#/components/schemas/MdspDataDestinationConfigUpdate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/SenseyeDataDestinationConfigUpdate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigUpdate"
                                    },
                                    {
                                        "$ref": "#/components/schemas/IIHDataDestinationConfig"
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "DataDestinationsResponse": {
                "type": "object",
                "properties": {
                    "dataDestinations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataDestinationRead"
                        }
                    }
                }
            },
            "DataReadBulkRequest": {
                "type": "object",
                "properties": {
                    "variableId": {
                        "type": "string",
                        "example": "0dc1963b0db54bc485d76a763315f604"
                    },
                    "from": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2022-08-17T08:01:00.000Z",
                        "nullable": true
                    },
                    "to": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2022-08-17T09:01:00.000Z",
                        "nullable": true
                    },
                    "limit": {
                        "type": "number",
                        "example": 10,
                        "nullable": true
                    },
                    "order": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SortOrder"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "excludeBadQuality": {
                        "type": "boolean",
                        "nullable": true,
                        "default": false,
                        "example": true
                    },
                    "interpolated": {
                        "type": "boolean",
                        "nullable": true,
                        "default": false,
                        "example": true
                    },
                    "interpolationInterval": {
                        "type": "integer",
                        "nullable": true,
                        "default": 0,
                        "example": 5000
                    }
                }
            },
            "DataResponseArray": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Data"
                        }
                    },
                    "hasMoreData": {
                        "oneOf": [
                            {
                                "nullable": true
                            },
                            {
                                "type": "object",
                                "description": "optional object, which is used if the values for one variable were limited. This has an effect on all other variables.",
                                "properties": {
                                    "from": {
                                        "type": "string",
                                        "description": "timestamp starting for more data as ISO8601 string.",
                                        "format": "date-time",
                                        "example": "2022-08-16T12:00:00"
                                    },
                                    "to": {
                                        "type": "string",
                                        "description": "to timestamp from request as ISO8601 string.",
                                        "format": "date-time",
                                        "example": "2022-08-16T13:00:00"
                                    }
                                }
                            }
                        ]
                    }
                }
            },
            "DataResponseArrayList": {
                "type": "array",
                "items": {
                    "$ref": "#/components/schemas/DataResponseArray"
                }
            },
            "DataRetention": {
                "type": "object",
                "properties": {
                    "sourceId": {
                        "type": "string"
                    },
                    "sourceTypeId": {
                        "$ref": "#/components/schemas/SourceType"
                    },
                    "settings": {
                        "$ref": "#/components/schemas/DataRetentionSettings"
                    }
                }
            },
            "DataRetentionSettings": {
                "type": "object",
                "properties": {
                    "timeSettings": {
                        "nullable": true,
                        "type": "object",
                        "properties": {
                            "timeRange": {
                                "$ref": "#/components/schemas/TimeRange"
                            }
                        }
                    }
                }
            },
            "DataRetentionV2Response": {
                "type": "object",
                "properties": {
                    "dataRetention": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataRetention"
                            },
                            {
                                "nullable": true,
                                "description": "DataRetention setting of object if the object has the setting directly."
                            }
                        ]
                    },
                    "inherited": {
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataRetention"
                            },
                            {
                                "nullable": true,
                                "description": "DataRetention setting of object if the object has the setting from inhereted."
                            }
                        ]
                    }
                }
            },
            "DataServiceConfig": {
                "type": "object",
                "properties": {
                    "dataBusCredentials": {
                        "$ref": "#/components/schemas/DatabusCredentials"
                    },
                    "adapters": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Adapter"
                        }
                    },
                    "assets": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Asset"
                        }
                    },
                    "variables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Variable"
                        }
                    },
                    "dataDestinations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataDestinationRead"
                        }
                    },
                    "dataRetentions": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataRetention"
                        }
                    },
                    "destinationHierarchys": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DestinationHierarchy"
                        }
                    },
                    "aggregations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AggregationObject"
                        }
                    },
                    "aspectTypes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AspectType"
                        }
                    },
                    "aspectTypeVariables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AspectTypeVariable"
                        }
                    },
                    "variableConfigurations": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/VariableConfiguration"
                        }
                    }
                }
            },
            "DataServiceEncryptedConfig": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "string"
                    }
                }
            },
            "DataSource": {
                "type": "object",
                "properties": {
                    "type": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/DataSourceType"
                            },
                            {
                                "example": "Variable"
                            }
                        ]
                    },
                    "id": {
                        "type": "string",
                        "example": "dc25bc804b464fdeb9cc9b7c36251fe0"
                    },
                    "aggregation": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/TrendAggregation"
                            },
                            {
                                "example": "Counter"
                            }
                        ]
                    },
                    "name": {
                        "type": "string",
                        "example": "GoodCounter",
                        "readOnly": true
                    },
                    "assetId": {
                        "type": "string",
                        "example": "dc25bc804b464fdeb9cc9b7c36251fe0",
                        "readOnly": true
                    },
                    "aspectName": {
                        "type": "string",
                        "example": "Counters",
                        "readOnly": true
                    },
                    "unit": {
                        "type": "string",
                        "example": "",
                        "readOnly": true
                    },
                    "dataType": {
                        "$ref": "#/components/schemas/DataType"
                    },
                    "path": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "example": "edge"
                        },
                        "description": "asset path of the datasource, every array element is the next subasset in the parent line of the datasource."
                    },
                    "acquisitionCategory": {
                        "allOf": [
                            {
                                "description": "Optional. Only available in case of DataSourceType Variable. Else undefined."
                            },
                            {
                                "$ref": "#/components/schemas/AcquisitionCategory"
                            },
                            {
                                "example": "Counter"
                            },
                            {
                                "readOnly": true
                            }
                        ]
                    },
                    "defaultAggregation": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Aggregation"
                            },
                            {
                                "example": "Counter"
                            },
                            {
                                "readOnly": true
                            }
                        ]
                    },
                    "error": {
                        "allOf": [
                            {
                                "description": "Optional. Only present in error case. Else undefined."
                            },
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "readOnly": true
                            }
                        ]
                    }
                }
            },
            "DataSourceReference": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "example": "3a801b60917e4ca291ff027ba263697e",
                        "description": "Depending on the type could be the id of a Variable or a KPI."
                    },
                    "type": {
                        "$ref": "#/components/schemas/DataSourceType"
                    },
                    "aggregation": {
                        "$ref": "#/components/schemas/TrendAggregation"
                    },
                    "aggregationOptions": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AggregationOptions"
                            },
                            {
                                "nullable": true,
                                "description": "Only needed for Duration and Occurrence calculations.",
                                "example": {
                                    "statusValues": [
                                        6
                                    ],
                                    "microStop": {
                                        "values": [
                                            4
                                        ],
                                        "threshold": 1000
                                    }
                                }
                            }
                        ]
                    }
                }
            },
            "DataSourceType": {
                "type": "string",
                "enum": [
                    "Variable",
                    "KPI",
                    "Constant",
                    "Consumption",
                    "UnitConsumption",
                    "Costs",
                    "UnitCosts",
                    "CO2Emissions",
                    "UnitCO2Emissions",
                    "UnitCount"
                ]
            },
            "DataSync": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true,
                        "example": "a4d1778f056248cd9ea93f4529d00fdd"
                    },
                    "sourceId": {
                        "type": "string",
                        "description": "id of the source object",
                        "example": "d0df2a40afd64671bda7b53ce8f08ef8"
                    },
                    "sourceType": {
                        "$ref": "#/components/schemas/SourceType"
                    },
                    "destinationId": {
                        "type": "string",
                        "description": "id of the data destination",
                        "example": "3c49642087f2459fa705b24fa61a3bb9"
                    },
                    "startTime": {
                        "type": "string",
                        "description": "optional timestamp in ISO8601 string",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "disabled": {
                        "type": "boolean",
                        "default": false,
                        "description": "optional parameter to disable data sync for this object and data destination"
                    },
                    "aggregation": {
                        "description": "optional object which describes an aggregation for this data sync",
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AggregationInfo"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "state": {
                        "$ref": "#/components/schemas/DataDestinationSyncState"
                    }
                }
            },
            "DataSyncArray": {
                "type": "object",
                "properties": {
                    "dataSyncs": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DataSync"
                        }
                    }
                }
            },
            "DataSyncError": {
                "type": "object",
                "properties": {
                    "sourceId": {
                        "type": "string",
                        "description": "id of the source object",
                        "example": "d0df2a40afd64671bda7b53ce8f08ef8"
                    },
                    "sourceTypeId": {
                        "$ref": "#/components/schemas/SourceType"
                    },
                    "destinationId": {
                        "type": "string",
                        "description": "id of the data destination",
                        "example": "3c49642087f2459fa705b24fa61a3bb9"
                    },
                    "state": {
                        "$ref": "#/components/schemas/DataDestinationSyncState"
                    },
                    "error": {
                        "$ref": "#/components/schemas/Exception"
                    },
                    "path": {
                        "type": "string",
                        "description": "full path of the object",
                        "example": "edge/TopAsset/SubAsset"
                    }
                }
            },
            "DataType": {
                "type": "string",
                "example": "Double",
                "enum": [
                    "Bool",
                    "Int8",
                    "Int16",
                    "Int32",
                    "Int64",
                    "UInt8",
                    "UInt16",
                    "UInt32",
                    "UInt64",
                    "Float",
                    "Double",
                    "String",
                    "Date",
                    "TimeSpan",
                    "Blob"
                ],
                "description": "The type 'String' has currently no size limition.<br>The expected format for the type 'Date' is ISO8601: '2022-02-22T22:00:00.000Z'. The maximum number of decimal places is 7. UTC is always expected.<br>The expected format for the type 'TimeSpan' is a 64-bit signed integer.<br>The expected format for the type 'Blob' is base64 encoded string data."
            },
            "DatabusCredentials": {
                "type": "object",
                "properties": {
                    "url": {
                        "type": "string",
                        "example": "tcp://localhost:1883"
                    },
                    "username": {
                        "type": "string",
                        "example": ""
                    },
                    "password": {
                        "type": "string",
                        "example": "",
                        "nullable": true
                    }
                }
            },
            "DestinationHierarchy": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "readOnly": true,
                        "example": "b7d94ead14064f2883866c3bdc14ab2b"
                    },
                    "sourceId": {
                        "type": "string",
                        "description": "anchor id of the source object, can be null, but then the name has be sest",
                        "example": "00000000-0000-0000-0000-000000000000"
                    },
                    "sourceType": {
                        "$ref": "#/components/schemas/DestinationSourceType"
                    },
                    "name": {
                        "type": "string",
                        "description": "name of the data destination hierarchy, can only be set if sourceId is null",
                        "example": "TopAsset"
                    },
                    "sourceName": {
                        "type": "string",
                        "description": "name of the linked source object, will only be send if sourceId != null, as then name is not set/send. Can only be read.",
                        "example": "TopAttribute",
                        "readOnly": true
                    },
                    "destinationId": {
                        "type": "string",
                        "description": "id of the data destination",
                        "example": "3c49642087f2459fa705b24fa61a3bb9"
                    },
                    "parentId": {
                        "type": "string",
                        "description": "id of the parent hierarchy, can be empty for top elements",
                        "example": "b7d94ead14064f2883866c3bdc14ab2b"
                    },
                    "startTime": {
                        "type": "string",
                        "description": "optional timestamp in ISO8601 string",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "aggregation": {
                        "description": "optional object which describes an aggregation for this destination hierarchy",
                        "nullable": true,
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/AggregationInfo"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "values": {
                        "type": "array",
                        "description": "can only be set for some data destinations and some elements (GenMqtt: top elements)",
                        "items": {
                            "type": "object",
                            "description": "key value pairs for the hierarchy",
                            "properties": {
                                "key": {
                                    "type": "string",
                                    "description": "key to store information",
                                    "example": "hierarchyConfiguration"
                                },
                                "value": {
                                    "type": "string",
                                    "description": "the corresponding value for the key, can be in json format",
                                    "example": "{\"data\":{}}"
                                }
                            }
                        }
                    },
                    "state": {
                        "$ref": "#/components/schemas/DestinationHierarchySyncState"
                    },
                    "opcuaState": {
                        "$ref": "#/components/schemas/DestinationHierarchyOpcuaSyncState"
                    },
                    "configError": {
                        "type": "array",
                        "description": "Optional array of configuration error identifiers (e.g., 'AggregationDataTypeMismatch')",
                        "readOnly": true,
                        "nullable": true,
                        "items": {
                            "type": "string"
                        },
                        "example": [
                            "AggregationDataTypeMismatch"
                        ]
                    },
                    "hasChildren": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "If this element has any children in the destination hierarchy"
                    }
                }
            },
            "DestinationHierarchyBulkResponse": {
                "type": "object",
                "properties": {
                    "results": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/DestinationHierarchy"
                        }
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Exception"
                        },
                        "nullable": true
                    }
                }
            },
            "DestinationHierarchyOpcuaSyncState": {
                "type": "string",
                "enum": [
                    "NoSync",
                    "Disconnected",
                    "Syncing",
                    "Synced",
                    "Error"
                ],
                "description": "Current sync state of DestinationHierarchy OpcUa, only readable in GET calls, will only be provided in data destination type IIH sync."
            },
            "DestinationHierarchySyncState": {
                "type": "string",
                "enum": [
                    "NoSync",
                    "Disconnected",
                    "Syncing",
                    "Synced",
                    "Error"
                ],
                "description": "Current sync state of DestinationHierarchy object, only readable in GET calls."
            },
            "DestinationSourceType": {
                "type": "string",
                "enum": [
                    "asset",
                    "aspect",
                    "attribute",
                    "alarmChannel"
                ]
            },
            "DictionaryStringValue": {
                "type": "object",
                "additionalProperties": {
                    "maxLength": 4096,
                    "type": "string"
                },
                "description": "contains keys in the format '^[a-z]{2}(-[A-Z]{2})?$' with string values with up to 4096 length"
            },
            "Entity": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$type": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:[a-zA-Z_][a-zA-Z0-9_-]*)$",
                        "type": "string",
                        "description": "The name of an instance",
                        "example": "myinstance"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$template": {
                        "type": "string",
                        "description": "Points to the template the instance is based on.",
                        "format": "uuid"
                    }
                },
                "additionalProperties": {
                    "$ref": "#/components/schemas/AttributeOrAttributeValue"
                }
            },
            "EntityEx": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/Entity"
                    },
                    {
                        "$ref": "#/components/schemas/OriginatorIdAndSyncChildIdExtension"
                    },
                    {
                        "properties": {
                            "$_path": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/EntityPath"
                                    },
                                    {
                                        "description": "Specifies where the Entity is located in the IIH tree. Added only if the query parameter _includePath is true.",
                                        "nullable": true
                                    }
                                ]
                            },
                            "$_hasChildren": {
                                "description": "Specifies if the Entity has children in the IIH tree? Added only if the query parameter _includeHasChildren is true.",
                                "type": "boolean"
                            },
                            "$_hasAttributes": {
                                "description": "Specifies if the Entity has attributes. Added only if the query parameter _includeHasAttributes is true.",
                                "type": "boolean"
                            }
                        }
                    }
                ]
            },
            "EntityPath": {
                "description": "Full path information of an Entity in the IIH tree.",
                "type": "object",
                "properties": {
                    "item": {
                        "$ref": "#/components/schemas/AnchorObject"
                    },
                    "relationPath": {
                        "description": "The path to the Entity in the IIH tree.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AnchorObject"
                        }
                    },
                    "compositionPath": {
                        "description": "The path to the toplevel owner Entity in case of composition.",
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AnchorObject"
                        }
                    }
                }
            },
            "EntityType": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}$",
                        "type": "string",
                        "description": "The human-readable name of the type",
                        "example": "mynamespace.mytype"
                    },
                    "$base": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$chain": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/AnchorTypePointer"
                        }
                    }
                },
                "additionalProperties": {
                    "$ref": "#/components/schemas/AttributeTypeOrAttributeTypePointer"
                }
            },
            "EntityValue": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/Entity"
                    },
                    {
                        "$ref": "#/components/schemas/AggregationValue"
                    }
                ],
                "additionalProperties": false,
                "nullable": true
            },
            "ErrorObject": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string",
                        "format": "uuid",
                        "nullable": true
                    },
                    "code": {
                        "type": "string",
                        "nullable": true
                    },
                    "status": {
                        "type": "integer",
                        "format": "int32",
                        "nullable": true
                    },
                    "title": {
                        "type": "string",
                        "nullable": true
                    },
                    "detail": {
                        "type": "string",
                        "nullable": true
                    },
                    "links": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Link"
                        },
                        "nullable": true
                    },
                    "correlationId": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "description": "The ErrorObject is structured according to https://developer.internal.siemens.com/guidelines/api-guidelines/rest/error.html#errorreportingrule305"
            },
            "ErrorResponse": {
                "type": "object",
                "properties": {
                    "errors": {
                        "minItems": 1,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ErrorObject"
                        }
                    }
                },
                "additionalProperties": false,
                "description": "The ErrorResponse is structured according to https://developer.internal.siemens.com/guidelines/api-guidelines/rest/error.html#errorreportingrule304",
                "example": {
                    "errors": []
                }
            },
            "Exception": {
                "type": "object",
                "properties": {
                    "service": {
                        "type": "string",
                        "default": "DataService"
                    },
                    "state": {
                        "type": "integer",
                        "enum": [
                            200,
                            204,
                            304,
                            400,
                            401,
                            404,
                            500
                        ],
                        "example": 404
                    },
                    "stateText": {
                        "type": "string",
                        "enum": [
                            "OK",
                            "NoContent",
                            "NotModified",
                            "BadRequest",
                            "Unauthorized",
                            "NotFound",
                            "ServerError"
                        ],
                        "example": "NotFound"
                    },
                    "errorCode": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 57,
                        "example": 4
                    },
                    "errorKey": {
                        "type": "string",
                        "example": "NotFound"
                    },
                    "message": {
                        "type": "string",
                        "example": "The Variable with the id a12c96e4fbda472da3ffe481f06f0adb2 was not found."
                    },
                    "errorParams": {
                        "type": "object",
                        "properties": {
                            "value": {
                                "type": "string",
                                "description": "can be any combination of strings."
                            }
                        }
                    },
                    "debugInfo": {
                        "type": "object",
                        "properties": {
                            "value": {
                                "type": "string",
                                "description": "can be any combination of strings."
                            }
                        }
                    }
                }
            },
            "ExtendedProperties": {
                "type": "object",
                "properties": {
                    "key": {
                        "type": "string"
                    },
                    "valueType": {
                        "type": "string"
                    },
                    "language": {
                        "type": "string",
                        "description": "optional, only valid when valueType is LocalizedString"
                    },
                    "value": {
                        "type": "string"
                    }
                }
            },
            "ExtendedPropertiesFilter": {
                "type": "object",
                "description": "Filters alarms based on extended properties. Extended properties are custom key-value pairs associated with alarms that provide additional context beyond standard alarm fields.",
                "required": [
                    "name",
                    "value"
                ],
                "properties": {
                    "name": {
                        "type": "string",
                        "description": "The name of the extended property to filter by. This must match the property name exactly as it appears in the alarm data.",
                        "example": "Motor_Mode",
                        "minLength": 1
                    },
                    "value": {
                        "type": "array",
                        "description": "Array of acceptable values for this extended property. Alarms whose extended property matches ANY of these values will be accepted. All values are treated as strings and comparison is case-insensitive.",
                        "items": {
                            "type": "string",
                            "description": "An acceptable value for the extended property"
                        },
                        "example": [
                            "Motor_Running",
                            "Motor_Stopped",
                            "Maintenance_Mode"
                        ],
                        "minItems": 1
                    }
                }
            },
            "FetchMode": {
                "type": "string",
                "description": "Enumeration to specify the behaviour of getting a calculate job collection.<br> <ul>state - Get only the state of the calculate jobs without the results.</ul> <ul>partial - Get the state of the calculate jobs and the results if they are ready.</ul> <ul>all - Get the state of the calculate jobs and the results if all are ready.</ul>",
                "enum": [
                    "state",
                    "partial",
                    "all"
                ]
            },
            "FloatingValue": {
                "type": "number",
                "additionalProperties": false
            },
            "GenericMQTTDataDestinationConfig": {
                "type": "object",
                "properties": {
                    "mqttHost": {
                        "type": "string",
                        "example": "mqtt.broker.io",
                        "description": "url of the mqtt broker"
                    },
                    "mqttProtocol": {
                        "type": "string",
                        "example": "tcp",
                        "description": "Protocol used for establishing the connection to the broker",
                        "enum": [
                            "tcp",
                            "ssl",
                            "ws",
                            "wss"
                        ]
                    },
                    "mqttPort": {
                        "type": "number",
                        "example": 8883,
                        "description": "port of mqtt broker"
                    },
                    "mqttPath": {
                        "type": "string",
                        "example": "/mqtt",
                        "description": "optional path to be appended after port number"
                    },
                    "mqttClientId": {
                        "type": "string",
                        "example": "AzureClient_1",
                        "description": "optional mqtt client id for connection. if not set, a random client id is generated."
                    },
                    "bulk": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "group data points of an attribute in an mqtt package. deactivating this sets the publishing interval to 1 s and causes a higher resource comsumption."
                    },
                    "publishIntervalInSec": {
                        "type": "number",
                        "example": 30,
                        "description": "how often should mqtt packages be published in seconds. data will be buffered."
                    },
                    "qos": {
                        "type": "number",
                        "example": 1,
                        "description": "mqtt quality of service for time series data, last will and birth message"
                    },
                    "mqttMaxPackageSend": {
                        "type": "number",
                        "example": 100,
                        "description": "maximum amount of packages that can be sent within a second. if limit is reached it will be waited until next second"
                    },
                    "mqttMaxPackageSize": {
                        "type": "number",
                        "example": 256,
                        "description": "maximum size of a single mqtt package. if limit is reached the package will be split."
                    },
                    "authSelector": {
                        "type": "string",
                        "example": "user_pw_cert",
                        "description": "authentication method for mqtt communication"
                    },
                    "mqttUsername": {
                        "type": "string",
                        "example": "sample_username",
                        "nullable": true,
                        "description": "mqtt username for authentication"
                    },
                    "mqttPassword": {
                        "type": "string",
                        "nullable": true,
                        "description": "mqtt password for authentication"
                    },
                    "clientCertificate": {
                        "nullable": true,
                        "description": "client certificate for mqtt tls authentication",
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "clientKey": {
                        "nullable": true,
                        "description": "client key for mqtt tls authentication",
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "privateKeyPassword": {
                        "type": "string",
                        "nullable": true,
                        "description": "private key password for client certificates"
                    },
                    "caCertificateMQTT": {
                        "nullable": true,
                        "description": "ca certificate for mqtt tls authentication",
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true
                            }
                        ]
                    },
                    "advancedSettings": {
                        "type": "boolean",
                        "example": true,
                        "description": "flag to activate or deactivate advanced settings when setting up data destination"
                    },
                    "retainedFlag": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "retained flag for time series data, last will and birth message"
                    },
                    "cleanSession": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "clean session for time series data"
                    },
                    "keepAlive": {
                        "type": "number",
                        "nullable": true,
                        "example": 60,
                        "description": "keep alive for time series data"
                    },
                    "connectionTimeout": {
                        "type": "number",
                        "nullable": true,
                        "example": 15,
                        "description": "connection timeout for time series data"
                    },
                    "birthMessage": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "flag to activate or deactivate birth message"
                    },
                    "birthMessageTopic": {
                        "type": "string",
                        "nullable": true,
                        "example": "birthMessage/topic",
                        "description": "topic to send out birth message"
                    },
                    "birthMessageContent": {
                        "type": "string",
                        "nullable": true,
                        "example": "lastWillContent",
                        "description": "content of birth message"
                    },
                    "lastWill": {
                        "type": "boolean",
                        "nullable": true,
                        "example": true,
                        "description": "flag to activate or deactivate last will and testament"
                    },
                    "lastWillTopic": {
                        "type": "string",
                        "nullable": true,
                        "example": "lastWill/topic",
                        "description": "topic to send out last will message"
                    },
                    "lastWillMessage": {
                        "type": "string",
                        "nullable": true,
                        "example": "lastWillMessage",
                        "description": "content of last will message"
                    }
                }
            },
            "GenericMQTTDataDestinationConfigCreate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "configFile": {
                                "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigFile"
                            }
                        }
                    }
                ]
            },
            "GenericMQTTDataDestinationConfigFile": {
                "type": "object",
                "properties": {
                    "fileName": {
                        "type": "string",
                        "example": "Broker_Config.json",
                        "description": "name of generic mqtt data destination configuration file"
                    },
                    "content": {
                        "type": "object",
                        "example": {
                            "topic": "factory_1/motors/$path/$attributeName",
                            "payload": {
                                "header": {
                                    "Topic": "$topic",
                                    "Name": "$attributeName",
                                    "Hierarchy": "$path",
                                    "IED_Model": "IED427Factory1"
                                },
                                "datapoints": [
                                    {
                                        "Measurement": "$value",
                                        "Time": "$timestamp:LDAP-Filetime",
                                        "Quality_Code": "$qualityCode"
                                    }
                                ]
                            }
                        },
                        "description": "content of generic mqtt data destination configuration file"
                    }
                }
            },
            "GenericMQTTDataDestinationConfigRead": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "configFile": {
                                "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigFile"
                            }
                        }
                    }
                ]
            },
            "GenericMQTTDataDestinationConfigUpdate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "configFile": {
                                "nullable": true,
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/GenericMQTTDataDestinationConfigFile"
                                    },
                                    {
                                        "nullable": true
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "IIHDataDestinationConfig": {
                "allOf": [
                    {
                        "type": "object",
                        "properties": {
                            "parentName": {
                                "type": "string",
                                "example": "Parent_1",
                                "description": "The SystemName of the IIH instance to which should be synchronized."
                            },
                            "dataSynchronization": {
                                "type": "boolean",
                                "description": "Indicates if timeseries data and alarm data should be synchronized."
                            },
                            "dataSynchronizationCycle": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/TimeRange"
                                    },
                                    {
                                        "description": "The cycle in which data synchronization should be performed."
                                    }
                                ]
                            },
                            "opcUaSynchronization": {
                                "type": "boolean",
                                "description": "Indicates if the OPC UA information model should be synchronized."
                            }
                        }
                    },
                    {
                        "$ref": "#/components/schemas/SyncBroker"
                    }
                ]
            },
            "IntegerValue": {
                "type": "integer",
                "additionalProperties": false
            },
            "IsAlarmState": {
                "type": "string",
                "enum": [
                    "Yes",
                    "No",
                    "NotRelevant"
                ],
                "description": "Represents the state of an alarm property (active/acknowledged/confirmed). Use 'Yes' for true state, 'No' for false state, and 'NotRelevant' when the state should be ignored in filtering.",
                "example": "Yes"
            },
            "KeyValuePairsConstraint": {
                "type": "object",
                "properties": {
                    "$definition": {
                        "additionalProperties": {
                            "maximum": 4294967295,
                            "minimum": 0,
                            "type": "integer",
                            "format": "int64"
                        }
                    }
                },
                "additionalProperties": false,
                "nullable": true
            },
            "Link": {
                "type": "object",
                "properties": {
                    "about": {
                        "type": "string",
                        "format": "uri",
                        "nullable": true
                    },
                    "type": {
                        "type": "string",
                        "format": "uri",
                        "nullable": true
                    }
                },
                "additionalProperties": false
            },
            "MdspDataDestinationConfig": {
                "type": "object",
                "properties": {
                    "tenantId": {
                        "type": "string",
                        "example": "wccdev",
                        "description": "tenant of mindsphere"
                    },
                    "clientId": {
                        "type": "string",
                        "example": "ninjatest",
                        "description": "client id of mqtt certificate"
                    },
                    "appId": {
                        "type": "string",
                        "example": "wccdev-pdmcoreservice-1.0",
                        "description": "app id of the app credentials"
                    },
                    "region": {
                        "type": "string",
                        "example": "EU1",
                        "description": "region of mindsphere"
                    },
                    "brokerUrl": {
                        "type": "string",
                        "example": "mindconnectmqtt.eu1.mindsphere.io",
                        "description": "url of mindsphere mqtt broker"
                    },
                    "port": {
                        "type": "number",
                        "example": 8883,
                        "description": "port of mindsphere mqtt broker"
                    },
                    "timeoutInSec": {
                        "type": "number",
                        "example": 1000
                    },
                    "publishIntervalInSec": {
                        "type": "number",
                        "example": 10
                    },
                    "retryCount": {
                        "type": "number",
                        "example": 5
                    },
                    "qos": {
                        "type": "number",
                        "example": 1
                    }
                }
            },
            "MdspDataDestinationConfigCreate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/MdspDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "password": {
                                "type": "string",
                                "description": "secret id of the app credentials, required for POST, optional in PUT"
                            },
                            "connectorCertificate": {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            "connectorKey": {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            "caCertificate": {
                                "nullable": true,
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/Certificate"
                                    },
                                    {
                                        "nullable": true
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "MdspDataDestinationConfigRead": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/MdspDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "connectorCertificate": {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            "connectorKey": {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            "caCertificate": {
                                "$ref": "#/components/schemas/Certificate"
                            }
                        }
                    }
                ]
            },
            "MdspDataDestinationConfigUpdate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/MdspDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "password": {
                                "type": "string",
                                "nullable": true,
                                "description": "secret id of the app credentials, required for POST, optional in PUT"
                            },
                            "connectorCertificate": {
                                "nullable": true,
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/Certificate"
                                    },
                                    {
                                        "nullable": true
                                    }
                                ]
                            },
                            "connectorKey": {
                                "nullable": true,
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/Certificate"
                                    },
                                    {
                                        "nullable": true
                                    }
                                ]
                            },
                            "caCertificate": {
                                "nullable": true,
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/Certificate"
                                    },
                                    {
                                        "nullable": true
                                    }
                                ]
                            }
                        }
                    }
                ]
            },
            "Metadata": {
                "type": "object",
                "additionalProperties": {
                    "type": "object",
                    "additionalProperties": {
                        "maxLength": 4096,
                        "type": "string"
                    }
                }
            },
            "Originator": {
                "type": "object",
                "properties": {
                    "id": {
                        "description": "The id of the Originator. Can optionally be specified on creation.",
                        "type": "string",
                        "format": "uuid"
                    },
                    "name": {
                        "description": "The name of the Originator.",
                        "type": "string"
                    },
                    "label": {
                        "description": "Optional. The label should be a short string and is used in the frontend application to indicate that an object is related to an Originator.",
                        "type": "string",
                        "nullable": true
                    },
                    "details": {
                        "description": "Optional. Additional details about the Originator.",
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "OriginatorIdAndSyncChildIdExtension": {
                "type": "object",
                "properties": {
                    "$_originatorId": {
                        "description": "Optional. The id of the Originator which has created the object. Not present if the object is not related to an Originator.",
                        "type": "string",
                        "format": "uuid",
                        "readOnly": true
                    },
                    "$_syncChildId": {
                        "description": "Optional. The id of the SyncChild which has created the object. Not present if the object is not related to a SyncChild.",
                        "type": "string",
                        "format": "uuid",
                        "readOnly": true
                    }
                }
            },
            "QualityInfo": {
                "description": "Quality code with extended info.",
                "type": "object",
                "properties": {
                    "status": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/QualityStatus"
                            },
                            {
                                "nullable": false,
                                "description": "Main status of the qualitycode.<br>`Good` green<br>`Uncertain` yellow<br>`Bad` red."
                            }
                        ]
                    },
                    "subStatus": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/QualitySubStatus"
                            },
                            {
                                "nullable": true,
                                "description": "Substatus of the qualitycode if other then Non-specific."
                            }
                        ]
                    },
                    "limit": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/QualityLimit"
                            },
                            {
                                "nullable": true,
                                "description": "Limit info of the qualitycode if other then Ok. Only expected in case of substatus RangeViolation."
                            }
                        ]
                    }
                }
            },
            "QualityLimit": {
                "type": "string",
                "enum": [
                    "High",
                    "Low",
                    "Constant"
                ]
            },
            "QualityStatus": {
                "type": "string",
                "enum": [
                    "Bad",
                    "Uncertain",
                    "Good"
                ]
            },
            "QualitySubStatus": {
                "type": "string",
                "enum": [
                    "ConfigurationError",
                    "NotConnected",
                    "SensorFailure",
                    "LastUsableValue",
                    "NoUsableValue",
                    "OutOfService",
                    "SubstituteValue",
                    "InitialValue",
                    "RangeViolation",
                    "SubNormal",
                    "LocalOverride"
                ]
            },
            "Reference": {
                "required": [
                    "$external"
                ],
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$type": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:[a-zA-Z_][a-zA-Z0-9_-]*)$",
                        "type": "string",
                        "description": "The name of an instance",
                        "example": "myinstance"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$internal": {
                        "$ref": "#/components/schemas/AggregationValue"
                    },
                    "$external": {
                        "$ref": "#/components/schemas/ReferenceAny"
                    }
                },
                "additionalProperties": false
            },
            "ReferenceAny": {
                "oneOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceCdd"
                    },
                    {
                        "$ref": "#/components/schemas/ReferenceEclass"
                    },
                    {
                        "$ref": "#/components/schemas/ReferenceOntology"
                    },
                    {
                        "$ref": "#/components/schemas/ReferenceOpcUa"
                    },
                    {
                        "$ref": "#/components/schemas/ReferenceResource"
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceCdd": {
                "type": "object",
                "allOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceExternal"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "$irdi": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceEclass": {
                "type": "object",
                "allOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceExternal"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "$irdi": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceExternal": {
                "required": [
                    "$type"
                ],
                "type": "object",
                "properties": {
                    "$type": {
                        "type": "string"
                    }
                },
                "discriminator": {
                    "propertyName": "$type",
                    "mapping": {
                        "opcua": "#/components/schemas/ReferenceOpcUa",
                        "eclass": "#/components/schemas/ReferenceEclass",
                        "cdd": "#/components/schemas/ReferenceCdd",
                        "ontology": "#/components/schemas/ReferenceOntology",
                        "resource": "#/components/schemas/ReferenceResource"
                    }
                }
            },
            "ReferenceOntology": {
                "type": "object",
                "allOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceExternal"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "$iri": {
                                "type": "string"
                            },
                            "$address": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceOpcUa": {
                "type": "object",
                "allOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceExternal"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "$nodeid": {
                                "type": "string"
                            },
                            "$namespace": {
                                "type": "string"
                            },
                            "$address": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceResource": {
                "type": "object",
                "allOf": [
                    {
                        "$ref": "#/components/schemas/ReferenceExternal"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "$url": {
                                "type": "string"
                            },
                            "$mime": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "additionalProperties": false
            },
            "ReferenceType": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}$",
                        "type": "string",
                        "description": "The human-readable name of the type",
                        "example": "mynamespace.mytype"
                    },
                    "$base": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    }
                },
                "additionalProperties": false
            },
            "Relation": {
                "required": [
                    "$source",
                    "$target"
                ],
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$type": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:[a-zA-Z_][a-zA-Z0-9_-]*)$",
                        "type": "string",
                        "description": "The name of an instance",
                        "example": "myinstance"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$source": {
                        "$ref": "#/components/schemas/AggregationValue"
                    },
                    "$target": {
                        "$ref": "#/components/schemas/AggregationValue"
                    }
                },
                "additionalProperties": false
            },
            "RelationType": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:(?:[a-zA-Z_][a-zA-Z0-9_-]*){1})(?:\\.[a-zA-Z_][a-zA-Z0-9_-]*){1,}$",
                        "type": "string",
                        "description": "The human-readable name of the type",
                        "example": "mynamespace.mytype"
                    },
                    "$base": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$source": {
                        "$ref": "#/components/schemas/AnchorConstraint"
                    },
                    "$target": {
                        "$ref": "#/components/schemas/AnchorConstraint"
                    },
                    "$parentchild": {
                        "type": "boolean",
                        "description": "Defines whether the relation enforces strict parent-child. Defaults to: false"
                    }
                },
                "additionalProperties": false
            },
            "Relations": {
                "type": "object",
                "properties": {
                    "$incoming": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Relation"
                        },
                        "nullable": true
                    },
                    "$outgoing": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Relation"
                        },
                        "nullable": true
                    }
                },
                "additionalProperties": false,
                "nullable": true
            },
            "RestoreAlarmDataResult": {
                "type": "object",
                "properties": {
                    "alarmChannels": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RestoreChannelResult"
                        },
                        "nullable": true
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    },
                    "maxErrorsReached": {
                        "type": "boolean",
                        "example": true
                    }
                }
            },
            "RestoreChannelResult": {
                "type": "object",
                "properties": {
                    "alarmChannelId": {
                        "type": "string"
                    },
                    "alarmCount": {
                        "type": "integer"
                    },
                    "extendedPropertyCount": {
                        "type": "integer"
                    }
                }
            },
            "RestoreDataResult": {
                "type": "object",
                "properties": {
                    "variables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RestoreResultVariable"
                        },
                        "nullable": true
                    },
                    "maxErrorsReached": {
                        "type": "boolean",
                        "example": true
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "nullable": true
                    }
                }
            },
            "RestoreResultVariable": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "count": {
                        "type": "integer"
                    }
                }
            },
            "Rule": {
                "type": "object",
                "properties": {
                    "formula": {
                        "type": "string",
                        "example": "var1 + var2"
                    },
                    "tags": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Tag"
                        }
                    }
                }
            },
            "SenseyeDataDestinationConfig": {
                "type": "object",
                "properties": {
                    "mqttProtocol": {
                        "type": "string",
                        "example": "ssl",
                        "description": "protocol of senseye mqtt broker"
                    },
                    "mqttHost": {
                        "type": "string",
                        "example": "mqtt.senseye.io",
                        "description": "url of senseye mqtt broker"
                    },
                    "mqttPort": {
                        "type": "number",
                        "example": 8883,
                        "description": "port of senseye mqtt broker"
                    },
                    "mqttUserName": {
                        "type": "string",
                        "description": "senseye mqtt username"
                    },
                    "syncHierarchy": {
                        "type": "boolean",
                        "example": true
                    },
                    "sublevelRoot": {
                        "type": "string",
                        "example": "6322fb7b-9445-4f28-8bce-20fbc5bfc61a",
                        "description": "senseye root sublevel node ID, it is invisible if syncHierarchy is disabled"
                    },
                    "apiHost": {
                        "type": "string",
                        "example": "api.senseye.io",
                        "description": "url of senseye API host, it is invisible if syncHierarchy is disabled."
                    },
                    "apiUserName": {
                        "type": "string",
                        "description": "senseye API username, it is invisible if syncHierarchy is disabled."
                    },
                    "timeoutInSec": {
                        "type": "number",
                        "example": 1000
                    },
                    "publishIntervalInSec": {
                        "type": "number",
                        "example": 10
                    },
                    "qos": {
                        "type": "number",
                        "example": 1
                    }
                }
            },
            "SenseyeDataDestinationConfigCreate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/SenseyeDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "mqttPassword": {
                                "type": "string",
                                "description": "senseye mqtt password"
                            },
                            "apiPassword": {
                                "type": "string",
                                "nullable": true,
                                "description": "senseye API password, it is invisible if syncHierarchy is disabled."
                            }
                        }
                    }
                ]
            },
            "SenseyeDataDestinationConfigUpdate": {
                "allOf": [
                    {
                        "$ref": "#/components/schemas/SenseyeDataDestinationConfig"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "mqttPassword": {
                                "type": "string",
                                "nullable": true,
                                "description": "senseye mqtt password"
                            },
                            "apiPassword": {
                                "type": "string",
                                "nullable": true,
                                "description": "senseye API password, it is invisible if syncHierarchy is disabled."
                            }
                        }
                    }
                ]
            },
            "Size": {
                "type": "object",
                "properties": {
                    "size": {
                        "type": "integer",
                        "example": 238
                    },
                    "formattedSize": {
                        "type": "string",
                        "example": "238.00 Byte"
                    }
                }
            },
            "SortOrder": {
                "type": "string",
                "enum": [
                    "Ascending",
                    "Descending"
                ]
            },
            "SourceType": {
                "type": "string",
                "enum": [
                    "asset",
                    "aspect",
                    "variable"
                ]
            },
            "State": {
                "enum": [
                    "development",
                    "unstable",
                    "stable"
                ],
                "type": "string",
                "description": "An enumeration to select a state",
                "default": "stable"
            },
            "StringArrayValue": {
                "type": "array",
                "items": {
                    "type": "string"
                },
                "additionalProperties": false
            },
            "StringConstraint": {
                "type": "object",
                "properties": {
                    "$pattern": {
                        "type": "string"
                    }
                },
                "additionalProperties": false
            },
            "StringValue": {
                "type": "string",
                "additionalProperties": false,
                "description": "variable-length character string, UTF-8 encoding of ISO 10646 (RFC-3629)"
            },
            "SuccessResponse": {
                "type": "object",
                "properties": {
                    "success": {
                        "type": "boolean",
                        "example": true
                    },
                    "message": {
                        "type": "string",
                        "nullable": true
                    }
                }
            },
            "SyncBroker": {
                "type": "object",
                "properties": {
                    "mqttHost": {
                        "type": "string",
                        "example": "mqtt.broker.io",
                        "description": "url of the mqtt broker"
                    },
                    "mqttPort": {
                        "type": "number",
                        "example": 8883,
                        "description": "port of mqtt broker"
                    },
                    "useCredentials": {
                        "type": "boolean",
                        "example": true
                    },
                    "username": {
                        "type": "string",
                        "example": "edge"
                    },
                    "password": {
                        "type": "string",
                        "nullable": true,
                        "example": "edge"
                    },
                    "useCertificates": {
                        "type": "boolean",
                        "example": false
                    },
                    "clientCertificate": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true,
                                "description": "The client certificate for TLS authentication."
                            }
                        ]
                    },
                    "clientKey": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true,
                                "description": "The private key corresponding to the client certificate."
                            }
                        ]
                    },
                    "caCertificate": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Certificate"
                            },
                            {
                                "nullable": true,
                                "description": "The CA certificate."
                            }
                        ]
                    }
                }
            },
            "SyncChannel": {
                "type": "object",
                "properties": {
                    "channelId": {
                        "type": "string",
                        "readOnly": true,
                        "example": "13d99c75-3f78-4336-b3ea-823384296835"
                    },
                    "channelName": {
                        "type": "string",
                        "example": "Channel_1"
                    },
                    "active": {
                        "type": "boolean",
                        "description": "Should this synchronization channel be enabled.",
                        "example": true
                    },
                    "config": {
                        "$ref": "#/components/schemas/SyncBroker"
                    },
                    "state": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SyncChannelState"
                            },
                            {
                                "nullable": true,
                                "readOnly": true
                            }
                        ]
                    }
                }
            },
            "SyncChannelState": {
                "type": "object",
                "properties": {
                    "connected": {
                        "type": "boolean",
                        "description": "Indicates if there is a connection established with the broker."
                    },
                    "error": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "nullable": true,
                                "description": "Error describing the reason of beeing not registered at the broker.<br>error != null and connected = false: Error (red)<br>No connection to the broker.<br>error != null and connected = true: Warning (yellow)<br>Connected to the broker but not already registered or rejected.<br>error = null and connected = true: OK (green)<br>Connected and registered at broker."
                            }
                        ]
                    },
                    "connectionDetails": {
                        "$ref": "#/components/schemas/SyncLibStatus"
                    }
                }
            },
            "SyncChannelsResponse": {
                "type": "array",
                "items": {
                    "$ref": "#/components/schemas/SyncChannel"
                }
            },
            "SyncChild": {
                "type": "object",
                "properties": {
                    "childId": {
                        "type": "string",
                        "readOnly": true,
                        "example": "bfb77c2b-ee44-4b98-9a22-7b8be014a97a"
                    },
                    "childName": {
                        "type": "string",
                        "example": "Child_1",
                        "description": "The SystemName of the IIH instance which should synchronize to this child."
                    },
                    "channelId": {
                        "type": "string",
                        "example": "13d99c75-3f78-4336-b3ea-823384296835",
                        "description": "The id of the synchronization channel the child belongs to."
                    },
                    "location": {
                        "type": "string",
                        "example": "af67e288-12e2-4098-b0ef-e50485c9e211",
                        "description": "The asset where the child systems model should be synchronized to."
                    },
                    "active": {
                        "type": "boolean",
                        "description": "Should this synchronization channel be enabled.",
                        "example": true
                    },
                    "registrationDetails": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SyncChildRegistrationDetails"
                            },
                            {
                                "description": "Details about the registered child system.",
                                "nullable": true,
                                "readOnly": true
                            }
                        ]
                    },
                    "state": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/SyncChildState"
                            },
                            {
                                "nullable": true,
                                "readOnly": true
                            }
                        ]
                    }
                }
            },
            "SyncChildRegistrationDetails": {
                "type": "object",
                "properties": {
                    "dataDestinationId": {
                        "type": "string",
                        "description": "The id of the registered DataDestination at the child system."
                    },
                    "dataDestinationName": {
                        "type": "string",
                        "description": "The name of the registered DataDestination at the child system."
                    },
                    "dataSynchronization": {
                        "type": "boolean",
                        "description": "Indicates if timeseries data and alarm data should be synchronized."
                    },
                    "dataSynchronizationCycle": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/TimeRange"
                            },
                            {
                                "description": "The cycle in which data synchronization should be performed."
                            }
                        ]
                    },
                    "opcUaSynchronization": {
                        "type": "boolean",
                        "description": "Indicates if the OPC UA information model should be synchronized."
                    }
                }
            },
            "SyncChildResponse": {
                "type": "array",
                "items": {
                    "$ref": "#/components/schemas/SyncChild"
                }
            },
            "SyncChildState": {
                "type": "object",
                "properties": {
                    "connected": {
                        "type": "boolean",
                        "description": "Indicates if there is a connection established with the child system."
                    },
                    "error": {
                        "allOf": [
                            {
                                "$ref": "#/components/schemas/Exception"
                            },
                            {
                                "nullable": true,
                                "description": "Error describing the reason of beeing not registered.<br>error != null and connected = false: Error (red)<br>No connection to the child system.<br>error != null and connected = true: Warning (yellow)<br>Connected to the child system but child system has not (already) registered.<br>error = null and connected = true: OK (green)<br>Connected to the child system and child system has registered. Synchronization is working."
                            }
                        ]
                    },
                    "connectionDetails": {
                        "$ref": "#/components/schemas/SyncLibStatus"
                    }
                }
            },
            "SyncLibBrokerStatus": {
                "type": "string",
                "example": "Registered",
                "enum": [
                    "NotConnected",
                    "Connected",
                    "Registered",
                    "Rejected"
                ],
                "description": "NotConnected: Not connected to broker. Red.<br>Connected: Connected to broker but registration is not finished yet. Yellow.<br>Registered: Connected to broker and registration succeeded. Green.<br>Rejected: Connected to broker, but registration rejected. Other IED could already be registered using the same SystemName. Red."
            },
            "SyncLibClientStatus": {
                "type": "string",
                "example": "Online",
                "enum": [
                    "Unknown",
                    "Offline",
                    "Online"
                ],
                "description": "Unknown: The remote system is not known at the broker.<br>Offline: The remote system is known at the broker but currently offline.<br>Online: The remote system is online."
            },
            "SyncLibStatus": {
                "type": "object",
                "properties": {
                    "brokerStatus": {
                        "$ref": "#/components/schemas/SyncLibBrokerStatus"
                    },
                    "clientStatus": {
                        "$ref": "#/components/schemas/SyncLibClientStatus"
                    }
                }
            },
            "Tag": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string",
                        "example": "TagName"
                    },
                    "adapterId": {
                        "type": "string",
                        "example": "systeminfo"
                    },
                    "connectionName": {
                        "type": "string",
                        "example": "PLC"
                    },
                    "tagName": {
                        "type": "string",
                        "example": "Tag"
                    },
                    "dataType": {
                        "$ref": "#/components/schemas/DataType"
                    }
                }
            },
            "TimeRange": {
                "type": "object",
                "properties": {
                    "base": {
                        "$ref": "#/components/schemas/TimeRangeBase"
                    },
                    "factor": {
                        "type": "number",
                        "example": 4
                    }
                }
            },
            "TimeRangeBase": {
                "type": "string",
                "example": "hour",
                "enum": [
                    "acyclic",
                    "millisecond",
                    "second",
                    "minute",
                    "hour",
                    "day",
                    "week",
                    "month",
                    "quarter",
                    "year"
                ]
            },
            "TotalNumber": {
                "type": "object",
                "properties": {
                    "totalNumber": {
                        "type": "integer",
                        "example": 10000
                    }
                }
            },
            "TotalNumberMappedToSource": {
                "type": "object",
                "properties": {
                    "totalNumberMappedToSource": {
                        "type": "integer",
                        "example": 10000
                    }
                }
            },
            "TreeItem": {
                "description": "",
                "type": "object",
                "properties": {
                    "$anchor": {
                        "description": "The anchor of the TreeItem object.",
                        "type": "string",
                        "format": "uuid"
                    },
                    "$name": {
                        "type": "string"
                    },
                    "$displayname": {
                        "nullable": true,
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        },
                        "description": "Dictionary, where the key is country code (e.g. \"de-DE\") and the value a human-readable name for the given locality."
                    },
                    "$_attribute": {
                        "allOf": [
                            {
                                "description": "The Attribute used to link this TreeItem with its parent. Not present if this link is realized via a Relation.",
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/TreeItemAttribute"
                            }
                        ]
                    },
                    "$_entity": {
                        "allOf": [
                            {
                                "description": "The Entity linked to this TreeItem. Not present if the TreeItem represents an array Attribute.",
                                "nullable": true
                            },
                            {
                                "$ref": "#/components/schemas/TreeItemEntity"
                            }
                        ]
                    },
                    "$_hasChildren": {
                        "description": "This property is only included if the query parameter _includeHasChildren is true.<br>This property is not  included in the GlobalSearch mode (_viewPoint=null). GlobalSearch mode is View independent.",
                        "type": "boolean",
                        "nullable": true
                    },
                    "$_hasAttributes": {
                        "description": "This property is only included if the query parameter _includeHasAttributes is true.<br>This property is not included in the GlobalSearch mode (_viewPoint=null). GlobalSearch mode is View independent.",
                        "type": "boolean",
                        "nullable": true
                    }
                }
            },
            "TreeItemAttribute": {
                "description": "",
                "type": "object",
                "properties": {
                    "$anchor": {
                        "description": "The anchor of the Attribute object.",
                        "type": "string",
                        "format": "uuid"
                    },
                    "$datatype": {
                        "description": "The datatype of the Attribute object.",
                        "type": "string",
                        "enum": [
                            "composition",
                            "aggregation"
                        ]
                    },
                    "$array": {
                        "description": "The array flag of the Attribute.",
                        "type": "boolean"
                    },
                    "$_index": {
                        "description": "Only used if a single element of an attribute array is addressed.",
                        "type": "number",
                        "format": "int32",
                        "nullable": true
                    }
                }
            },
            "TreeItemEntity": {
                "description": "",
                "type": "object",
                "properties": {
                    "$anchor": {
                        "description": "The anchor of the Entity object.",
                        "type": "string",
                        "format": "uuid"
                    },
                    "$concept": {
                        "description": "The concept of the Entity object.",
                        "type": "string",
                        "enum": [
                            "asset",
                            "aspect"
                        ]
                    }
                }
            },
            "TreeItemPath": {
                "description": "",
                "type": "array",
                "items": {
                    "$ref": "#/components/schemas/TreeItem"
                }
            },
            "TrendAggregation": {
                "type": "string",
                "enum": [
                    "None",
                    "Count",
                    "Average",
                    "Min",
                    "Max",
                    "Sum",
                    "First",
                    "Last",
                    "StandardDeviation",
                    "Variance",
                    "Counter",
                    "Timer",
                    "PowerToEnergy",
                    "EnergyToPower",
                    "FlowToAmount",
                    "AmountToFlow",
                    "TimeWeightedAverage",
                    "Gantt",
                    "MinMaxTrend",
                    "Duration",
                    "Occurrence",
                    "MinWithTimestamp",
                    "MaxWithTimestamp",
                    "FirstWithTimestamp",
                    "LastWithTimestamp",
                    "StepDuration",
                    "ValueChanges",
                    "GanttView"
                ]
            },
            "Value": {
                "type": "object",
                "properties": {
                    "timestamp": {
                        "type": "string",
                        "description": "timestamp in ISO8601 string",
                        "format": "date-time",
                        "example": "2022-08-16T12:00:00"
                    },
                    "value": {
                        "oneOf": [
                            {
                                "type": "number",
                                "example": 2.5
                            },
                            {
                                "type": "integer",
                                "example": 2
                            },
                            {
                                "type": "boolean",
                                "example": true
                            },
                            {
                                "type": "string",
                                "example": "2"
                            }
                        ],
                        "description": "Is dependent of datatype of the variable definition."
                    },
                    "qualitycode": {
                        "type": "integer",
                        "example": 192,
                        "description": "any unsigned 16-bit integer value. Optional for write calls, 192 will be used as a default.<br>Values will be interpreted according to set bits (Mask 0xC0):<br>0x00 => Quality Bad<br>0x40 => Quality Uncertain<br>0x80 => Quality Good non cascade<br>0xC0 => Quality Good (cascade)"
                    }
                }
            },
            "Variable": {
                "type": "object",
                "properties": {
                    "variableId": {
                        "type": "string",
                        "readOnly": true,
                        "example": "53abb2fdc0da4c24b84b735930c7b9c8"
                    },
                    "variableName": {
                        "type": "string",
                        "example": "Variable1"
                    },
                    "dataType": {
                        "$ref": "#/components/schemas/DataType"
                    },
                    "blobType": {
                        "type": "string",
                        "example": "image/png",
                        "nullable": true,
                        "description": "Intended to describe the content of a variable of type 'Blob'."
                    },
                    "assetId": {
                        "type": "string",
                        "example": "0"
                    },
                    "aspectId": {
                        "type": "string",
                        "nullable": true,
                        "example": "ff857cc22e454a2a88bc36076bc69bdf"
                    },
                    "unit": {
                        "type": "string",
                        "nullable": true,
                        "example": ""
                    },
                    "adapterId": {
                        "type": "string",
                        "nullable": true,
                        "example": "profinet",
                        "deprecated": true
                    },
                    "topic": {
                        "type": "string",
                        "nullable": true,
                        "example": "PLC1::Double1::4::7",
                        "deprecated": true
                    },
                    "sourceType": {
                        "$ref": "#/components/schemas/VariableSourceType"
                    },
                    "tag": {
                        "$ref": "#/components/schemas/Tag"
                    },
                    "rule": {
                        "$ref": "#/components/schemas/Rule"
                    },
                    "aspectName": {
                        "type": "string",
                        "readOnly": true,
                        "example": "Aspect"
                    },
                    "connected": {
                        "type": "boolean",
                        "readOnly": true,
                        "example": false
                    },
                    "store": {
                        "type": "boolean",
                        "nullable": true,
                        "default": true,
                        "example": true,
                        "description": "This parameter describes if the variable should be subscribed to the adapter to get timeseries data."
                    }
                }
            },
            "VariableBulkResponse": {
                "type": "object",
                "properties": {
                    "results": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Variable"
                        }
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Exception"
                        }
                    }
                }
            },
            "VariableConfiguration": {
                "type": "object",
                "properties": {
                    "variableId": {
                        "type": "string",
                        "example": "3a801b60917e4ca291ff027ba263697e",
                        "nullable": true
                    },
                    "unit": {
                        "type": "string",
                        "example": "",
                        "description": "optional, if not set an empty string will be used."
                    },
                    "isAggregated": {
                        "type": "boolean",
                        "example": false
                    },
                    "acquisitionCategory": {
                        "$ref": "#/components/schemas/AcquisitionCategory"
                    },
                    "acquisitionCycle": {
                        "$ref": "#/components/schemas/TimeRange"
                    },
                    "counterConfigurations": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "validFrom": {
                                    "type": "string",
                                    "example": "2021-12-01T00:00:00Z",
                                    "format": "date-time"
                                },
                                "counterConstant": {
                                    "type": "integer",
                                    "example": 1
                                },
                                "counterType": {
                                    "$ref": "#/components/schemas/CounterType"
                                },
                                "triggeredReset": {
                                    "type": "boolean",
                                    "example": false
                                },
                                "rangeStart": {
                                    "type": "number",
                                    "nullable": true,
                                    "example": null
                                },
                                "rangeEnd": {
                                    "type": "number",
                                    "example": null
                                },
                                "valueAtInstallation": {
                                    "type": "number",
                                    "nullable": true,
                                    "example": null
                                },
                                "valueAtReplacement": {
                                    "type": "number",
                                    "example": null
                                }
                            }
                        },
                        "example": []
                    }
                }
            },
            "VariableSourceType": {
                "type": "string",
                "example": "Tag",
                "enum": [
                    "None",
                    "Tag",
                    "Rule"
                ]
            },
            "VariablesExecuteRuleResponse": {
                "type": "object",
                "properties": {
                    "success": {
                        "type": "boolean"
                    },
                    "value": {
                        "type": "number"
                    },
                    "error": {
                        "$ref": "#/components/schemas/Exception"
                    }
                }
            },
            "VariablesResponse": {
                "type": "object",
                "properties": {
                    "variables": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Variable"
                        }
                    }
                }
            },
            "VariablesValidateRuleResponse": {
                "type": "object",
                "properties": {
                    "success": {
                        "type": "boolean"
                    },
                    "error": {
                        "$ref": "#/components/schemas/Exception"
                    }
                }
            },
            "VersionInfo": {
                "type": "object",
                "properties": {
                    "version": {
                        "type": "string",
                        "example": "1.5.0-beta.0.16200536",
                        "description": "The version created from git tags, release.sh script in pipeline."
                    },
                    "productVersion": {
                        "type": "string",
                        "example": "1.5.0-beta.0.16200536"
                    },
                    "gitVersion": {
                        "type": "string",
                        "example": "v0.0.7-48-ga54b7b1",
                        "description": "optional, send if this differs from version (mainly non release branch builds)"
                    },
                    "build": {
                        "type": "string",
                        "example": "16200536",
                        "description": "pipeline id, locally just \"no-pipeline\""
                    }
                }
            },
            "View": {
                "type": "object",
                "properties": {
                    "$anchor": {
                        "type": "string",
                        "description": "Defines the unique identifier",
                        "format": "uuid"
                    },
                    "$state": {
                        "$ref": "#/components/schemas/State"
                    },
                    "$displayname": {
                        "$ref": "#/components/schemas/DictionaryStringValue"
                    },
                    "$metadata": {
                        "$ref": "#/components/schemas/Metadata"
                    },
                    "$references": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Reference"
                        },
                        "description": "Contains references to external concepts or models"
                    },
                    "$relations": {
                        "$ref": "#/components/schemas/Relations"
                    },
                    "$abstraction": {
                        "$ref": "#/components/schemas/Abstraction"
                    },
                    "$type": {
                        "$ref": "#/components/schemas/AnchorTypePointer"
                    },
                    "$name": {
                        "maxLength": 255,
                        "pattern": "^(?=.{1,255}$)(?:[a-zA-Z_][a-zA-Z0-9_-]*)$",
                        "type": "string",
                        "description": "The name of an instance",
                        "example": "myinstance"
                    },
                    "$concept": {
                        "$ref": "#/components/schemas/Concept"
                    },
                    "$template": {
                        "type": "string",
                        "description": "Points to the template the instance is based on.",
                        "format": "uuid"
                    },
                    "title": {
                        "$ref": "#/components/schemas/StringValue"
                    },
                    "entrypoint": {
                        "$ref": "#/components/schemas/AggregationValue"
                    },
                    "relations": {
                        "minItems": 1,
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/StringValue"
                        }
                    },
                    "namespace": {
                        "$ref": "#/components/schemas/AggregationValue"
                    }
                },
                "additionalProperties": false
            }
        },
        "examples": {
            "AdapterNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Adapter with the id XXX was not found.",
                    "errorParams": {
                        "id": "XXX",
                        "what": "Adapter"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/DataService/Adapters/{id}"
                    }
                }
            },
            "AdapterTypeMqttExample": {
                "value": {
                    "id": "profinet",
                    "name": "Profinet IO Connector",
                    "type": "simaticadapter",
                    "locked": true,
                    "active": false,
                    "isDefault": false,
                    "canBrowse": true,
                    "connected": false,
                    "config": {
                        "brokerURL": "tcp://ie-databus:1883",
                        "username": "",
                        "browseURL": "ie/m/j/simatic/v1/pnhs1/dp"
                    }
                }
            },
            "AdapterTypeOpenPipeExample": {
                "value": {
                    "id": "hmiruntime",
                    "name": "HmiRuntime",
                    "type": "hmiruntime",
                    "locked": true,
                    "active": false,
                    "isDefault": false,
                    "canBrowse": false,
                    "connected": false,
                    "config": {
                        "openPipePath": "/tmp/siemens/automation/HmiRuntime"
                    }
                }
            },
            "AdapterTypeGrpcExample": {
                "value": {
                    "id": "s7plus",
                    "name": "SIMATIC S7 Plus Connector",
                    "type": "connectivitysuite",
                    "locked": true,
                    "active": false,
                    "isDefault": false,
                    "canBrowse": true,
                    "connected": false,
                    "config": {
                        "appInstanceId": "css7pdriver1",
                        "defaultCycle": {
                            "base": "second",
                            "factor": 3
                        }
                    }
                }
            },
            "AdapterTypeSystemInfoExample": {
                "value": {
                    "id": "profinet",
                    "name": "Profinet IO Connector",
                    "type": "connectivitysuite",
                    "locked": true,
                    "active": false,
                    "isDefault": false,
                    "canBrowse": true,
                    "connected": false,
                    "config": {}
                }
            },
            "AggregationExample": {
                "value": {
                    "id": "8b7e7009e4fa49158d7f287b64be504c",
                    "sourceId": "39e32d19d95846f8b6a1b520893707fc",
                    "sourceDataType": "Double",
                    "aggregation": "Sum",
                    "cycle": {
                        "base": "hour",
                        "factor": 4
                    },
                    "provideAsVariable": true,
                    "publishMqtt": false
                }
            },
            "AggregationNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Aggregation with the id 87d2ca873ed64220a228010b131353c0 was not found.",
                    "errorParams": {
                        "id": "87d2ca873ed64220a228010b131353c0",
                        "what": "Aggregation"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/Aggregations/{id}"
                    }
                }
            },
            "AspectWithoutTypeExample": {
                "value": {
                    "aspectId": "53abb2fdc0da4c24b84b735930c7b9c8",
                    "aspectName": "AspectName",
                    "assetId": "0",
                    "aspectTypeId": null
                }
            },
            "AspectWithTypeExample": {
                "value": {
                    "aspectId": "53abb2fdc0da4c24b84b735930c7b9c8",
                    "aspectName": "AspectName",
                    "assetId": "0",
                    "aspectTypeId": "99e92370657c4d689a9a3c76964ab65c"
                }
            },
            "AspectNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Aspect with the id 099fdb1ca4fd4829a7afdeff7091ee02 was not found.",
                    "errorParams": {
                        "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                        "what": "Aspect"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/Aspects/{id}"
                    }
                }
            },
            "AspectTypeExample": {
                "value": {
                    "id": "e1499ca014b248fd956e65ec7cb24f2a",
                    "name": "Turbine",
                    "variables": [
                        {
                            "id": "4ae41b7faaf54d64a6d332f8dccb6a6c",
                            "name": "Speed",
                            "dataType": "Double",
                            "unit": "Hz",
                            "aspectTypeId": "e1499ca014b248fd956e65ec7cb24f2a"
                        }
                    ]
                }
            },
            "AspectTypeNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The AspectType with the id e1499ca014b248fd956e65ec7cb24f2a was not found.",
                    "errorParams": {
                        "id": "e1499ca014b248fd956e65ec7cb24f2a",
                        "what": "AspectType"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/AspectTypes/{id}"
                    }
                }
            },
            "AspectBulkResponseExample": {
                "value": {
                    "results": [
                        {
                            "aspectId": "53abb2fdc0da4c24b84b735930c7b9c8",
                            "aspectName": "AspectName1",
                            "assetId": "0",
                            "aspectTypeId": null
                        }
                    ],
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 404,
                            "stateText": "NotFound",
                            "errorCode": 4,
                            "errorKey": "NotFound",
                            "message": "The Aspect with the id 099fdb1ca4fd4829a7afdeff7091ee02 was not found.",
                            "errorParams": {
                                "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                                "what": "Aspect"
                            },
                            "debugInfo": {
                                "method": "XXX",
                                "route": "/DataService/Aspects/{id}",
                                "objectIndex": "1"
                            }
                        }
                    ]
                }
            },
            "AssetExample": {
                "value": {
                    "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                    "name": "TopAsset",
                    "parentId": "0",
                    "sortOrder": 0,
                    "hasChildren": false
                }
            },
            "AssetRootWithChildrenExample": {
                "value": {
                    "assetId": "0",
                    "name": "edge",
                    "parentId": "",
                    "sortOrder": 0,
                    "hasChildren": true,
                    "children": [
                        {
                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                            "name": "TopAsset",
                            "parentId": "0",
                            "sortOrder": 0,
                            "hasChildren": false
                        }
                    ]
                }
            },
            "AssetNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Asset with the id 123 was not found.",
                    "errorParams": {
                        "id": "123",
                        "what": "Asset"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/AssetService/Assets/{id}"
                    }
                }
            },
            "AssetBulkResponseExample": {
                "value": {
                    "results": [
                        {
                            "assetId": "d0df2a40afd64671bda7b53ce8f08ef8",
                            "name": "AssetName1",
                            "parentId": "0",
                            "sortOrder": 0,
                            "hasChildren": false
                        }
                    ],
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 404,
                            "stateText": "NotFound",
                            "errorCode": 4,
                            "errorKey": "NotFound",
                            "message": "The Asset with the id 099fdb1ca4fd4829a7afdeff7091ee02 was not found.",
                            "errorParams": {
                                "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                                "what": "Asset"
                            },
                            "debugInfo": {
                                "method": "XXX",
                                "route": "/AssetService/Assets/{id}",
                                "objectIndex": "1"
                            }
                        }
                    ]
                }
            },
            "CalculateJobCollectionResultExample": {
                "value": {
                    "jobCollectionId": "cb8c8cf6dac6428ea31ee1d6d96c1bce",
                    "result": [
                        {
                            "jobCollectionId": "cb8c8cf6dac6428ea31ee1d6d96c1bce",
                            "jobIndex": 0,
                            "clientHandle": "string",
                            "state": "Created",
                            "progress": {
                                "doneInMs": 0,
                                "maxInMs": 0,
                                "doneInPercent": 0
                            },
                            "params": {
                                "from": 133051932000000000,
                                "to": 133052004000000000,
                                "mode": "Single",
                                "calculationTimeRange": 0
                            },
                            "dataSource": {
                                "id": "3a801b60917e4ca291ff027ba263697e",
                                "type": "Variable",
                                "aggregation": "None"
                            },
                            "values": [
                                {
                                    "timestamp": "2022-08-17T12:25:04.381Z",
                                    "value": 0,
                                    "qualitycode": 192
                                }
                            ]
                        }
                    ]
                }
            },
            "DataIgnoreErrorsResponseExample": {
                "value": {
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[1].value is invalid. Reason: Failed to convert the String value \"2000-01-01T00:00:00+00:00\" into a Date value: Invalid format.",
                            "errorParams": {
                                "reason": "Failed to convert the String value \"2000-01-01T00:00:00+00:00\" into a Date value: Invalid format.",
                                "what": "body[1].value"
                            }
                        },
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[2].value is invalid. Reason: Failed to convert the Int32 value 3 into a Date value: Not supported.",
                            "errorParams": {
                                "reason": "Failed to convert the Int32 value 3 into a Date value: Not supported.",
                                "what": "body[2].value"
                            }
                        },
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[3].value is invalid. Reason: Failed to convert the Int32 value 4 into a Date value: Not supported.",
                            "errorParams": {
                                "reason": "Failed to convert the Int32 value 4 into a Date value: Not supported.",
                                "what": "body[3].value"
                            }
                        }
                    ],
                    "success": true
                }
            },
            "DataBulkIgnoreErrorsResponseExample": {
                "value": {
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 404,
                            "stateText": "NotFound",
                            "errorCode": 4,
                            "errorKey": "NotFound",
                            "message": "The Variable with the id 9ab07fea-8e82-4439-ab2c-536c1c93bde8 was not found.",
                            "errorParams": {
                                "id": "9ab07fea-8e82-4439-ab2c-536c1c93bde8",
                                "what": "Variable"
                            }
                        },
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[0].values[1].value is invalid. Reason: Failed to convert the String value \"2000-01-01T00:00:00+00:00\" into a Date value: Invalid format.",
                            "errorParams": {
                                "reason": "Failed to convert the String value \"2000-01-01T00:00:00+00:00\" into a Date value: Invalid format.",
                                "what": "body[0].values[1].value"
                            }
                        },
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[0].values[2].value is invalid. Reason: Failed to convert the Int32 value 3 into a Date value: Not supported.",
                            "errorParams": {
                                "reason": "Failed to convert the Int32 value 3 into a Date value: Not supported.",
                                "what": "body[0].values[2].value"
                            }
                        },
                        {
                            "service": "IIH Essentials",
                            "state": 400,
                            "stateText": "BadRequest",
                            "errorCode": 3,
                            "errorKey": "InvalidParameter",
                            "message": "Parameter body[0].values[3].value is invalid. Reason: Failed to convert the Int32 value 4 into a Date value: Not supported.",
                            "errorParams": {
                                "reason": "Failed to convert the Int32 value 4 into a Date value: Not supported.",
                                "what": "body[0].values[3].value"
                            }
                        }
                    ],
                    "success": true
                }
            },
            "DataDestinationNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The data destination with the id XXX was not found.",
                    "errorParams": {
                        "id": "XXX",
                        "what": "data destination"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/DataService/DataDestination/{id}"
                    }
                }
            },
            "DataDestinationIIHSyncExample": {
                "value": {
                    "id": "cc612e8aea644507974bba5ba3b0087e",
                    "name": "ChildtoParent",
                    "type": "iih",
                    "active": false,
                    "config": {
                        "parentName": "ParentSystem",
                        "opcUaSynchronization": true,
                        "dataSynchronization": true,
                        "dataSynchronizationCycle": {
                            "base": "second",
                            "factor": 10
                        },
                        "mqttHost": "143.39.221.176",
                        "mqttPort": 9883,
                        "useCredentials": true,
                        "username": "edge",
                        "useCertificates": false,
                        "clientCertificate": {
                            "fileName": "",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "",
                            "content": ""
                        },
                        "caCertificate": {
                            "fileName": "",
                            "content": ""
                        }
                    },
                    "connected": false
                }
            },
            "DataDestinationIIHSyncRequestExample": {
                "value": {
                    "name": "ChildtoParent",
                    "type": "iih",
                    "active": false,
                    "config": {
                        "parentName": "ParentSystem",
                        "opcUaSynchronization": true,
                        "dataSynchronization": true,
                        "dataSynchronizationCycle": {
                            "base": "second",
                            "factor": 10
                        },
                        "mqttHost": "143.39.221.176",
                        "mqttPort": 9883,
                        "useCredentials": true,
                        "password": "ToBeUsedPassword",
                        "username": "edge",
                        "useCertificates": false,
                        "clientCertificate": {
                            "fileName": "",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "",
                            "content": ""
                        },
                        "caCertificate": {
                            "fileName": "",
                            "content": ""
                        }
                    },
                    "connected": false
                }
            },
            "DataDestinationGenericMQTTNoAuthAdvancedSettingsExample": {
                "value": {
                    "id": "asdasa5873ac45c3914ddfbb11c4c43e",
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": true,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "none",
                        "advancedSettings": true,
                        "retainedFlag": true,
                        "cleanSession": true,
                        "keepAlive": 60,
                        "connectionTimeout": 15,
                        "birthMessage": true,
                        "birthMessageTopic": "birthMessage/topic",
                        "birthMessageContent": "birthMessageContent",
                        "lastWill": true,
                        "lastWillTopic": "lastWill/topic",
                        "lastWillMessage": "lastWillMessage"
                    }
                }
            },
            "DataDestinationGenericMQTTNoAuthAdvancedSettingsRequestExample": {
                "value": {
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": false,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "none",
                        "advancedSettings": true,
                        "retainedFlag": true,
                        "cleanSession": true,
                        "keepAlive": 60,
                        "connectionTimeout": 15,
                        "birthMessage": true,
                        "birthMessageTopic": "birthMessage/topic",
                        "birthMessageContent": "birthMessageContent",
                        "lastWill": true,
                        "lastWillTopic": "lastWill/topic",
                        "lastWillMessage": "lastWillMessage"
                    }
                }
            },
            "DataDestinationGenericMQTTNoAuthNoAdvancedSettingsExample": {
                "value": {
                    "id": "asdasa5873ac45c3914ddfbb11c4c43e",
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": true,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "none",
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTNoAuthNoAdvancedSettingsRequestExample": {
                "value": {
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": false,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "none",
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsExample": {
                "value": {
                    "id": "asdasa5873ac45c3914ddfbb11c4c43e",
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": true,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "user_pw_cert",
                        "mqttUsername": "sampleusername",
                        "mqttPassword": "samplepassword",
                        "clientCertificate": {
                            "fileName": "ClientCertificate.pem",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "ClientKey.key",
                            "content": ""
                        },
                        "privateKeyPassword": "sampleprivatekeypassword",
                        "caCertificateMQTT": {
                            "fileName": "CACertificate.pem",
                            "content": ""
                        },
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTUserPWCertNoAdvancedSettingsRequestExample": {
                "value": {
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": false,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "user_pw_cert",
                        "mqttUsername": "sampleusername",
                        "mqttPassword": "samplepassword",
                        "clientCertificate": {
                            "fileName": "ClientCertificate.pem",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "ClientKey.key",
                            "content": ""
                        },
                        "privateKeyPassword": "sampleprivatekeypassword",
                        "caCertificateMQTT": {
                            "fileName": "CACertificate.pem",
                            "content": ""
                        },
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTCertNoAdvancedSettingsExample": {
                "value": {
                    "id": "asdasa5873ac45c3914ddfbb11c4c43e",
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": true,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "cert",
                        "clientCertificate": {
                            "fileName": "ClientCertificate.pem",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "ClientKey.key",
                            "content": ""
                        },
                        "privateKeyPassword": "sampleprivatekeypassword",
                        "caCertificateMQTT": {
                            "fileName": "CACertificate.pem",
                            "content": ""
                        },
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTCertNoAdvancedSettingsRequestExample": {
                "value": {
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": false,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "cert",
                        "clientCertificate": {
                            "fileName": "ClientCertificate.pem",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "ClientKey.key",
                            "content": ""
                        },
                        "privateKeyPassword": "sampleprivatekeypassword",
                        "caCertificateMQTT": {
                            "fileName": "CACertificate.pem",
                            "content": ""
                        },
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTUserPWNoAdvancedSettingsExample": {
                "value": {
                    "id": "asdasa5873ac45c3914ddfbb11c4c43e",
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": true,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "user_pw",
                        "mqttUsername": "sampleusername",
                        "mqttPassword": "samplepassword",
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationGenericMQTTUserPWNoAdvancedSettingsRequestExample": {
                "value": {
                    "name": "SampleBroker",
                    "type": "genericmqtt",
                    "active": false,
                    "config": {
                        "mqttHost": "mqtt.broker.io",
                        "mqttProtocol": "tcp",
                        "mqttPort": 8883,
                        "mqttPath": "",
                        "mqttClientId": "sampleClientId",
                        "bulk": true,
                        "publishIntervalInSec": 10,
                        "qos": 1,
                        "mqttMaxPackageSend": "100",
                        "mqttMaxPackageSize": "256",
                        "configFile": {
                            "fileName": "MQTT_Config.json",
                            "content": {
                                "topic": "factory_1/motors/$path/$attributeName",
                                "payload": {
                                    "header": {
                                        "Topic": "$topic",
                                        "Name": "$attributeName",
                                        "Hierarchy": "$path",
                                        "IED_Model": "IED427Factory1"
                                    },
                                    "datapoints": [
                                        {
                                            "Measurement": "$value",
                                            "Time": "$timestamp:LDAP-Filetime",
                                            "Quality_Code": "$qualityCode"
                                        }
                                    ]
                                }
                            }
                        },
                        "authSelector": "user_pw",
                        "mqttUsername": "sampleusername",
                        "mqttPassword": "samplepassword",
                        "advancedSettings": false
                    }
                }
            },
            "DataDestinationMdspRequestExample": {
                "value": {
                    "name": "wccdev",
                    "type": "mindsphere",
                    "active": false,
                    "config": {
                        "tenantId": "wccdev",
                        "clientId": "ninjatest",
                        "region": "EU1",
                        "appId": "wccdev-pdmcoreservice-1.0",
                        "password": "",
                        "connectorCertificate": {
                            "fileName": "ConnectionCertificate.pem",
                            "content": ""
                        },
                        "connectorKey": {
                            "fileName": "ConnectionKey.key",
                            "content": ""
                        },
                        "caCertificate": {
                            "fileName": "MindSphereRootCA1.pem",
                            "content": ""
                        },
                        "brokerUrl": "mindconnectmqtt.eu1.mindsphere.io",
                        "port": 8883,
                        "timeoutInSec": 1000,
                        "publishIntervalInSec": 10,
                        "retryCount": 5,
                        "qos": 1
                    }
                }
            },
            "DataDestinationMdspExample": {
                "value": {
                    "id": "3c49642087f2459fa705b24fa61a3bb9",
                    "name": "wccdev",
                    "type": "mindsphere",
                    "active": false,
                    "config": {
                        "tenantId": "wccdev",
                        "clientId": "ninjatest",
                        "region": "EU1",
                        "appId": "wccdev-pdmcoreservice-1.0",
                        "password": "",
                        "connectorCertificate": {
                            "fileName": "ConnectionCertificate.pem",
                            "content": ""
                        },
                        "connectorKey": {
                            "fileName": "ConnectionKey.key",
                            "content": ""
                        },
                        "caCertificate": {
                            "fileName": "MindSphereRootCA1.pem",
                            "content": ""
                        },
                        "brokerUrl": "mindconnectmqtt.eu1.mindsphere.io",
                        "port": 8883,
                        "timeoutInSec": 1000,
                        "publishIntervalInSec": 10,
                        "retryCount": 5,
                        "qos": 1
                    }
                }
            },
            "DataDestinationSenseyeRequestExample": {
                "value": {
                    "name": "SenseyeDev",
                    "type": "senseye",
                    "active": true,
                    "config": {
                        "mqttProtocol": "ssl",
                        "mqttHost": "mqtt.senseye.io",
                        "mqttPort": 8883,
                        "mqttUsername": "industrialedge",
                        "mqttPassword": "testpassword",
                        "mqttOrgId": "groupb46573800f17486e95c55c327944b384-industrial-edge",
                        "syncHierarchy": true,
                        "apiHost": "api.senseye.io",
                        "apiUserName": "siemens-integration-testbed-admin@senseye.io",
                        "apiPassword": "password",
                        "publishIntervalInSec": 10,
                        "sublevelRoot": "88a73b74-3784-496c-8aa0-5cf4018e935e",
                        "qos": 1
                    }
                }
            },
            "DataDestinationSenseyeExample": {
                "value": {
                    "id": "bf4ac25873ac45c3914ddfbb11c4c43e",
                    "name": "SenseyeDev",
                    "type": "senseye",
                    "active": true,
                    "config": {
                        "mqttProtocol": "wss",
                        "mqttHost": "mqtt.senseye.io",
                        "mqttPort": 8883,
                        "mqttUsername": "industrialedge",
                        "mqttPassword": "testpassword",
                        "mqttOrgId": "groupb46573800f17486e95c55c327944b384-industrial-edge",
                        "syncHierarchy": true,
                        "apiHost": "api.senseye.io",
                        "apiUserName": "siemens-integration-testbed-admin@senseye.io",
                        "apiPassword": "password",
                        "publishIntervalInSec": 10,
                        "sublevelRoot": "88a73b74-3784-496c-8aa0-5cf4018e935e",
                        "qos": 1
                    },
                    "connected": true
                }
            },
            "DataDestinationSenseyeWithoutHierarchyRequestExample": {
                "value": {
                    "name": "SenseyeDev",
                    "type": "senseye",
                    "active": true,
                    "config": {
                        "mqttProtocol": "ssl",
                        "mqttHost": "mqtt.senseye.io",
                        "mqttPort": 8883,
                        "mqttUsername": "industrialedge",
                        "mqttPassword": "testpassword",
                        "mqttOrgId": "groupb46573800f17486e95c55c327944b384-industrial-edge",
                        "syncHierarchy": false,
                        "sensorNamePrefix": "MySensor",
                        "apiHost": "api.senseye.io",
                        "apiUserName": "siemens-integration-testbed-admin@senseye.io",
                        "apiPassword": "password",
                        "publishIntervalInSec": 10,
                        "sublevelRoot": "88a73b74-3784-496c-8aa0-5cf4018e935e",
                        "qos": 1
                    }
                }
            },
            "DataDestinationSenseyeWithoutHierarchyExample": {
                "value": {
                    "id": "bf4ac25873ac45c3914ddfbb11c4c43e",
                    "name": "SenseyeDev",
                    "type": "senseye",
                    "active": true,
                    "config": {
                        "mqttProtocol": "ssl",
                        "mqttHost": "mqtt.senseye.io",
                        "mqttPort": 8883,
                        "mqttUsername": "industrialedge",
                        "mqttPassword": "testpassword",
                        "mqttOrgId": "groupb46573800f17486e95c55c327944b384-industrial-edge",
                        "syncHierarchy": false,
                        "sensorNamePrefix": "MySensor",
                        "publishIntervalInSec": 10,
                        "qos": 1
                    },
                    "connected": true
                }
            },
            "DataRetentionExample": {
                "value": {
                    "sourceId": "0",
                    "sourceTypeId": "asset",
                    "settings": {
                        "timeSettings": {
                            "timeRange": {
                                "factor": 1,
                                "base": "month"
                            }
                        }
                    }
                }
            },
            "DataRetentionEmptyExample": {
                "value": {
                    "sourceId": "1",
                    "sourceTypeId": "asset",
                    "settings": {
                        "timeSettings": null
                    }
                }
            },
            "DataRetentionV2Example": {
                "value": {
                    "dataRetention": {
                        "sourceId": "fc5957a3-bc46-44b5-8b82-f90ddda8fe1a",
                        "sourceTypeId": "asset",
                        "settings": {
                            "timeSettings": {
                                "timeRange": {
                                    "base": "day",
                                    "factor": 12
                                }
                            }
                        }
                    }
                }
            },
            "DataRetentionV2ExampleWithInherited": {
                "value": {
                    "dataRetention": {
                        "sourceId": "fc5957a3-bc46-44b5-8b82-f90ddda8fe1a",
                        "sourceTypeId": "asset",
                        "settings": {
                            "timeSettings": {
                                "timeRange": {
                                    "base": "day",
                                    "factor": 12
                                }
                            }
                        }
                    },
                    "inherited": {
                        "sourceId": "c754906c-6934-4112-917c-f1ca9c26ede7",
                        "sourceTypeId": "asset",
                        "settings": {
                            "timeSettings": {
                                "timeRange": {
                                    "base": "day",
                                    "factor": 30
                                }
                            }
                        }
                    }
                }
            },
            "DataRetentionV2ExampleNullDataRetention": {
                "value": {
                    "dataRetention": null,
                    "inherited": {
                        "sourceId": "c754906c-6934-4112-917c-f1ca9c26ede7",
                        "sourceTypeId": "asset",
                        "settings": {
                            "timeSettings": {
                                "timeRange": {
                                    "base": "day",
                                    "factor": 30
                                }
                            }
                        }
                    }
                }
            },
            "DataRetentionV2ExampleNullInherited": {
                "value": {
                    "dataRetention": {
                        "sourceId": "fc5957a3-bc46-44b5-8b82-f90ddda8fe1a",
                        "sourceTypeId": "asset",
                        "settings": {
                            "timeSettings": {
                                "timeRange": {
                                    "base": "day",
                                    "factor": 12
                                }
                            }
                        }
                    },
                    "inherited": null
                }
            },
            "DataInvalidTimeRangeExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 3,
                    "errorKey": "InvalidParameter",
                    "message": "Parameter to is invalid: Has to be greater than from.",
                    "errorParams": {
                        "reason": "Has to be greater than from.",
                        "what": "to"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/Data/XXX"
                    }
                }
            },
            "DataNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Variable with the id 1432dae06c5f4008a4caa192cba073a61 was not found.",
                    "errorParams": {
                        "id": "1432dae06c5f4008a4caa192cba073a61",
                        "what": "Variable"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/Data/XXX"
                    }
                }
            },
            "DataSyncNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The data sync with the id XXX was not found.",
                    "errorParams": {
                        "id": "XXX",
                        "what": "DataSync"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/DataService/DataSync/{id}"
                    }
                }
            },
            "DataSyncRootAssetNotAllowedExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 74,
                    "errorKey": "DataSyncRootAssetNoAllowed",
                    "message": "Not allowed to sync direct children of root asset.",
                    "debugInfo": {
                        "method": "POST",
                        "route": "/DataService/DataSync"
                    }
                }
            },
            "DataSyncStateWithoutAggregationExample": {
                "value": {
                    "id": "08ff6fd3ba7e4a94887708b22c6fb70b",
                    "sourceId": "d0df2a40afd64671bda7b53ce8f08ef8",
                    "sourceTypeId": "asset",
                    "destinationId": "3c49642087f2459fa705b24fa61a3bb9",
                    "startTime": "2022-08-16T12:00:00",
                    "disabled": false,
                    "state": "NoSync"
                }
            },
            "DataSyncStateWithAggregationExample": {
                "value": {
                    "id": "08ff6fd3ba7e4a94887708b22c6fb70b",
                    "sourceId": "d0df2a40afd64671bda7b53ce8f08ef8",
                    "sourceTypeId": "asset",
                    "destinationId": "3c49642087f2459fa705b24fa61a3bb9",
                    "startTime": "2022-08-16T12:00:00",
                    "disabled": true,
                    "aggregation": {
                        "type": "Count,",
                        "cycle": {
                            "base": "minute,",
                            "factor": 2
                        }
                    },
                    "state": "NoSync"
                }
            },
            "DataSyncWithoutAggregationExample": {
                "value": {
                    "id": "08ff6fd3ba7e4a94887708b22c6fb70b",
                    "sourceId": "d0df2a40afd64671bda7b53ce8f08ef8",
                    "sourceTypeId": "asset",
                    "destinationId": "3c49642087f2459fa705b24fa61a3bb9",
                    "startTime": "2022-08-16T12:00:00"
                }
            },
            "DataSyncWithAggregationExample": {
                "value": {
                    "id": "08ff6fd3ba7e4a94887708b22c6fb70b",
                    "sourceId": "d0df2a40afd64671bda7b53ce8f08ef8",
                    "sourceTypeId": "asset",
                    "destinationId": "3c49642087f2459fa705b24fa61a3bb9",
                    "startTime": "2022-08-16T12:00:00",
                    "disabled": false,
                    "aggregation": {
                        "type": "Count",
                        "cycle": {
                            "base": "minute",
                            "factor": 2
                        }
                    }
                }
            },
            "DestinationHierarchyExample": {
                "value": {
                    "id": "537df346969c44ba8cc0941c498e59d9",
                    "sourceType": "asset",
                    "sourceName": "TopAsset",
                    "sourceId": "91d64626-e1d1-4166-a513-923a7f2a2d44",
                    "parentId": "",
                    "destinationId": "57fed47abdcc4187be858413dfcb03a1"
                }
            },
            "DestinationHierarchyWithAggregationExample": {
                "value": {
                    "id": "fda4e8237cc5410a8fd2217f9f371a47",
                    "sourceType": "attribute",
                    "sourceId": "6add9459-cbd8-45a0-90f3-5e4fa69dccc7",
                    "sourceName": "TopAttribute",
                    "parentId": "622738adb2b746508fa8b3e8aa854b7b",
                    "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                    "state": "NoSync",
                    "aggregation": {
                        "type": "Average",
                        "cycle": {
                            "base": "minute",
                            "factor": 1
                        }
                    },
                    "startTime": "2024-08-16T12:00:00"
                },
                "description": "Example of an attribute with an aggregation and a start time."
            },
            "DestinationHierarchyArrayExample": {
                "value": [
                    {
                        "id": "537df346969c44ba8cc0941c498e59d9",
                        "sourceType": "asset",
                        "sourceId": "91d64626-e1d1-4166-a513-923a7f2a2d44",
                        "sourceName": "TopAsset",
                        "parentId": "",
                        "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                        "state": "NoSync"
                    },
                    {
                        "id": "622738adb2b746508fa8b3e8aa854b7b",
                        "sourceType": "aspect",
                        "sourceId": null,
                        "name": "H1Aspect",
                        "parentId": "537df346969c44ba8cc0941c498e59d9",
                        "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                        "state": "NoSync"
                    },
                    {
                        "id": "fda4e8237cc5410a8fd2217f9f371a47",
                        "sourceType": "attribute",
                        "sourceId": "6add9459-cbd8-45a0-90f3-5e4fa69dccc7",
                        "sourceName": "TopAttribute",
                        "parentId": "622738adb2b746508fa8b3e8aa854b7b",
                        "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                        "state": "NoSync",
                        "aggregation": {
                            "type": "Average",
                            "cycle": {
                                "base": "minute",
                                "factor": 1
                            }
                        },
                        "startTime": "2024-08-16T12:00:00"
                    }
                ]
            },
            "DestinationHierarchyNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The DestinationHierarchy with the id XXX was not found.",
                    "errorParams": {
                        "id": "XXX",
                        "what": "DestinationHierarchy"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/DataService/DataDestination/{id}/Hierarchy/{hierarchyId}"
                    }
                }
            },
            "DestinationHierarchyBulkResponseExample": {
                "value": {
                    "results": [
                        {
                            "id": "537df346969c44ba8cc0941c498e59d9",
                            "sourceType": "asset",
                            "sourceId": "91d64626-e1d1-4166-a513-923a7f2a2d44",
                            "sourceName": "TopAsset",
                            "parentId": "",
                            "destinationId": "57fed47abdcc4187be858413dfcb03a1",
                            "state": "NoSync"
                        }
                    ],
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 404,
                            "stateText": "NotFound",
                            "errorCode": 4,
                            "errorKey": "NotFound",
                            "message": "The DestinationHierarchy with the id 099fdb1ca4fd4829a7afdeff7091ee02 was not found.",
                            "errorParams": {
                                "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                                "what": "DestinationHierarchy"
                            },
                            "debugInfo": {
                                "method": "POST",
                                "route": "/DataService/DataDestination/{id}/Hierarchy/Bulk/XXX"
                            }
                        }
                    ]
                }
            },
            "ExceptionBulkLimitExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 79,
                    "errorKey": "BulkApiLimitExceeded",
                    "message": "Bulk API limit exceeded. The limit is 1000.",
                    "errorParams": {
                        "limit": "1000"
                    },
                    "debugInfo": {
                        "method": "POST",
                        "route": "/DataService/###/Bulk/###"
                    }
                },
                "description": "There limit for bulk api calls was exceeded."
            },
            "ExceptionInvalidParameterExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 3,
                    "errorKey": "InvalidParameter",
                    "message": "Parameter body.### is invalid: Unknown enum value.",
                    "errorParams": {
                        "reason": "Unknown enum value.",
                        "what": "body.###"
                    },
                    "debugInfo": {
                        "method": "###",
                        "route": "###"
                    }
                },
                "description": "There was an unknown enum in the body or other invalid parameter reasons are possible."
            },
            "ExceptionMissingParameterExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 2,
                    "errorKey": "MissingParameter",
                    "message": "Parameter body.### is missing.",
                    "errorParams": {
                        "what": "body.###"
                    },
                    "debugInfo": {
                        "method": "###",
                        "route": "###"
                    }
                }
            },
            "ExceptionInvalidQueryParameterExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 3,
                    "errorKey": "InvalidParameter",
                    "message": "Parameter query.### is invalid: Unknown enum value.",
                    "errorParams": {
                        "reason": "Unknown enum value.",
                        "what": "query.###"
                    },
                    "debugInfo": {
                        "method": "###",
                        "route": "###"
                    }
                },
                "description": "There was an unknown enum in the body, other invalid parameter reasons are possible."
            },
            "ExceptionMissingQueryParameterExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 2,
                    "errorKey": "MissingParameter",
                    "message": "Parameter query.### is missing.",
                    "errorParams": {
                        "what": "query.###"
                    },
                    "debugInfo": {
                        "method": "###",
                        "route": "###"
                    }
                }
            },
            "QueryAlarmAdvancedFilterExample": {
                "value": {
                    "alarmChannelIds": [],
                    "assetIds": [
                        "d0df2a40a8964671bda7b53ce8f08ab9"
                    ],
                    "alarmFilters": [
                        {
                            "key": "IsActive",
                            "operator": "IsIn",
                            "value": [
                                "Yes",
                                "No"
                            ]
                        },
                        {
                            "key": "IsAcknowledged",
                            "operator": "IsNotIn",
                            "value": [
                                "No"
                            ]
                        },
                        {
                            "key": "IsConfirmed",
                            "operator": "IsIn",
                            "value": [
                                "Yes",
                                "NotRelevant"
                            ]
                        },
                        {
                            "key": "Area",
                            "operator": "IsIn",
                            "value": [
                                "System"
                            ]
                        },
                        {
                            "key": "AlarmClass",
                            "operator": "Contains",
                            "value": [
                                "Acknowledgement",
                                "t1_alarm30_acknowledgement"
                            ]
                        },
                        {
                            "key": "Source",
                            "operator": "DoesNotContain",
                            "value": [
                                "PLC 1",
                                "PLC 2"
                            ]
                        },
                        {
                            "key": "Origin",
                            "operator": "IsIn",
                            "value": [
                                "t1_alarm30_origin",
                                "integration shop"
                            ]
                        },
                        {
                            "key": "ExtendedProperty",
                            "name": "AddlText0",
                            "operator": "IsIn",
                            "value": [
                                "EN extended property AddlText0 for alarm30"
                            ]
                        },
                        {
                            "key": "ExtendedProperty",
                            "name": "ExtProp1",
                            "operator": "Contains",
                            "value": [
                                "alarm30 extended property value."
                            ]
                        },
                        {
                            "key": "ExtendedProperty",
                            "name": "ExtProp2",
                            "operator": "Exists"
                        },
                        {
                            "key": "ExtendedProperty",
                            "name": "ExtProp3",
                            "operator": "DoesNotExist"
                        }
                    ],
                    "from": "2022-01-01T09:00:00",
                    "to": "2023-12-31T09:00:00",
                    "order": "descending",
                    "offset": 0,
                    "take": 20
                }
            },
            "QueryAlarmFilterExample": {
                "value": {
                    "alarmChannelIds": [],
                    "assetIds": [
                        "channel0"
                    ],
                    "areaFilter": [
                        "System"
                    ],
                    "alarmClassFilter": [],
                    "sourceFilter": [
                        "PLC 1",
                        "PLC 2"
                    ],
                    "originFilter": [],
                    "isActiveFilter": [
                        "Yes",
                        "No"
                    ],
                    "isAcknowledgedFilter": [
                        "NotRelevant"
                    ],
                    "isConfirmedFilter": [],
                    "extendedPropertiesFilters": [
                        {
                            "name": "AdditionalText0",
                            "value": [
                                "text1",
                                "text2",
                                "text3"
                            ]
                        },
                        {
                            "name": "ExtProp1",
                            "value": [
                                "text1",
                                "text2"
                            ]
                        }
                    ],
                    "from": "2022-01-01T09:00:00",
                    "to": "2023-12-31T09:00:00",
                    "order": "descending",
                    "offset": 0,
                    "take": 20
                }
            },
            "SyncChannelExample": {
                "value": {
                    "channelId": "13d99c75-3f78-4336-b3ea-823384296835",
                    "channelName": "Channel_1",
                    "active": true,
                    "config": {
                        "mqttHost": "localhost",
                        "mqttPort": 1883,
                        "useCredentials": true,
                        "username": "edge",
                        "useCertificates": false,
                        "clientCertificate": {
                            "fileName": "",
                            "content": ""
                        },
                        "clientKey": {
                            "fileName": "",
                            "content": ""
                        },
                        "caCertificate": {
                            "fileName": "",
                            "content": ""
                        }
                    }
                }
            },
            "TooManyFilterExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 400,
                    "stateText": "BadRequest",
                    "errorCode": 3,
                    "errorKey": "InvalidParameter",
                    "message": "Parameter query is invalid: It is not supported to specify more than one filter parameter.",
                    "errorParams": {
                        "reason": "It is not supported to specify more than one filter parameter.",
                        "what": "query"
                    },
                    "debugInfo": {
                        "method": "GET",
                        "route": "/DataService/###"
                    }
                }
            },
            "VariableNotFoundExample": {
                "value": {
                    "service": "IIH Essentials",
                    "state": 404,
                    "stateText": "NotFound",
                    "errorCode": 4,
                    "errorKey": "NotFound",
                    "message": "The Variable with the id 123 was not found.",
                    "errorParams": {
                        "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                        "what": "Variable"
                    },
                    "debugInfo": {
                        "method": "XXX",
                        "route": "/DataService/Variables/{id}"
                    }
                }
            },
            "VariableBulkResponseExample": {
                "value": {
                    "results": [
                        {
                            "variableId": "53abb2fdc0da4c24b84b735930c7b9c8",
                            "variableName": "Variable1",
                            "dataType": "Double",
                            "blobType": "image/png",
                            "assetId": "0",
                            "aspectId": "ff857cc22e454a2a88bc36076bc69bdf",
                            "unit": "",
                            "adapterId": "profinet",
                            "topic": "PLC1::Double1::4::7",
                            "aspectName": "Aspect",
                            "connected": false,
                            "store": true
                        }
                    ],
                    "errors": [
                        {
                            "service": "IIH Essentials",
                            "state": 404,
                            "stateText": "NotFound",
                            "errorCode": 4,
                            "errorKey": "NotFound",
                            "message": "The Variable with the id 099fdb1ca4fd4829a7afdeff7091ee02 was not found.",
                            "errorParams": {
                                "id": "099fdb1ca4fd4829a7afdeff7091ee02",
                                "what": "Variable"
                            },
                            "debugInfo": {
                                "method": "XXX",
                                "route": "/DataService/Aspects/{id}",
                                "objectIndex": "1"
                            }
                        }
                    ]
                }
            }
        },
        "responses": {
            "DataNotModified": {
                "description": "Data has not been modified.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "UnsupportedMediaType": {
                "description": "Unsupported Media Type.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "UnprocessableEntity": {
                "description": "Unprocessable Entity.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "RequestMalformed": {
                "description": "Request is malformed.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "Unauthorized": {
                "description": "Unauthorized.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "Forbidden": {
                "description": "Forbidden.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "NotFound": {
                "description": "Requested resource not found.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "MethodNotAllowed": {
                "description": "Method not allowed.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "ResourceGone": {
                "description": "Resource is gone.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "RequestRejected": {
                "description": "Request rejected due to a rate limit.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            },
            "InternalError": {
                "description": "Internal Server Error.",
                "content": {
                    "application/json": {
                        "schema": {
                            "$ref": "#/components/schemas/ErrorResponse"
                        }
                    }
                }
            }
        },
        "parameters": {
            "SelectorsParameter": {
                "name": "selectors",
                "in": "query",
                "description": "One or multiple selector statements to control which fields are returned in the response.\n\n\n\n**Syntax:**\n\n- `+` = Add field (explicit)\n\n- `-` = Remove field\n\n- `*` = All fields (use with - to exclude specific fields)\n\n\n\n**Available Selectors:**\n\n- `$anchor` = Unique identifier (UUID) of the entity\n\n- `$displayname` = Display name of the entity\n\n- `$metadata` = Metadata associated with the entity\n\n- `$references` = References to other entities\n\n- `$relations` = Relations to other entities\n\n- `$abstraction` = Abstraction level (type, template, instance)\n\n- `$type` = Type information of the entity\n\n- `$name` = Name of the entity\n\n- `$concept` = Concept (e.g., asset, aspect)\n\n- `$template` = Template information\n\n- `$attributes` = Attributes of the entity\n\n- `$details` = Detailed attribute information (datatype, etc.)\n\n\n\n**Examples:**\n\n- `+$name,+$type` = Add name and type to default fields\n\n- `*,-$details` = All fields except details\n\n- `-$anchor,+$name` = Remove anchor, add name\n\n- `*` = Return all available fields\n\n- `-$anchor,-$attributes` = No fields (empty response)",
                "schema": {
                    "type": "string",
                    "default": "+$anchor,+$attributes"
                }
            }
        }
    }
}