{
  "openapi": "3.0.1",
  "info": {
    "title": "dRofus Project API",
    "description": "Api by dRofus<br/>You can find out more about Swagger at [http://swagger.io](http://swagger.io)",
    "contact": {
      "name": "dRofus AS",
      "email": "support@drofus.com"
    },
    "license": {
      "name": "Copyright dRofus AS © 1998-2026",
      "url": "https://drofus.com"
    },
    "version": "51.3.0-test+1998"
  },
  "paths": {
    "/api/{db}/{pr}/attributeconfigurations": {
      "get": {
        "tags": [
          "AttributeConfigurations"
        ],
        "summary": "Get list of Attribute Configurations",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AttributeConfiguration"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/companies": {
      "get": {
        "tags": [
          "Companies"
        ],
        "summary": "Get list of Companies",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Company"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Companies"
        ],
        "summary": "Create new Company",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCompany"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCompany"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCompany"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Company"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "Companies"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/companies/{id}": {
      "get": {
        "tags": [
          "Companies"
        ],
        "summary": "Get specified Company",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Which company to return",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Company"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Companies"
        ],
        "summary": "Updates an existing Company.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Company id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Company"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Company"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/files": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Get list of file meta information",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "options": {
        "tags": [
          "Files"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/files/{id}": {
      "get": {
        "tags": [
          "Files"
        ],
        "summary": "Get file meta information by specified id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "delete": {
        "tags": [
          "Files"
        ],
        "summary": "Completely removes a file",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "file id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/itemgroups": {
      "get": {
        "tags": [
          "ItemGroups"
        ],
        "summary": "Get list of Item Groups",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ItemGroup"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "ItemGroups"
        ],
        "summary": "Create new Item Group",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItemGroup"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItemGroup"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItemGroup"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemGroup"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "ItemGroups"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/itemgroups/{id}": {
      "get": {
        "tags": [
          "ItemGroups"
        ],
        "summary": "Get specified Item Group",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemGroup"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "ItemGroups"
        ],
        "summary": "Updates an existing Item Group",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Item Group id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ItemGroup"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemGroup"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get list of Items",
        "description": "Additional filter fields and supported operator: \n* default_search (`contains`)\n* group_or_parent (`in`)\n* classification_or_parent (`in`)\n\n\nSupports lambda fielters:\n\n* Occurrences\n* Products\n\nThis allows to filter for 'where exists' a sub/related entity. Syntax is: _relatedEntityName/any(x:x/relatedEntityFilter)_.\nThe **relatedEntityFilter** should have a syntax as if it was searching for related entity only. \n\nExample: If _Occurrences_ has propety _abc_ and you want to filter where there exists any _Occurrences_ for this entity with the\nproperty equals B you can use the following filter: `Occurrences/any(x:x/abc eq 'B')`. Note any valid filter for _Occurrences_ can be used inside the ().",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Create new Item",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItem"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItem"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateItem"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Item"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "Items"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get specified Item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Item"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Items"
        ],
        "summary": "Updates an existing Item.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Item id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Item"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Item"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}/files": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get files meta for specified Item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Upload a new file to a specified Item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Item id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "description": "Binary file to upload",
                    "format": "binary"
                  },
                  "description": {
                    "type": "string",
                    "description": "Description/notes for file to upload"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "description": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}/files/{fileid}": {
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Add link to an existing file for this item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "fileid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "delete": {
        "tags": [
          "Items"
        ],
        "summary": "Remove link to an file from this item (does not delete the file)",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "fileid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}/images": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get list of image metas for a specified Item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Image"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}/logs": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get log entries for specified Item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ItemLog"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{id}/subitems": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Gets list of sub-items for item, if any",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Item id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubItem"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{itemId}/images": {
      "post": {
        "tags": [
          "Items"
        ],
        "summary": "Uploads a new image",
        "description": "Image is inserted at the end of the list of images.\r\nIf image size exceeds configured limit, upload will fail",
        "parameters": [
          {
            "name": "itemId",
            "in": "path",
            "description": "Item to attach image to",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "image": {
                    "type": "string",
                    "description": "Binary file to upload",
                    "format": "binary"
                  },
                  "note": {
                    "type": "string",
                    "description": "Description/notes for image to upload"
                  }
                }
              },
              "encoding": {
                "image": {
                  "style": "form"
                },
                "note": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Image"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/{itemId}/subitems/{subItemId}": {
      "delete": {
        "tags": [
          "Items"
        ],
        "summary": "Method permanently moved to subitems root",
        "parameters": [
          {
            "name": "itemId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "subItemId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "410": {
            "description": "Gone"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/images/{imageid}": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get specified Item image",
        "parameters": [
          {
            "name": "imageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/images/{imageId}": {
      "delete": {
        "tags": [
          "Items"
        ],
        "summary": "Deletes specified Item image",
        "parameters": [
          {
            "name": "imageId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/images/{imageid}/meta": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get specified Item image meta",
        "parameters": [
          {
            "name": "imageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Image"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/items/logs": {
      "get": {
        "tags": [
          "Items"
        ],
        "summary": "Get log entries for Items",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ItemLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get list of Occurrences",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Occurrence"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Create new Occurrence",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOccurrence"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOccurrence"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOccurrence"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Occurrence"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get specified Occurrence",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Occurrence"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Updates an existing Occurrence.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "occurrence id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Occurrence"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Occurrence"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "delete": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Delete an occurrence by ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}/files": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get files meta for specified Occurrence",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}/images": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get list of image metas for a specified Occurrence",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Image"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}/is-member-of-systems": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Gets list of systems Occurrence is member of, if any",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "occurrence id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "name": "includeSubs",
            "in": "query",
            "description": "If true, also include systems via sub-items",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/System"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}/logs": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get log entries for specified Occurrence",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OccurrenceLog"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/{id}/statuses/{statustypeid}": {
      "patch": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Updates an existing Occurrence with an existing status type.",
        "description": "Requires occurrence id, status type id and a payload with updating field(s).\r\nStatusUpdate used as request/response body when updating status on requested occurrence.\r\nWhen StatusUpdate is used as request payload either status code or status id is required to update status.\r\nWhen StatusUpdate returned as response status code and status id verifies updated status.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "occurrence id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "statustypeid",
            "in": "path",
            "description": "status type id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Can specify either status id or status code",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/StatusUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatusUpdate"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Gets status for given Occurrence ID and status type ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "occurrence id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "statustypeid",
            "in": "path",
            "description": "status type id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/OccurrenceStatus"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "204": {
            "description": "No Content"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/images/{imageid}": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get specified occurrence image",
        "parameters": [
          {
            "name": "imageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/images/{imageid}/meta": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get specified Occurrence image meta",
        "parameters": [
          {
            "name": "imageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Image"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/occurrences/logs": {
      "get": {
        "tags": [
          "Occurrences"
        ],
        "summary": "Get log entries for Occurrences",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/OccurrenceLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/products": {
      "get": {
        "tags": [
          "Products"
        ],
        "summary": "Get list of Products",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Product"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "options": {
        "tags": [
          "Products"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/products/{id}": {
      "get": {
        "tags": [
          "Products"
        ],
        "summary": "Get specified Products",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Product"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/products/{id}/files": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Upload a new file to a specified Product",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Required - product id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "description": "Binary file to upload",
                    "format": "binary"
                  },
                  "description": {
                    "type": "string",
                    "description": "Description/notes for file to upload"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "description": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "get": {
        "tags": [
          "Products"
        ],
        "summary": "Get files meta for specified Product",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/projects": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get current Project",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Projects"
        ],
        "summary": "Updates current project",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Project"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "Projects"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/projects/largeimage": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get image configured as Large Project Image",
        "description": "Note that image-type is always reported to jpg, but client may have uploaded files in a different file format",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "head": {
        "tags": [
          "Projects"
        ],
        "summary": "Check if project is configured with large image",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/projects/largeimageprint": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get image configured as Large Print Project Image",
        "description": "Note that image-type is always reported to jpg, but client may have uploaded files in a different file format",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/projects/smallimage": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get image configured as Small Project Image",
        "description": "Note that image-type is always reported to jpg, but client may have uploaded files in a different file format",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/projects/smallimagesecondary": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get image configured as Small Project Image Secondary",
        "description": "Note that image-type is always reported to jpg, but client may have uploaded files in a different file format",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomfunctions": {
      "get": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get list of Room Functions",
        "description": "Additional filter fields and supported operator: \n* function_or_descendant_functions_has_function_data (`equal`)",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomFunction"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Create new Room Function",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomFunction"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomFunction"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomFunction"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomFunction"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomfunctions/{id}": {
      "get": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get specified Room Function",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomFunction"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Update Room Function based on id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RoomFunction"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomFunction"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomfunctions/{id}/files": {
      "get": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get files meta for specified Room Function",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomfunctions/{id}/logs": {
      "get": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get logs for specified Room Function",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomFunctionLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomfunctions/logs": {
      "get": {
        "tags": [
          "RoomFunctions"
        ],
        "summary": "Get logs for all Room Functions",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomFunctionLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomgroups": {
      "get": {
        "tags": [
          "RoomGroups"
        ],
        "summary": "Get list of Room Group Types",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomGroupType"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "options": {
        "tags": [
          "RoomGroups"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomgroups/{groupTypeId}/members": {
      "get": {
        "tags": [
          "RoomGroups"
        ],
        "summary": "Get list of Room Groups in given Room Group Type",
        "parameters": [
          {
            "name": "groupTypeId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomGroup"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "RoomGroups"
        ],
        "summary": "Creates a new Room Group in the specified Room Group Type",
        "parameters": [
          {
            "name": "groupTypeId",
            "in": "path",
            "description": "The ID of the Room Group Type within which to create the new Room Group",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "The details of the Room Group to create",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomGroup"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomGroup"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomGroup"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomGroup"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomgroups/{id}": {
      "get": {
        "tags": [
          "RoomGroups"
        ],
        "summary": "Get specified Room Group Type",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomGroupType"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get list of Rooms",
        "description": "Additional filter fields and supported operator: \n* default_search (`contains`)\n* function_or_parent (`in`)\n* group (`in`)\n* classification_or_parent (`in`)\n* using_template (`in`)\n\n\nSupports lambda fielters:\n\n* Occurrences\n\nThis allows to filter for 'where exists' a sub/related entity. Syntax is: _relatedEntityName/any(x:x/relatedEntityFilter)_.\nThe **relatedEntityFilter** should have a syntax as if it was searching for related entity only. \n\nExample: If _Occurrences_ has propety _abc_ and you want to filter where there exists any _Occurrences_ for this entity with the\nproperty equals B you can use the following filter: `Occurrences/any(x:x/abc eq 'B')`. Note any valid filter for _Occurrences_ can be used inside the ().",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Room"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Rooms"
        ],
        "summary": "Create new Room",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoom"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoom"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoom"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Room"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get specified Room",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Room"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Rooms"
        ],
        "summary": "Updates specified Room fields",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Room"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Room"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/equipmentliststatus/{equipmentListTypeId}": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Gets the equipment list status  for the given room id and room equipment list type id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The room id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "equipmentListTypeId",
            "in": "path",
            "description": "The equipment list type id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateConnectionStatus"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "403": {
            "description": "Forbidden"
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "patch": {
        "tags": [
          "Rooms"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "equipmentListTypeId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TemplateConnectionStatus"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateConnectionStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/files": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get files meta for specified Room",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/groups/{groupTypeId}": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get RoomGroup for specified Room and Room Group Type",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the Room for which to get Room Group",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "groupTypeId",
            "in": "path",
            "description": "The ID of the Room Group Type for which to get Room Group",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomGroup"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Rooms"
        ],
        "summary": "Update the specified Room to use the provided Room Group under the given Room Group Type",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the Room to be updated",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "groupTypeId",
            "in": "path",
            "description": "The identifier of the Room Group Type for which to set new Room Group",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Identification details of the Room Group to assign to the Room/Room Group Type. Specify either room_group_id or room_group_name.\r\n            To un-assign the Room Group for a Room Group Type, specify the room_group_id with value 0",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RoomGroupUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomGroupUpdate"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/images": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get list of image metas for a specified Room",
        "description": "Only images directly assigned rooms are listed, not inherited images",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Image"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/logs": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get log entries for specified Room",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomLog"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/{id}/roomdatastatus": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Gets the RDS (Room Data Sheet) status  for the given room id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The room id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateConnectionStatus"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Rooms"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TemplateConnectionStatus"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateConnectionStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/images/{roomimageid}": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get specified Room image",
        "parameters": [
          {
            "name": "roomimageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              },
              "image/*": {
                "encoding": {
                  "image/*": {
                    "contentType": "image/*",
                    "style": "simple",
                    "explode": true,
                    "allowReserved": true
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/images/{roomimageid}/meta": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get specified Room image meta",
        "parameters": [
          {
            "name": "roomimageid",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Image"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/rooms/logs": {
      "get": {
        "tags": [
          "Rooms"
        ],
        "summary": "Get log entries for Rooms",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get list of Room Templates",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomTemplate"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Create new Room Template",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomTemplate"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomTemplate"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoomTemplate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomTemplate"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates/{id}": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get specified Room Template",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomTemplate"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Updates an existing Room Template.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Room template id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RoomTemplate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoomTemplate"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates/{id}/files": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get files meta for specified Room Template",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates/{id}/logs": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get logs for specified Room Template",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "404": {
            "description": "Not Found"
          },
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomTemplateLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates/{id}/templateoccurrences": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get list of Template Occurrences for Room Template",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TemplateOccurrence"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/roomtemplates/logs": {
      "get": {
        "tags": [
          "RoomTemplates"
        ],
        "summary": "Get logs for all room templates",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoomTemplateLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/subitems": {
      "get": {
        "tags": [
          "SubItems"
        ],
        "summary": "Get list of SubItems",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SubItem"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "SubItems"
        ],
        "summary": "Create new SubItem",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubItem"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubItem"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubItem"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubItem"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "SubItems"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/subitems/{id}": {
      "get": {
        "tags": [
          "SubItems"
        ],
        "summary": "Get specified SubItem",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubItem"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "SubItems"
        ],
        "summary": "Updates an existing SubItem.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "SubItem id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SubItem"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubItem"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "delete": {
        "tags": [
          "SubItems"
        ],
        "summary": "Removes a sub-item from item",
        "description": "This methods supersedes DELETE items/id/subitem/subitemid",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Sub-item to remove",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systemcomponents": {
      "get": {
        "tags": [
          "SystemComponents"
        ],
        "summary": "Get list of System Components",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SystemComponent"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "options": {
        "tags": [
          "SystemComponents"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/systemcomponents/{id}": {
      "get": {
        "tags": [
          "SystemComponents"
        ],
        "summary": "Get specified System Component",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemComponent"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systemcomponents/{parentId}/components": {
      "get": {
        "tags": [
          "SystemComponents"
        ],
        "summary": "Get list of Components in given System Component",
        "parameters": [
          {
            "name": "parentId",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Component"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get list of Systems",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/System"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "options": {
        "tags": [
          "Systems"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems/{id}": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get specified System",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/System"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "Systems"
        ],
        "summary": "Updates specified System fields",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "system id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/System"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/System"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "delete": {
        "tags": [
          "Systems"
        ],
        "summary": "Delete a system by an ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems/{id}/components": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get components for a specified System",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Occurrence"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems/{id}/files": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get files meta for specified System",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/File"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems/{id}/logs": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get logs for a specified System",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "404": {
            "description": "Not Found"
          },
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SystemLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/systems/logs": {
      "get": {
        "tags": [
          "Systems"
        ],
        "summary": "Get logs for all Systems",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SystemLog"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/api/{db}/{pr}/templateoccurrences": {
      "get": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Get list of Template Occurrences",
        "parameters": [
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/$orderby"
          },
          {
            "$ref": "#/components/parameters/$filter"
          },
          {
            "$ref": "#/components/parameters/$top"
          },
          {
            "$ref": "#/components/parameters/$skip"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "link": {
                "description": "Rfc5988 web links for paging",
                "schema": {
                  "type": "string",
                  "description": "Rfc5988 web links for paging"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TemplateOccurrence"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Create new Template Occurrence",
        "description": "This feature is experimental",
        "parameters": [
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateOccurrence"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateOccurrence"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateOccurrence"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateOccurrence"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "options": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/templateoccurrences/{id}": {
      "get": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Get specified Template Occurrence. Only root occurrence will be found",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/$select"
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateOccurrence"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "patch": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Updates an existing Template Occurrence",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Template ocurrence id",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "requestBody": {
          "description": "Values to update",
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TemplateOccurrence"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateOccurrence"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      },
      "delete": {
        "tags": [
          "TemplateOccurrences"
        ],
        "summary": "Delete a template occurrence by an Id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/users": {
      "options": {
        "tags": [
          "Users"
        ],
        "summary": "Get meta information about available properties to select for current user. Use depth to include more related properties.",
        "parameters": [
          {
            "name": "depth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PropertyMeta"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/api/{db}/{pr}/users/{id}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get specified User",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Which user to return",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/db"
          },
          {
            "$ref": "#/components/parameters/pr"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AttributeConfiguration": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "elements": {
            "title": "General : Attribute Configuration Elements",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttributeConfigurationElement"
            },
            "description": "General : Attribute Configuration Elements",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "applicable_to": {
            "title": "General: Applicable To",
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "General: Applicable To",
            "x-drofus-group": "General"
          },
          "available_to_users": {
            "title": "General: Available to users",
            "type": "boolean",
            "description": "General: Available to users",
            "x-drofus-group": "General"
          },
          "config_type": {
            "title": "General: Type",
            "type": "string",
            "description": "General: Type",
            "x-drofus-group": "General"
          },
          "is_default": {
            "title": "General: Is Default Configuration",
            "type": "boolean",
            "description": "General: Is Default Configuration",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "AttributeConfigurationElement": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "configuration": {
            "type": "integer",
            "format": "int32"
          },
          "drofus_attribute_id": {
            "type": "string",
            "nullable": true
          },
          "drofus_attribute_label": {
            "type": "string",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "nullable": true
          },
          "external_attribute_id": {
            "type": "string",
            "nullable": true
          },
          "external_attribute_label": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Company": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "address": {
            "title": "General: Postal address",
            "type": "string",
            "description": "General: Postal address",
            "x-drofus-group": "General"
          },
          "address2": {
            "title": "General: Street Address",
            "type": "string",
            "description": "General: Street Address",
            "x-drofus-group": "General"
          },
          "business_type": {
            "title": "General: Supplier of",
            "type": "string",
            "description": "General: Supplier of",
            "x-drofus-group": "General"
          },
          "country": {
            "title": "General: Country",
            "type": "string",
            "description": "General: Country",
            "x-drofus-group": "General"
          },
          "email": {
            "title": "General: Email",
            "type": "string",
            "description": "General: Email",
            "x-drofus-group": "General"
          },
          "fax_1": {
            "title": "General: Fax1",
            "type": "string",
            "description": "General: Fax1",
            "x-drofus-group": "General"
          },
          "fax_2": {
            "title": "General: Fax2",
            "type": "string",
            "description": "General: Fax2",
            "x-drofus-group": "General"
          },
          "homepage": {
            "title": "General: Homepage",
            "type": "string",
            "description": "General: Homepage",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "organization_no": {
            "title": "General: Organization Number",
            "type": "string",
            "description": "General: Organization Number",
            "x-drofus-group": "General"
          },
          "phone_1": {
            "title": "General: Phone1",
            "type": "string",
            "description": "General: Phone1",
            "x-drofus-group": "General"
          },
          "phone_2": {
            "title": "General: Phone2",
            "type": "string",
            "description": "General: Phone2",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "Component": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/Occurrence"
          }
        ]
      },
      "CreateCompany": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "address": {
            "title": "General: Postal address",
            "type": "string",
            "description": "General: Postal address",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "address2": {
            "title": "General: Street Address",
            "type": "string",
            "description": "General: Street Address",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "business_type": {
            "title": "General: Supplier of",
            "type": "string",
            "description": "General: Supplier of",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "country": {
            "title": "General: Country",
            "type": "string",
            "description": "General: Country",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "email": {
            "title": "General: Email",
            "type": "string",
            "description": "General: Email",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "fax_1": {
            "title": "General: Fax1",
            "type": "string",
            "description": "General: Fax1",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "fax_2": {
            "title": "General: Fax2",
            "type": "string",
            "description": "General: Fax2",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "homepage": {
            "title": "General: Homepage",
            "type": "string",
            "description": "General: Homepage",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "organization_no": {
            "title": "General: Organization Number",
            "type": "string",
            "description": "General: Organization Number",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "phone_1": {
            "title": "General: Phone1",
            "type": "string",
            "description": "General: Phone1",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "phone_2": {
            "title": "General: Phone2",
            "type": "string",
            "description": "General: Phone2",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateItem": {
        "required": [
          "level_id",
          "name"
        ],
        "type": "object",
        "properties": {
          "level_id": {
            "title": "General: Item Group ID",
            "type": "integer",
            "description": "General: Item Group ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "bim_id": {
            "title": "General: BIM ID",
            "type": "string",
            "description": "General: BIM ID",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "bip": {
            "title": "General: ASE",
            "type": "boolean",
            "description": "General: ASE",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "parent_id": {
            "title": "General: Parent ID",
            "type": "integer",
            "description": "General: Parent ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "price_reference": {
            "title": "General: Reference",
            "type": "string",
            "description": "General: Reference",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "serial_no": {
            "title": "General: Serial Number",
            "maxLength": 10,
            "type": "string",
            "description": "General: Serial Number",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "to_be_drawn": {
            "title": "General: To be modeled",
            "type": "boolean",
            "description": "General: To be modeled",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateItemGroup": {
        "required": [
          "name",
          "no"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Name",
            "maxLength": 200,
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "no": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "parent": {
            "title": "General: Parent ID",
            "type": "integer",
            "description": "General: Parent ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateOccurrence": {
        "required": [
          "article_id"
        ],
        "type": "object",
        "properties": {
          "article_id": {
            "title": "General: Item ID",
            "minimum": 1,
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "category_id": {
            "title": "General: Category ID",
            "type": "integer",
            "description": "General: Category ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "equipment_list_type_id": {
            "title": "General: Item List Type ID",
            "type": "integer",
            "description": "General: Item List Type ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "minimum": 0,
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "room_id": {
            "title": "General: Room ID",
            "type": "integer",
            "description": "General: Room ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateRoom": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Room Name",
            "maxLength": 500,
            "type": "string",
            "description": "General: Room Name",
            "x-drofus-group": "General"
          },
          "architect_no": {
            "title": "General: Room Number",
            "type": "string",
            "description": "General: Room Number",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Room Name Description",
            "type": "string",
            "description": "General: Room Name Description",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "designed_area": {
            "title": "Areas and Measurements: Designed Area",
            "type": "number",
            "description": "Areas and Measurements: Designed Area",
            "format": "double",
            "nullable": true,
            "x-drofus-group": "Areas and Measurements"
          },
          "drawing_name": {
            "title": "General: Name on Drawing",
            "type": "string",
            "description": "General: Name on Drawing",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "drawing_no": {
            "title": "General: Additional Number",
            "type": "string",
            "description": "General: Additional Number",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "programmed_area": {
            "title": "Areas and Measurements: Programmed Area",
            "type": "number",
            "description": "Areas and Measurements: Programmed Area",
            "format": "double",
            "nullable": true,
            "x-drofus-group": "Areas and Measurements"
          },
          "room_function_id": {
            "title": "General: Room Function ID",
            "type": "integer",
            "description": "General: Room Function ID",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "user_room_no": {
            "title": "General: User Room Number",
            "type": "string",
            "description": "General: User Room Number",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateRoomFunction": {
        "required": [
          "name",
          "no"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Name",
            "maxLength": 200,
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "no": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "x-drofus-group": "General"
          },
          "parent": {
            "title": "General: Belongs to",
            "type": "integer",
            "description": "General: Belongs to",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateRoomGroup": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "color": {
            "title": "General: Color",
            "type": "string",
            "description": "General: Color",
            "format": "color",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "designed_gross_area": {
            "title": "General: Designed Gross Area",
            "type": "number",
            "description": "General: Designed Gross Area",
            "format": "double",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "planned_gross_area": {
            "title": "General: Planned Gross Area",
            "type": "number",
            "description": "General: Planned Gross Area",
            "format": "double",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateRoomTemplate": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "title": "General: Template Name",
            "type": "string",
            "description": "General: Template Name",
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "programmed_area": {
            "title": "General: Standard Area",
            "type": "number",
            "description": "General: Standard Area",
            "format": "double",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "room_func_no": {
            "title": "General: Code",
            "maxLength": 30,
            "type": "string",
            "description": "General: Code",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateSubItem": {
        "required": [
          "parent_id",
          "sub_id"
        ],
        "type": "object",
        "properties": {
          "parent_id": {
            "title": "General: Sub item to",
            "type": "integer",
            "description": "General: Sub item to",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "sub_id": {
            "title": "General: Sub Item",
            "type": "integer",
            "description": "General: Sub Item",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "nullable": true,
            "x-drofus-group": "General"
          },
          "quantity_calculate": {
            "title": "General: Calculate Quantity",
            "type": "boolean",
            "description": "General: Calculate Quantity",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "CreateTemplateOccurrence": {
        "required": [
          "equipment_list_type_id",
          "item_id",
          "quantity",
          "room_template_id"
        ],
        "type": "object",
        "properties": {
          "equipment_list_type_id": {
            "title": "General: Item List Type ID",
            "type": "integer",
            "description": "General: Item List Type ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "item_id": {
            "title": "General: Item ID",
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "room_template_id": {
            "title": "General: Template ID",
            "type": "integer",
            "description": "General: Template ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "comment": {
            "title": "General: Comment",
            "type": "string",
            "description": "General: Comment",
            "nullable": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "File": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "compressed_size": {
            "title": "General: Compressed size",
            "type": "integer",
            "description": "General: Compressed size",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "created": {
            "title": "General: Uploaded",
            "type": "string",
            "description": "General: Uploaded",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "last_changed": {
            "title": "General: Last modified",
            "type": "string",
            "description": "General: Last modified",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "revision": {
            "title": "General: Version",
            "type": "integer",
            "description": "General: Version",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "size": {
            "title": "General: Size",
            "type": "integer",
            "description": "General: Size",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "type": {
            "title": "General: File type",
            "type": "string",
            "description": "General: File type",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "entity_type": {
              "title": "General: Entity type (not translated)",
              "type": "string",
              "description": "General: Entity type (not translated)",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "entity_type_translated": {
              "title": "General: Entity type",
              "type": "string",
              "description": "General: Entity type",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "FileUploadResponse": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "integer",
            "description": "Uploaded file id",
            "format": "int32"
          },
          "fileName": {
            "type": "string",
            "description": "Uploaded file name",
            "nullable": true
          },
          "size": {
            "type": "integer",
            "description": "Uploaded file size in bytes",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "Response content for uploaded file"
      },
      "Image": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "created": {
            "title": "General: Uploaded",
            "type": "string",
            "description": "General: Uploaded",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "position": {
            "title": "General: Position",
            "type": "integer",
            "description": "General: Position",
            "format": "int32",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "Item": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: Item ID",
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "bim_id": {
            "title": "General: BIM ID",
            "type": "string",
            "description": "General: BIM ID",
            "x-drofus-group": "General"
          },
          "bip": {
            "title": "General: ASE",
            "type": "boolean",
            "description": "General: ASE",
            "x-drofus-group": "General"
          },
          "child_number": {
            "title": "General: Item Child Number",
            "type": "string",
            "description": "General: Item Child Number",
            "x-drofus-group": "General"
          },
          "classification_number": {
            "title": "Classification: Number",
            "type": "string",
            "description": "Classification: Number",
            "readOnly": true,
            "x-drofus-group": "Classification"
          },
          "level_id": {
            "title": "General: Item Group ID",
            "type": "integer",
            "description": "General: Item Group ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "number": {
            "title": "General: Item Number",
            "type": "string",
            "description": "General: Item Number",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "parent_id": {
            "title": "General: Parent ID",
            "type": "integer",
            "description": "General: Parent ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "price": {
            "title": "General: Budget price",
            "type": "number",
            "description": "General: Budget price",
            "format": "currency",
            "x-drofus-group": "General"
          },
          "price_comment": {
            "title": "General: Price Comment",
            "type": "string",
            "description": "General: Price Comment",
            "x-drofus-group": "General"
          },
          "price_date": {
            "title": "General: Price date",
            "type": "string",
            "description": "General: Price date",
            "format": "date",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "price_reference": {
            "title": "General: Reference",
            "type": "string",
            "description": "General: Reference",
            "x-drofus-group": "General"
          },
          "run_no": {
            "title": "Classification: Serial Number",
            "type": "string",
            "description": "Classification: Serial Number",
            "x-drofus-group": "Classification"
          },
          "serial_no": {
            "title": "General: Serial Number",
            "type": "string",
            "description": "General: Serial Number",
            "x-drofus-group": "General"
          },
          "to_be_drawn": {
            "title": "General: To be modeled",
            "type": "boolean",
            "description": "General: To be modeled",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "bim_key": {
              "title": "General: BIM ID or Item Number",
              "type": "string",
              "description": "General: BIM ID or Item Number",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "ItemGroup": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "article_level_depth": {
            "title": "General: Depth",
            "type": "integer",
            "description": "General: Depth",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "full_no": {
            "title": "General: Full number",
            "type": "string",
            "description": "General: Full number",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "no": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "x-drofus-group": "General"
          },
          "parent": {
            "title": "General: Parent ID",
            "type": "integer",
            "description": "General: Parent ID",
            "format": "int32",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "function_structure_name": {
              "title": "General: Item structure name",
              "type": "string",
              "description": "General: Item structure name",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "number_and_name": {
              "title": "General: Item Group",
              "type": "string",
              "description": "General: Item Group",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "ItemLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "article_id": {
            "title": "General: Item ID",
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "Log": {
        "type": "object",
        "properties": {
          "action": {
            "title": "General: Event",
            "type": "string",
            "description": "General: Event",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "field": {
            "title": "General: Field",
            "type": "string",
            "description": "General: Field",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "change_source": {
            "title": "General: Change source",
            "type": "string",
            "description": "General: Change source",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "new_value": {
            "title": "General: New value",
            "type": "string",
            "description": "General: New value",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Log Note",
            "type": "string",
            "description": "General: Log Note",
            "x-drofus-group": "General"
          },
          "old_value": {
            "title": "General: Old value",
            "type": "string",
            "description": "General: Old value",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "time": {
            "title": "General: Time",
            "type": "string",
            "description": "General: Time",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "username": {
            "title": "General: Username",
            "type": "string",
            "description": "General: Username",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "action_field": {
              "title": "General: Field - Event",
              "type": "string",
              "description": "General: Field - Event",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "Occurrence": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "addition_order_quantity": {
            "title": "General: Quantity - Addition order",
            "type": "integer",
            "description": "General: Quantity - Addition order",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "agreement_quantity": {
            "title": "General: Quantity - Agreement",
            "type": "integer",
            "description": "General: Quantity - Agreement",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "agreement_quantity_option": {
            "title": "General: Quantity - Agreement - Option",
            "type": "integer",
            "description": "General: Quantity - Agreement - Option",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "article_id": {
            "title": "General: Item ID",
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "article_sub_article_id": {
            "title": "General: Sub Item ID",
            "type": "integer",
            "description": "General: Sub Item ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "category_id": {
            "title": "General: Category ID",
            "type": "integer",
            "description": "General: Category ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "classification_number": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "comment": {
            "title": "General: Comment",
            "type": "string",
            "description": "General: Comment",
            "x-drofus-group": "General"
          },
          "equipment_list_type_id": {
            "title": "General: Item List Type ID",
            "type": "integer",
            "description": "General: Item List Type ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "existing_quantity": {
            "title": "General: Existing quantity",
            "type": "integer",
            "description": "General: Existing quantity",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "net_quantity": {
            "title": "General: Net Quantity",
            "type": "integer",
            "description": "General: Net Quantity",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "occurrence_name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "occurrence_responsibility": {
            "title": "General: Responsibility",
            "type": "string",
            "description": "General: Responsibility",
            "x-drofus-group": "General"
          },
          "ordered_quantity": {
            "title": "General: Quantity - Order",
            "type": "integer",
            "description": "General: Quantity - Order",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "product_id": {
            "title": "General: Product id",
            "type": "integer",
            "description": "General: Product id",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "received_quantity": {
            "title": "General: Quantity - Delivery",
            "type": "integer",
            "description": "General: Quantity - Delivery",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "room_id": {
            "title": "General: Room ID",
            "type": "integer",
            "description": "General: Room ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "run_no": {
            "title": "General: Serial Number",
            "type": "string",
            "description": "General: Serial Number",
            "x-drofus-group": "General"
          },
          "tender_quantity": {
            "title": "General: Quantity - Tender",
            "type": "integer",
            "description": "General: Quantity - Tender",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "tender_quantity_option": {
            "title": "General: Quantity - Tender - Option",
            "type": "integer",
            "description": "General: Quantity - Tender - Option",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "to_tender": {
            "title": "General: In Tender",
            "type": "boolean",
            "description": "General: In Tender",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "has_ifc_guids": {
              "title": "General: Has IFC GUIDs",
              "type": "boolean",
              "description": "General: Has IFC GUIDs",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "ifc_guids": {
              "title": "General: IFC GUIDs",
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "General: IFC GUIDs",
              "x-drofus-group": "General"
            },
            "is_sub_occurrence": {
              "title": "General: Is sub item",
              "type": "boolean",
              "description": "General: Is sub item",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "primary_system_id": {
              "title": "General: Primary System ID",
              "type": "integer",
              "description": "General: Primary System ID",
              "format": "int32",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "unique_quantity_id": {
              "title": "General: ID (text)",
              "type": "integer",
              "description": "General: ID (text)",
              "format": "int32",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "OccurrenceLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "occurrence_id": {
            "title": "General: Occurrence ID",
            "type": "integer",
            "description": "General: Occurrence ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "OccurrenceStatus": {
        "type": "object",
        "properties": {
          "occurrence_id": {
            "type": "integer",
            "description": "Occurrence id",
            "format": "int32"
          },
          "type_id": {
            "type": "integer",
            "description": "Status type id",
            "format": "int32"
          },
          "status_id": {
            "type": "integer",
            "description": "Status Id",
            "format": "int32",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "Status Code",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Status Name",
            "nullable": true
          },
          "due_date": {
            "type": "string",
            "description": "Status due date",
            "format": "date-time",
            "nullable": true
          },
          "parent_id": {
            "type": "integer",
            "description": "Status parent id",
            "format": "int32",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Description",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "OccurrenceStatus is response type for an occurrence status"
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "Product": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: Product id",
            "type": "integer",
            "description": "General: Product id",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "alternative_no": {
            "title": "General: Alternative #",
            "type": "string",
            "description": "General: Alternative #",
            "x-drofus-group": "General"
          },
          "comment": {
            "title": "General: Comment",
            "type": "string",
            "description": "General: Comment",
            "x-drofus-group": "General"
          },
          "currency": {
            "title": "General: Currency",
            "type": "string",
            "description": "General: Currency",
            "x-drofus-group": "General"
          },
          "fabricate": {
            "title": "General: Make",
            "type": "string",
            "description": "General: Make",
            "x-drofus-group": "General"
          },
          "gtin": {
            "title": "General: GTIN",
            "type": "string",
            "description": "General: GTIN",
            "x-drofus-group": "General"
          },
          "model": {
            "title": "General: Model",
            "type": "string",
            "description": "General: Model",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "no": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "x-drofus-group": "General"
          },
          "price": {
            "title": "General: Unit price",
            "type": "number",
            "description": "General: Unit price",
            "format": "currency",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "ProductLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "product_id": {
            "title": "General: Product id",
            "type": "integer",
            "description": "General: Product id",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "Project": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: Project ID",
            "type": "string",
            "description": "General: Project ID",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "constructor": {
            "title": "General: Construction Client",
            "type": "string",
            "description": "General: Construction Client",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "planned_gross_area": {
            "title": "Project Areas: Planned Gross area for the project",
            "type": "number",
            "description": "Project Areas: Planned Gross area for the project",
            "format": "double",
            "x-drofus-group": "Project Areas"
          },
          "project_designed_gross_area": {
            "title": "Designed Areas: Project (building) designed Gross",
            "type": "number",
            "description": "Designed Areas: Project (building) designed Gross",
            "format": "double",
            "x-drofus-group": "Designed Areas"
          },
          "project_gross_net_factor": {
            "title": "Project Areas: Project (building) Gross/Net factor",
            "type": "number",
            "description": "Project Areas: Project (building) Gross/Net factor",
            "format": "double",
            "x-drofus-group": "Project Areas"
          },
          "room_level_gross_net_factor": {
            "title": "Planned Areas: Default function Gross/Net factor",
            "type": "number",
            "description": "Planned Areas: Default function Gross/Net factor",
            "format": "double",
            "x-drofus-group": "Planned Areas"
          }
        },
        "additionalProperties": {
          "properties": {
            "room_level_gross_net_factor_as_percent": {
              "title": "Planned Areas: Default function Gross comp as % of Net",
              "type": "number",
              "description": "Planned Areas: Default function Gross comp as % of Net",
              "format": "double",
              "readOnly": true,
              "x-drofus-group": "Planned Areas"
            }
          }
        }
      },
      "PropertyMeta": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The property id. Use this in select query param",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name and description of the property",
            "nullable": true
          },
          "propertyGroup": {
            "type": "string",
            "description": "Grouping of the property",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "description": "The OpenApi type of the property",
            "nullable": true
          },
          "unit": {
            "$ref": "#/components/schemas/UnitTypes"
          }
        },
        "additionalProperties": false,
        "description": "Descriptor of an available attribute you can fetch from the API"
      },
      "Room": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: Room ID",
            "type": "integer",
            "description": "General: Room ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "architect_no": {
            "title": "General: Room Number",
            "type": "string",
            "description": "General: Room Number",
            "x-drofus-group": "General"
          },
          "ceiling_height": {
            "title": "Areas and Measurements: Ceiling Height",
            "type": "number",
            "description": "Areas and Measurements: Ceiling Height",
            "format": "double",
            "x-drofus-group": "Areas and Measurements"
          },
          "created": {
            "title": "Log History: Created",
            "type": "string",
            "description": "Log History: Created",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "Log History"
          },
          "deleted": {
            "title": "General: DELETED",
            "type": "boolean",
            "description": "General: DELETED",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Room Name Description",
            "type": "string",
            "description": "General: Room Name Description",
            "x-drofus-group": "General"
          },
          "designed_area": {
            "title": "Areas and Measurements: Designed Area",
            "type": "number",
            "description": "Areas and Measurements: Designed Area",
            "format": "double",
            "x-drofus-group": "Areas and Measurements"
          },
          "drawing_name": {
            "title": "General: Name on Drawing",
            "type": "string",
            "description": "General: Name on Drawing",
            "x-drofus-group": "General"
          },
          "drawing_no": {
            "title": "General: Additional Number",
            "type": "string",
            "description": "General: Additional Number",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Room Name",
            "type": "string",
            "description": "General: Room Name",
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "perimeter": {
            "title": "Areas and Measurements: Perimeter",
            "type": "number",
            "description": "Areas and Measurements: Perimeter",
            "format": "double",
            "x-drofus-group": "Areas and Measurements"
          },
          "programmed_area": {
            "title": "Areas and Measurements: Programmed Area",
            "type": "number",
            "description": "Areas and Measurements: Programmed Area",
            "format": "double",
            "x-drofus-group": "Areas and Measurements"
          },
          "project_id": {
            "title": "General: Project ID",
            "type": "string",
            "description": "General: Project ID",
            "x-drofus-group": "General"
          },
          "room_func_no": {
            "title": "General: Room Function #",
            "type": "string",
            "description": "General: Room Function #",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "room_function_id": {
            "title": "General: Room Function ID",
            "type": "integer",
            "description": "General: Room Function ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "user_room_no": {
            "title": "General: User Room Number",
            "type": "string",
            "description": "General: User Room Number",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "full_name": {
              "title": "General: Room Name and Room Description",
              "type": "string",
              "description": "General: Room Name and Room Description",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "RoomFunction": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "color": {
            "title": "General: Color",
            "type": "string",
            "description": "General: Color",
            "format": "color",
            "x-drofus-group": "General"
          },
          "designed_gross_area": {
            "title": "Designed Areas: Gross",
            "type": "number",
            "description": "Designed Areas: Gross",
            "format": "double",
            "x-drofus-group": "Designed Areas"
          },
          "full_room_level_no": {
            "title": "General: Full number",
            "type": "string",
            "description": "General: Full number",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "full_room_level_no_and_name": {
            "title": "General: Full number and name",
            "type": "string",
            "description": "General: Full number and name",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "gross_area": {
            "title": "Planned Areas: Gross",
            "type": "number",
            "description": "Planned Areas: Gross",
            "format": "double",
            "x-drofus-group": "Planned Areas"
          },
          "gross_net_factor": {
            "title": "Planned Areas: Gross/Net factor",
            "type": "number",
            "description": "Planned Areas: Gross/Net factor",
            "format": "double",
            "x-drofus-group": "Planned Areas"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "net_area": {
            "title": "Planned Areas: Net",
            "type": "number",
            "description": "Planned Areas: Net",
            "format": "double",
            "x-drofus-group": "Planned Areas"
          },
          "no": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "x-drofus-group": "General"
          },
          "parent": {
            "title": "General: Belongs to",
            "type": "integer",
            "description": "General: Belongs to",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "project_id": {
            "title": "General: Project ID",
            "type": "string",
            "description": "General: Project ID",
            "x-drofus-group": "General"
          },
          "room_level_depth": {
            "title": "General: Depth",
            "type": "integer",
            "description": "General: Depth",
            "format": "int32",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "function_structure_name": {
              "title": "General: Function Structure",
              "type": "string",
              "description": "General: Function Structure",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "gross_net_factor_as_percent": {
              "title": "Planned Areas: Gross comp as % of Net",
              "type": "number",
              "description": "Planned Areas: Gross comp as % of Net",
              "format": "double",
              "readOnly": true,
              "x-drofus-group": "Planned Areas"
            },
            "number_and_name": {
              "title": "General: Function",
              "type": "string",
              "description": "General: Function",
              "readOnly": true,
              "x-drofus-group": "General"
            },
            "parent_full_room_level_no": {
              "title": "General: Parent full number",
              "type": "string",
              "description": "General: Parent full number",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "RoomFunctionLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "level_id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "RoomGroup": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "classification_reference": {
            "title": "General: Reference",
            "type": "string",
            "description": "General: Reference",
            "x-drofus-group": "General"
          },
          "color": {
            "title": "General: Color",
            "type": "string",
            "description": "General: Color",
            "format": "color",
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "designed_gross_area": {
            "title": "General: Designed Gross Area",
            "type": "number",
            "description": "General: Designed Gross Area",
            "format": "double",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "planned_gross_area": {
            "title": "General: Planned Gross Area",
            "type": "number",
            "description": "General: Planned Gross Area",
            "format": "double",
            "x-drofus-group": "General"
          },
          "planned_gross_net_factor": {
            "title": "General: Planned Gross/Net factor",
            "type": "number",
            "description": "General: Planned Gross/Net factor",
            "format": "double",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "RoomGroupType": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "classification_type": {
            "title": "General: Type",
            "type": "string",
            "description": "General: Type",
            "x-drofus-group": "General"
          },
          "classification_url": {
            "title": "General: Url",
            "type": "string",
            "description": "General: Url",
            "x-drofus-group": "General"
          },
          "created": {
            "title": "General: Created",
            "type": "string",
            "description": "General: Created",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "enable_areas": {
            "title": "General: Enable areas",
            "type": "boolean",
            "description": "General: Enable areas",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "RoomGroupUpdate": {
        "type": "object",
        "properties": {
          "room_group_id": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "room_group_name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RoomLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "room_id": {
            "title": "General: Room ID",
            "type": "integer",
            "description": "General: Room ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "RoomTemplate": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: Template ID",
            "type": "integer",
            "description": "General: Template ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "created": {
            "title": "Log History: Created",
            "type": "string",
            "description": "Log History: Created",
            "format": "date-time",
            "readOnly": true,
            "x-drofus-group": "Log History"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Template Name",
            "type": "string",
            "description": "General: Template Name",
            "x-drofus-group": "General"
          },
          "note": {
            "title": "General: Note",
            "type": "string",
            "description": "General: Note",
            "x-drofus-group": "General"
          },
          "programmed_area": {
            "title": "General: Standard Area",
            "type": "number",
            "description": "General: Standard Area",
            "format": "double",
            "x-drofus-group": "General"
          },
          "room_func_no": {
            "title": "General: Code",
            "type": "string",
            "description": "General: Code",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "RoomTemplateLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "standard_room_id": {
            "title": "General: Template ID",
            "type": "integer",
            "description": "General: Template ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "StatusUpdate": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Status Code",
            "nullable": true
          },
          "status_id": {
            "type": "integer",
            "description": "Status Id. If set, status_code is ignored",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "StatusUpdate may have status code or status id when used as request body. If none set, value is cleared"
      },
      "SubItem": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "parent_id": {
            "title": "General: Sub item to",
            "type": "integer",
            "description": "General: Sub item to",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity_calculate": {
            "title": "General: Calculate Quantity",
            "type": "boolean",
            "description": "General: Calculate Quantity",
            "x-drofus-group": "General"
          },
          "sub_id": {
            "title": "General: Sub Item",
            "type": "integer",
            "description": "General: Sub Item",
            "format": "int32",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": false
      },
      "System": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "description": {
            "title": "General: Description",
            "type": "string",
            "description": "General: Description",
            "x-drofus-group": "General"
          },
          "guid": {
            "title": "General: GUID",
            "type": "string",
            "description": "General: GUID",
            "x-drofus-group": "General"
          },
          "name": {
            "title": "General: Name",
            "type": "string",
            "description": "General: Name",
            "x-drofus-group": "General"
          },
          "number": {
            "title": "General: Number",
            "type": "string",
            "description": "General: Number",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "run_no": {
            "title": "General: Serial Number",
            "type": "string",
            "description": "General: Serial Number",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "members_count": {
              "title": "General: Number of Occurrences",
              "type": "integer",
              "description": "General: Number of Occurrences",
              "format": "int32",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "SystemComponent": {
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/Occurrence"
          }
        ]
      },
      "SystemLog": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Log"
          },
          {
            "type": "object",
            "additionalProperties": { }
          }
        ],
        "properties": {
          "system_id": {
            "title": "General: System ID",
            "type": "integer",
            "description": "General: System ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "type": "object"
        }
      },
      "TemplateConnectionStatus": {
        "type": "object",
        "properties": {
          "template_connection_type": {
            "$ref": "#/components/schemas/TemplateConnectionType"
          },
          "room_template_id": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TemplateConnectionType": {
        "enum": [
          "NotCreated",
          "Unique",
          "FromTemplate",
          "DerivedFromTemplate"
        ],
        "type": "string"
      },
      "TemplateOccurrence": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "title": "General: ID",
            "type": "integer",
            "description": "General: ID",
            "format": "int32",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "comment": {
            "title": "General: Comment",
            "type": "string",
            "description": "General: Comment",
            "x-drofus-group": "General"
          },
          "equipment_list_type_id": {
            "title": "General: Item List Type ID",
            "type": "integer",
            "description": "General: Item List Type ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "item_id": {
            "title": "General: Item ID",
            "type": "integer",
            "description": "General: Item ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "parent_id": {
            "title": "General: Parent ID",
            "type": "integer",
            "description": "General: Parent ID",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "quantity": {
            "title": "General: Quantity",
            "type": "integer",
            "description": "General: Quantity",
            "format": "int32",
            "x-drofus-group": "General"
          },
          "room_template_id": {
            "title": "General: Template ID",
            "type": "integer",
            "description": "General: Template ID",
            "format": "int32",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "is_sub_occurrence": {
              "title": "General: Is sub item",
              "type": "boolean",
              "description": "General: Is sub item",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      },
      "UnitTypes": {
        "enum": [
          "Undefined",
          "Meters",
          "CentiMeters",
          "MilliMeters",
          "Feet",
          "Inches",
          "DeciMeters",
          "SquareMeters",
          "SquareFeet",
          "SquareCentiMeters",
          "SquareMilliMeters",
          "SquareInches",
          "Acres",
          "Hectares",
          "CubicMeters",
          "CubicDeciMeters",
          "CubicFeet",
          "CubicCentiMeters",
          "CubicMilliMeters",
          "Liters",
          "GallonsUs",
          "CubicInches",
          "CubicYards",
          "Pascals",
          "NewtonsPerSquareMeter",
          "KiloNewtonsPerSquareMeter",
          "Bars",
          "KiloPascals",
          "MegaPascals",
          "KiloGramsPerSquareMeter",
          "TonnesPerSquareMeter",
          "PoundsPerSquareFoot",
          "Seconds",
          "Minutes",
          "Hours",
          "MilliSeconds",
          "Celcius",
          "Kelvin",
          "Fahrenheit",
          "Watts",
          "Volts",
          "Amperes",
          "Hertz",
          "RelativeHumidityPercentage",
          "Count",
          "Percentage",
          "Currency",
          "Grams",
          "KiloGrams",
          "Tonnes",
          "Pounds",
          "TonnesUs",
          "KiloWatts",
          "BritishThermalUnitsPerHour",
          "BritishThermalUnitsPerSecond",
          "WattsPerSquareMeterKelvin",
          "BritishThermalUnitsPerHourSquareFootFahrenheit",
          "LitersPerSecond",
          "CubicFeetPerMinute",
          "CubicMetersPerSecond",
          "CubicMetersPerHour",
          "GallonsUsPerMinute",
          "GallonsUsPerHour",
          "KiloVolts",
          "MilliVolts",
          "KiloAmperes",
          "MilliAmperes",
          "DecimalDegrees",
          "DegreesMinutesSeconds",
          "Radians",
          "Grads",
          "KiloGramsPerCubicMeter",
          "PoundsPerCubicFoot",
          "PoundsPerCubicInch",
          "KiloNewtonsPerCubicMeter",
          "Newtons",
          "KiloNewtons",
          "NewtonsPerMeter",
          "KiloNewtonsPerMeter",
          "KiloGramsPerMeter",
          "TonnesPerMeter",
          "PoundsPerFoot",
          "NewtonMeters",
          "KiloNewtonMeters",
          "KiloGramMeters",
          "TonneMeters",
          "PoundFeet",
          "NewtonMetersPerMeter",
          "KiloNewtonMetersPerMeter",
          "KiloGramMetersPerMeter",
          "TonneMetersPerMeter",
          "PoundFeetPerFoot",
          "MetersPerSecond",
          "KiloMetersPerHour",
          "FeetPerSecond",
          "MilesPerHour",
          "MetersPerSecondSquared",
          "KiloMetersPerSecondSquared",
          "InchesPerSecondSquared",
          "FeetPerSecondSquared",
          "MilesPerSecondSquared",
          "Joules",
          "KiloJoules",
          "PascalsPerMeter",
          "WattsPerSquareMeter",
          "WattsPerSquareFoot",
          "BritishThermalUnitsPerHourSquareFoot",
          "Atmospheres",
          "PascalSeconds",
          "PoundsPerFootSecond",
          "PoundsPerFootHour",
          "LitersPerSecondSquareMeter",
          "CubicFeetPerMinuteSquareFoot",
          "WattsPerCubicMeter",
          "WattsPerCubicFoot",
          "BritishThermalUnitsPerHourCubicFoot",
          "CyclesPerSecond",
          "CubicFeetPerMinuteCubicFoot",
          "LitersPerSecondCubicMeter",
          "Lux",
          "Footcandles",
          "CandelasPerSquareMeter",
          "Footlamberts",
          "Lumens",
          "Candelas",
          "LumensPerWatt",
          "VoltAmperes",
          "KiloVoltAmperes",
          "OhmMeters",
          "KiloWattHours",
          "BritishThermalUnits",
          "SquareMeterKelvinPerWatt",
          "HourSquareFootFahrenheitPerBritishThermalUnit",
          "JoulesPerKelvin",
          "KiloJoulesPerKelvin",
          "BritishThermalUnitsPerFahrenheit",
          "WattsPerMeterKelvin",
          "BritishThermalUnitsPerHourFootFahrenheit",
          "JoulesPerGramCelcius",
          "JoulesPerKiloGramCelcius",
          "BritishThermalUnitsPerPoundFahrenheit",
          "JoulesPerGram",
          "BritishThermalUnitsPerPound",
          "NanoGramsPerPascalSecondSquareMeter",
          "GrainsPerHourSquareFootInchMercury",
          "KilogramsPerSecond",
          "KilogramsPerHour",
          "MilliPascalSeconds"
        ],
        "type": "string"
      },
      "User": {
        "required": [
          "username"
        ],
        "type": "object",
        "properties": {
          "username": {
            "title": "General: Username",
            "type": "string",
            "description": "General: Username",
            "readOnly": true,
            "x-drofus-group": "General"
          },
          "email": {
            "title": "General: Email",
            "type": "string",
            "description": "General: Email",
            "x-drofus-group": "General"
          },
          "first_name": {
            "title": "General: First name",
            "type": "string",
            "description": "General: First name",
            "x-drofus-group": "General"
          },
          "last_name": {
            "title": "General: Surname",
            "type": "string",
            "description": "General: Surname",
            "x-drofus-group": "General"
          }
        },
        "additionalProperties": {
          "properties": {
            "full_name": {
              "title": "General: Full name",
              "type": "string",
              "description": "General: Full name",
              "readOnly": true,
              "x-drofus-group": "General"
            }
          }
        }
      }
    },
    "parameters": {
      "$select": {
        "name": "$select",
        "in": "query",
        "description": "Comma-separated list of fields to return",
        "style": "simple",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "$orderby": {
        "name": "$orderby",
        "in": "query",
        "description": "How to sort result. Comma separated list of fields, each optionally marked with asc or desc, ie. $orderBy=id desc,name asc",
        "style": "simple",
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "$filter": {
        "name": "$filter",
        "in": "query",
        "description": "How to filter result. Ie. _name eq 'Storage'_.\r\n            \r\nThe literal values can be strings enclosed in single quotes, numbers (with . as decimal separator) and boolean values (true or false).\r\n            \r\nSimple operators supported:\r\n'eq', 'ne', 'lt', 'gt', 'le', 'ge' and 'in'\r\n            \r\nFunctions supported:\r\n'contains', 'notcontains', 'startswith' and 'endswith'\r\n            \r\nOperators 'and' and 'or' can be used to combine expressions. Use parentheses if needed to group expressions.\r\n            \r\nThe 'in' operand MUST be a comma-separated list of primitive values enclosed in parentheses.\r\n            \r\nExample usage\r\n* 'eq' - Name eq 'dRofus'\r\n* 'in' - Address in ('Redmond', 'London')\r\n* 'contains' - contains(CompanyName,'freds')\r\n* 'notcontains' - notcontains(CompanyName,'freds')\r\n* 'startswith' - startswith(Name, 'dR')\r\n* 'endswith' - endswith(Name, 'fus')\r\n            \r\nSpecify literal 'null' (without quotes) to search for item equal to or not equal to null.\r\nQuotes in strings must be represented as two consecutive quotes, ie name eq 'O''Brian'",
        "schema": {
          "type": "string"
        }
      },
      "$top": {
        "name": "$top",
        "in": "query",
        "description": "Number of items to return",
        "schema": {
          "type": "integer",
          "format": "int32",
          "default": 10000
        }
      },
      "$skip": {
        "name": "$skip",
        "in": "query",
        "description": "Number of items to skip",
        "schema": {
          "type": "integer",
          "format": "int32"
        }
      },
      "db": {
        "name": "db",
        "in": "path",
        "description": "Database to connect to.",
        "required": true,
        "schema": {
          "type": "string"
        }
      },
      "pr": {
        "name": "pr",
        "in": "path",
        "description": "Project to connect to.",
        "required": true,
        "schema": {
          "type": "string"
        }
      }
    }
  }
}