diff --git a/swagger/analyse/api.yaml b/swagger/analyse/api.yaml
index 7f40ece861f2be0655618f639640a1f70eccf006..aef1127bf055a270b0a74b97b89afa0e78324dd4 100644
--- a/swagger/analyse/api.yaml
+++ b/swagger/analyse/api.yaml
@@ -1 +1 @@
-{"definitions":{},"externalDocs":{"description":"Sourcecode Documentation","url":"https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services"},"info":{"contact":{"email":"andreas.rauber@tuwien.ac.at","name":"Prof. Andreas Rauber"},"description":"Service that analyses data structures","license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"},"title":"Database Repository Analyse Service API","version":"1.2.0"},"openapi":"3.0.0","paths":{"/api/analyse/determinedt":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the datatypes of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"enum":{"example":true,"type":"boolean"},"enum_tol":{"example":0.1},"filepath":{"example":"/data/testdt08.csv","type":"string"},"separator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine datatypes"}},"/api/analyse/determinepk":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the primary keys + ranking of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"filepath":{"example":"/data/testdt08.csv","type":"string"},"seperator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine primary keys"}}},"servers":[{"description":"Generated server url","url":"http://localhost:5000"},{"description":"Sandbox","url":"https://dbrepo2.tuwien.ac.at"}]}
+{"definitions":{},"externalDocs":{"description":"Sourcecode Documentation","url":"https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services"},"info":{"contact":{"email":"andreas.rauber@tuwien.ac.at","name":"Prof. Andreas Rauber"},"description":"Service that analyses data structures","license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"},"title":"Database Repository Analyse Service API","version":"1.3.0"},"openapi":"3.0.0","paths":{"/api/analyse/determinedt":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the datatypes of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"enum":{"example":true,"type":"boolean"},"enum_tol":{"example":0.1},"filepath":{"example":"/data/testdt08.csv","type":"string"},"separator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine datatypes"}},"/api/analyse/determinepk":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the primary keys + ranking of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"filepath":{"example":"/data/testdt08.csv","type":"string"},"seperator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine primary keys"}}},"servers":[{"description":"Generated server url","url":"http://localhost:5000"},{"description":"Sandbox","url":"https://dbrepo2.tuwien.ac.at"}]}
diff --git a/swagger/api-analyse.yaml b/swagger/api-analyse.yaml
index 7f40ece861f2be0655618f639640a1f70eccf006..aef1127bf055a270b0a74b97b89afa0e78324dd4 100644
--- a/swagger/api-analyse.yaml
+++ b/swagger/api-analyse.yaml
@@ -1 +1 @@
-{"definitions":{},"externalDocs":{"description":"Sourcecode Documentation","url":"https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services"},"info":{"contact":{"email":"andreas.rauber@tuwien.ac.at","name":"Prof. Andreas Rauber"},"description":"Service that analyses data structures","license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"},"title":"Database Repository Analyse Service API","version":"1.2.0"},"openapi":"3.0.0","paths":{"/api/analyse/determinedt":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the datatypes of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"enum":{"example":true,"type":"boolean"},"enum_tol":{"example":0.1},"filepath":{"example":"/data/testdt08.csv","type":"string"},"separator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine datatypes"}},"/api/analyse/determinepk":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the primary keys + ranking of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"filepath":{"example":"/data/testdt08.csv","type":"string"},"seperator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine primary keys"}}},"servers":[{"description":"Generated server url","url":"http://localhost:5000"},{"description":"Sandbox","url":"https://dbrepo2.tuwien.ac.at"}]}
+{"definitions":{},"externalDocs":{"description":"Sourcecode Documentation","url":"https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services"},"info":{"contact":{"email":"andreas.rauber@tuwien.ac.at","name":"Prof. Andreas Rauber"},"description":"Service that analyses data structures","license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"},"title":"Database Repository Analyse Service API","version":"1.3.0"},"openapi":"3.0.0","paths":{"/api/analyse/determinedt":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the datatypes of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"enum":{"example":true,"type":"boolean"},"enum_tol":{"example":0.1},"filepath":{"example":"/data/testdt08.csv","type":"string"},"separator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine datatypes"}},"/api/analyse/determinepk":{"post":{"consumes":["application/json"],"description":"This is a simple API which returns the primary keys + ranking of a (path) csv file","parameters":[{"description":"to-do description","in":"body","name":"body","required":true,"schema":{"properties":{"filepath":{"example":"/data/testdt08.csv","type":"string"},"seperator":{"example":",","type":"string"}},"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"},"405":{"description":"Invalid input"}},"summary":"Determine primary keys"}}},"servers":[{"description":"Generated server url","url":"http://localhost:5000"},{"description":"Sandbox","url":"https://dbrepo2.tuwien.ac.at"}]}
diff --git a/swagger/api-container.yaml b/swagger/api-container.yaml
deleted file mode 100644
index 2102e2f63cab2048d1c546149d233b3c141faf6d..0000000000000000000000000000000000000000
--- a/swagger/api-container.yaml
+++ /dev/null
@@ -1,2410 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Container Service API
-  description: Service that manages the containers
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9092
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/image/{id}:
-    get:
-      tags:
-      - image-endpoint
-      summary: Find some image
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Found image
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - image-endpoint
-      summary: Update some image
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImageChangeDto'
-        required: true
-      responses:
-        "202":
-          description: Updated image successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - image-endpoint
-      summary: Delete some image
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted image successfully
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}:
-    get:
-      tags:
-      - container-endpoint
-      summary: Find some container
-      operationId: findById_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found container
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerDto'
-        "404":
-          description: Container image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - container-endpoint
-      summary: Modify some container
-      operationId: modify
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ContainerChangeDto'
-        required: true
-      responses:
-        "409":
-          description: Container is already started/stopped
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Container or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Modification of container state is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Modified state of container successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerBriefDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - container-endpoint
-      summary: Delete some container
-      operationId: delete_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "410":
-          description: Container is already removed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Container is still running
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Deleted container successfully
-      security:
-      - bearerAuth: []
-  /api/image:
-    get:
-      tags:
-      - image-endpoint
-      summary: Find all images
-      operationId: findAll
-      responses:
-        "200":
-          description: List images
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ContainerImage'
-    post:
-      tags:
-      - image-endpoint
-      summary: Create image
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImageCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created image
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: User could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Image specification is invalid
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Image already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container:
-    get:
-      tags:
-      - container-endpoint
-      summary: Find all containers
-      operationId: findAll_1
-      parameters:
-      - name: limit
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int32
-      responses:
-        "200":
-          description: List containers
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ContainerBriefDto'
-    post:
-      tags:
-      - container-endpoint
-      summary: Create container
-      operationId: create_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ContainerCreateRequestDto'
-        required: true
-      responses:
-        "201":
-          description: Created a new container
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerBriefDto'
-        "404":
-          description: Container image or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Container name already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ImageChangeDto:
-      required:
-      - dialect
-      - driver_class
-      - jdbc_method
-      - registry
-      type: object
-      properties:
-        registry:
-          type: string
-          example: docker.io/library
-        defaultPort:
-          maximum: 65535
-          minimum: 1024
-          type: integer
-          format: int32
-          example: 5432
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageEnvItemDto'
-        dialect:
-          type: string
-          example: Postgres
-        driver_class:
-          type: string
-          example: org.postgresql.Driver
-        jdbc_method:
-          type: string
-          example: postgresql
-    ImageEnvItemDto:
-      required:
-      - iid
-      - key
-      - type
-      type: object
-      properties:
-        iid:
-          type: integer
-          format: int64
-        key:
-          type: string
-          example: MARIADB_ROOT_PASSWORD
-        type:
-          type: string
-          example: PRIVILEGED_PASSWORD
-          enum:
-          - username
-          - password
-          - privileged_username
-          - privileged_password
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ContainerChangeDto:
-      required:
-      - action
-      type: object
-      properties:
-        action:
-          type: string
-          enum:
-          - start
-          - stop
-    ContainerBriefDto:
-      required:
-      - creator
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        running:
-          type: boolean
-          example: true
-        database:
-          $ref: '#/components/schemas/DatabaseBriefDto'
-        created:
-          type: string
-          format: date-time
-        internal_name:
-          type: string
-          example: air-quality
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    DatabaseBriefDto:
-      required:
-      - id
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        engine:
-          type: string
-          example: mariadb:10.5
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        container:
-          $ref: '#/components/schemas/ContainerBriefDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        is_public:
-          type: boolean
-          example: true
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ImageCreateDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-        dialect:
-          type: string
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageEnvItemDto'
-        driver_class:
-          type: string
-        jdbc_method:
-          type: string
-        default_port:
-          maximum: 65535
-          minimum: 1024
-          type: integer
-          format: int32
-    ContainerCreateRequestDto:
-      required:
-      - name
-      - repository
-      - tag
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    Constraints:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            $ref: '#/components/schemas/Unique'
-        foreignKeys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKey'
-        checks:
-          uniqueItems: true
-          type: array
-          items:
-            type: string
-    Container:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        ownedBy:
-          type: string
-          format: uuid
-        owner:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        internalName:
-          type: string
-        hash:
-          type: string
-        imageId:
-          type: integer
-          format: int64
-        port:
-          type: integer
-          format: int32
-        database:
-          $ref: '#/components/schemas/Database'
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        ipAddress:
-          type: string
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ContainerImage:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        repository:
-          type: string
-        registry:
-          type: string
-        tag:
-          type: string
-        driverClass:
-          type: string
-        dialect:
-          type: string
-        jdbcMethod:
-          type: string
-        hash:
-          type: string
-        compiled:
-          type: string
-          format: date-time
-        size:
-          type: integer
-          format: int64
-        defaultPort:
-          type: integer
-          format: int32
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerImageEnvironmentItem'
-        dateFormats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerImageDate'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Container'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ContainerImageDate:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        example:
-          type: string
-        hasTime:
-          type: boolean
-        databaseFormat:
-          type: string
-        unixFormat:
-          type: string
-        createdAt:
-          type: string
-          format: date-time
-    ContainerImageEnvironmentItem:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        key:
-          type: string
-        value:
-          type: string
-        type:
-          type: string
-          enum:
-          - USERNAME
-          - PASSWORD
-          - PRIVILEGED_USERNAME
-          - PRIVILEGED_PASSWORD
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    Creator:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        pid:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-        lastname:
-          type: string
-        affiliation:
-          type: string
-        orcid:
-          type: string
-        identifier:
-          $ref: '#/components/schemas/Identifier'
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/User'
-        lastModified:
-          type: string
-          format: date-time
-    Credential:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        type:
-          type: string
-        userId:
-          type: string
-          format: uuid
-        createdDate:
-          type: integer
-          format: int64
-        secretData:
-          type: string
-        credentialData:
-          type: string
-        priority:
-          type: integer
-          format: int32
-        user:
-          $ref: '#/components/schemas/User'
-    Database:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        ownedBy:
-          type: string
-          format: uuid
-        owner:
-          $ref: '#/components/schemas/User'
-        container:
-          $ref: '#/components/schemas/Container'
-        name:
-          type: string
-        internalName:
-          type: string
-        exchangeName:
-          type: string
-        description:
-          type: string
-        contactPerson:
-          type: string
-          format: uuid
-        contact:
-          $ref: '#/components/schemas/User'
-        identifier:
-          $ref: '#/components/schemas/Identifier'
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/Table'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/View'
-        isPublic:
-          type: boolean
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ForeignKey:
-      type: object
-      properties:
-        fkid:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        table:
-          $ref: '#/components/schemas/Table'
-        rtid:
-          type: integer
-          format: int64
-        rtdbid:
-          type: integer
-          format: int64
-        referencedTable:
-          $ref: '#/components/schemas/Table'
-        references:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyReference'
-        onUpdate:
-          type: string
-          enum:
-          - ReferenceType.RESTRICT
-          - ReferenceType.CASCADE
-          - ReferenceType.SET_NULL
-          - ReferenceType.NO_ACTION
-          - ReferenceType.SET_DEFAULT
-        onDelete:
-          type: string
-          enum:
-          - ReferenceType.RESTRICT
-          - ReferenceType.CASCADE
-          - ReferenceType.SET_NULL
-          - ReferenceType.NO_ACTION
-          - ReferenceType.SET_DEFAULT
-    ForeignKeyReference:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        foreignKey:
-          $ref: '#/components/schemas/ForeignKey'
-        column:
-          $ref: '#/components/schemas/TableColumn'
-        referencedColumn:
-          $ref: '#/components/schemas/TableColumn'
-    Identifier:
-      required:
-      - publisher
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        containerId:
-          type: integer
-          format: int64
-        databaseId:
-          type: integer
-          format: int64
-        queryId:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/User'
-        title:
-          type: string
-        description:
-          type: string
-        publisher:
-          type: string
-        language:
-          type: string
-          enum:
-          - LanguageType.AB
-          - LanguageType.AA
-          - LanguageType.AF
-          - LanguageType.AK
-          - LanguageType.SQ
-          - LanguageType.AM
-          - LanguageType.AR
-          - LanguageType.AN
-          - LanguageType.HY
-          - LanguageType.AS
-          - LanguageType.AV
-          - LanguageType.AE
-          - LanguageType.AY
-          - LanguageType.AZ
-          - LanguageType.BM
-          - LanguageType.BA
-          - LanguageType.EU
-          - LanguageType.BE
-          - LanguageType.BN
-          - LanguageType.BH
-          - LanguageType.BI
-          - LanguageType.BS
-          - LanguageType.BR
-          - LanguageType.BG
-          - LanguageType.MY
-          - LanguageType.CA
-          - LanguageType.KM
-          - LanguageType.CH
-          - LanguageType.CE
-          - LanguageType.NY
-          - LanguageType.ZH
-          - LanguageType.CU
-          - LanguageType.CV
-          - LanguageType.KW
-          - LanguageType.CO
-          - LanguageType.CR
-          - LanguageType.HR
-          - LanguageType.CS
-          - LanguageType.DA
-          - LanguageType.DV
-          - LanguageType.NL
-          - LanguageType.DZ
-          - LanguageType.EN
-          - LanguageType.EO
-          - LanguageType.ET
-          - LanguageType.EE
-          - LanguageType.FO
-          - LanguageType.FJ
-          - LanguageType.FI
-          - LanguageType.FR
-          - LanguageType.FF
-          - LanguageType.GD
-          - LanguageType.GL
-          - LanguageType.LG
-          - LanguageType.KA
-          - LanguageType.DE
-          - LanguageType.KI
-          - LanguageType.EL
-          - LanguageType.KL
-          - LanguageType.GN
-          - LanguageType.GU
-          - LanguageType.HT
-          - LanguageType.HA
-          - LanguageType.HE
-          - LanguageType.HZ
-          - LanguageType.HI
-          - LanguageType.HO
-          - LanguageType.HU
-          - LanguageType.IS
-          - LanguageType.IO
-          - LanguageType.IG
-          - LanguageType.ID
-          - LanguageType.IA
-          - LanguageType.IE
-          - LanguageType.IU
-          - LanguageType.IK
-          - LanguageType.GA
-          - LanguageType.IT
-          - LanguageType.JA
-          - LanguageType.JV
-          - LanguageType.KN
-          - LanguageType.KR
-          - LanguageType.KS
-          - LanguageType.KK
-          - LanguageType.RW
-          - LanguageType.KV
-          - LanguageType.KG
-          - LanguageType.KO
-          - LanguageType.KJ
-          - LanguageType.KU
-          - LanguageType.KY
-          - LanguageType.LO
-          - LanguageType.LA
-          - LanguageType.LV
-          - LanguageType.LB
-          - LanguageType.LI
-          - LanguageType.LN
-          - LanguageType.LT
-          - LanguageType.LU
-          - LanguageType.MK
-          - LanguageType.MG
-          - LanguageType.MS
-          - LanguageType.ML
-          - LanguageType.MT
-          - LanguageType.GV
-          - LanguageType.MI
-          - LanguageType.MR
-          - LanguageType.MH
-          - LanguageType.RO
-          - LanguageType.MN
-          - LanguageType.NA
-          - LanguageType.NV
-          - LanguageType.ND
-          - LanguageType.NG
-          - LanguageType.NE
-          - LanguageType.SE
-          - LanguageType.NO
-          - LanguageType.NB
-          - LanguageType.NN
-          - LanguageType.II
-          - LanguageType.OC
-          - LanguageType.OJ
-          - LanguageType.OR
-          - LanguageType.OM
-          - LanguageType.OS
-          - LanguageType.PI
-          - LanguageType.PA
-          - LanguageType.PS
-          - LanguageType.FA
-          - LanguageType.PL
-          - LanguageType.PT
-          - LanguageType.QU
-          - LanguageType.RM
-          - LanguageType.RN
-          - LanguageType.RU
-          - LanguageType.SM
-          - LanguageType.SG
-          - LanguageType.SA
-          - LanguageType.SC
-          - LanguageType.SR
-          - LanguageType.SN
-          - LanguageType.SD
-          - LanguageType.SI
-          - LanguageType.SK
-          - LanguageType.SL
-          - LanguageType.SO
-          - LanguageType.ST
-          - LanguageType.NR
-          - LanguageType.ES
-          - LanguageType.SU
-          - LanguageType.SW
-          - LanguageType.SS
-          - LanguageType.SV
-          - LanguageType.TL
-          - LanguageType.TY
-          - LanguageType.TG
-          - LanguageType.TA
-          - LanguageType.TT
-          - LanguageType.TE
-          - LanguageType.TH
-          - LanguageType.BO
-          - LanguageType.TI
-          - LanguageType.TO
-          - LanguageType.TS
-          - LanguageType.TN
-          - LanguageType.TR
-          - LanguageType.TK
-          - LanguageType.TW
-          - LanguageType.UG
-          - LanguageType.UK
-          - LanguageType.UR
-          - LanguageType.UZ
-          - LanguageType.VE
-          - LanguageType.VI
-          - LanguageType.VO
-          - LanguageType.WA
-          - LanguageType.CY
-          - LanguageType.FY
-          - LanguageType.WO
-          - LanguageType.XH
-          - LanguageType.YI
-          - LanguageType.YO
-          - LanguageType.ZA
-          - LanguageType.ZU
-        license:
-          $ref: '#/components/schemas/License'
-        type:
-          type: string
-          enum:
-          - DATABASE
-          - SUBSET
-        query:
-          type: string
-        queryNormalized:
-          type: string
-        queryHash:
-          type: string
-        resultHash:
-          type: string
-        execution:
-          type: string
-          format: date-time
-        resultNumber:
-          type: integer
-          format: int64
-        publicationYear:
-          type: integer
-          format: int32
-        publicationMonth:
-          type: integer
-          format: int32
-        publicationDay:
-          type: integer
-          format: int32
-        visibility:
-          type: string
-          enum:
-          - VisibilityType.EVERYONE
-          - VisibilityType.SELF
-        database:
-          $ref: '#/components/schemas/Database'
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifier'
-        doi:
-          type: string
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/Creator'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    License:
-      type: object
-      properties:
-        identifier:
-          type: string
-        uri:
-          type: string
-    RelatedIdentifier:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        value:
-          type: string
-        type:
-          type: string
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        creator:
-          $ref: '#/components/schemas/User'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    Role:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        name:
-          type: string
-        realmId:
-          type: string
-          format: uuid
-        users:
-          type: array
-          items:
-            $ref: '#/components/schemas/User'
-    Table:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/User'
-        owner:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        internalName:
-          type: string
-        queueName:
-          type: string
-        routingKey:
-          type: string
-        description:
-          type: string
-        database:
-          $ref: '#/components/schemas/Database'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-        constraints:
-          $ref: '#/components/schemas/Constraints'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    TableColumn:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        cdbid:
-          type: integer
-          format: int64
-        dfid:
-          type: integer
-          format: int64
-        dateFormat:
-          $ref: '#/components/schemas/ContainerImageDate'
-        table:
-          $ref: '#/components/schemas/Table'
-        view:
-          $ref: '#/components/schemas/View'
-        creator:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        autoGenerated:
-          type: boolean
-        internalName:
-          type: string
-        isPrimaryKey:
-          type: boolean
-        indexLength:
-          type: integer
-          format: int32
-        alias:
-          type: string
-        columnType:
-          type: string
-          enum:
-          - TableColumnType.ENUM
-          - TableColumnType.NUMBER
-          - TableColumnType.DECIMAL
-          - TableColumnType.STRING
-          - TableColumnType.TEXT
-          - TableColumnType.BOOLEAN
-          - TableColumnType.DATE
-          - TableColumnType.TIMESTAMP
-          - TableColumnType.BLOB
-        length:
-          type: integer
-          format: int32
-        isNullAllowed:
-          type: boolean
-        enumValues:
-          type: array
-          items:
-            type: string
-        ordinalPosition:
-          type: integer
-          format: int32
-        created:
-          type: string
-          format: date-time
-        concept:
-          $ref: '#/components/schemas/TableColumnConcept'
-        unit:
-          $ref: '#/components/schemas/TableColumnUnit'
-        lastModified:
-          type: string
-          format: date-time
-    TableColumnConcept:
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    TableColumnUnit:
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    Unique:
-      type: object
-      properties:
-        uid:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        table:
-          $ref: '#/components/schemas/Table'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    User:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        username:
-          type: string
-        firstname:
-          type: string
-        lastname:
-          type: string
-        realmId:
-          type: string
-          format: uuid
-        email:
-          type: string
-        emailVerified:
-          type: boolean
-        enabled:
-          type: boolean
-        createdTimestamp:
-          type: integer
-          format: int64
-        databasePassword:
-          type: string
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttribute'
-        credentials:
-          type: array
-          items:
-            $ref: '#/components/schemas/Credential'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Container'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/Database'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Identifier'
-        roles:
-          type: array
-          items:
-            $ref: '#/components/schemas/Role'
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/Table'
-    UserAttribute:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        userId:
-          type: string
-          format: uuid
-        name:
-          type: string
-        value:
-          type: string
-        user:
-          $ref: '#/components/schemas/User'
-    View:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vcid:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        database:
-          $ref: '#/components/schemas/Database'
-        name:
-          type: string
-        internalName:
-          type: string
-        isPublic:
-          type: boolean
-        isInitialView:
-          type: boolean
-        query:
-          type: string
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-database.yaml b/swagger/api-database.yaml
deleted file mode 100644
index 40b76995cc7f1fb0776ba1cd9e7dabb012ca377f..0000000000000000000000000000000000000000
--- a/swagger/api-database.yaml
+++ /dev/null
@@ -1,1626 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Database Service API
-  description: Service that manages the databases
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9092
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/visibility:
-    put:
-      tags:
-      - database-endpoint
-      summary: Update database
-      operationId: visibility
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseModifyVisibilityDto'
-        required: true
-      responses:
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Visibility modified successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-        "405":
-          description: Visibility modification is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/transfer:
-    put:
-      tags:
-      - database-endpoint
-      summary: Transfer database
-      operationId: transfer
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseTransferDto'
-        required: true
-      responses:
-        "202":
-          description: Transfer of ownership was successful
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Transfer of ownership is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/access/{username}:
-    put:
-      tags:
-      - access-endpoint
-      summary: Modify access to some database
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: username
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseModifyAccessDto'
-        required: true
-      responses:
-        "404":
-          description: Database or user not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Modify access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modify access succeeded
-        "403":
-          description: Modify access not permitted when no access is granted in the
-            first place
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - access-endpoint
-      summary: Revoke access to some database
-      operationId: revoke
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: username
-        in: path
-        required: true
-        schema:
-          type: string
-      responses:
-        "404":
-          description: User with access was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Modify access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Revoke of access not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Revoke of access not permitted as no access was found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Revoked access successfully
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database:
-    get:
-      tags:
-      - database-endpoint
-      summary: List databases
-      operationId: list
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List of databases
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/DatabaseBriefDto'
-    post:
-      tags:
-      - database-endpoint
-      summary: Create database
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created a new database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseBriefDto'
-        "404":
-          description: "Container, user or database could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Failed to create user at broker service or virtual host could
-            not be reached at broker service
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Database create permission is missing or grant permissions
-            at broker service failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Container image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Connection to the container failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Database create query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Database name already exist or query store could not be created
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/access:
-    get:
-      tags:
-      - access-endpoint
-      summary: Check access to some database
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "403":
-          description: No access to this database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found database access
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseAccessDto'
-        "405":
-          description: Check access is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - access-endpoint
-      summary: Give access to some database
-      operationId: create_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseGiveAccessDto'
-        required: true
-      responses:
-        "202":
-          description: Granting access succeeded
-        "405":
-          description: Granting access not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Granting access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or user not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}:
-    get:
-      tags:
-      - database-endpoint
-      summary: Find some database
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Database information is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or container could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Database found successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - database-endpoint
-      summary: Delete some database
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "400":
-          description: Database delete query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Container or database could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Database delete permission is missing or revoke permissions
-            at broker service failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Container image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Failed to delete user at broker service or virtual host could
-            not be reached at broker service
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Connection to the container failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Deleted a database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseBriefDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/license:
-    get:
-      tags:
-      - license-endpoint
-      summary: Get all licenses
-      operationId: list_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List of licenses
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/LicenseDto'
-components:
-  schemas:
-    DatabaseModifyVisibilityDto:
-      required:
-      - is_public
-      type: object
-      properties:
-        is_public:
-          type: boolean
-          example: true
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    DatabaseTransferDto:
-      required:
-      - username
-      type: object
-      properties:
-        username:
-          type: string
-    DatabaseModifyAccessDto:
-      required:
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-    DatabaseCreateDto:
-      required:
-      - is_public
-      - name
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        is_public:
-          type: boolean
-          example: true
-    ContainerBriefDto:
-      required:
-      - creator
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        running:
-          type: boolean
-          example: true
-        database:
-          $ref: '#/components/schemas/DatabaseBriefDto'
-        created:
-          type: string
-          format: date-time
-        internal_name:
-          type: string
-          example: air-quality
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    DatabaseBriefDto:
-      required:
-      - id
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        engine:
-          type: string
-          example: mariadb:10.5
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        container:
-          $ref: '#/components/schemas/ContainerBriefDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        is_public:
-          type: boolean
-          example: true
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    DatabaseGiveAccessDto:
-      required:
-      - type
-      - username
-      type: object
-      properties:
-        username:
-          type: string
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-identifier.yaml b/swagger/api-identifier.yaml
deleted file mode 100644
index 002b392bb6df32db0e8153596b5d397297ffb6af..0000000000000000000000000000000000000000
--- a/swagger/api-identifier.yaml
+++ /dev/null
@@ -1,1333 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Identifier Service API
-  description: Service that manages the identifiers
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9096
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/pid/{id}:
-    put:
-      tags:
-      - persistence-endpoint
-      summary: Update some identifier
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/IdentifierUpdateDto'
-        required: true
-      responses:
-        "405":
-          description: Updating identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Updated identifier
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-        "404":
-          description: Identifier or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Identifier data is not valid to the form
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Updating identifier not allowed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - persistence-endpoint
-      summary: Delete some identifier
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Identifier could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Deleting identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Deleted identifier
-      security:
-      - bearerAuth: []
-  /api/identifier:
-    get:
-      tags:
-      - identifier-endpoint
-      summary: Find identifiers
-      operationId: list
-      parameters:
-      - name: dbid
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: qid
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: type
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - database
-          - subset
-      responses:
-        "200":
-          description: List identifiers
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/IdentifierDto'
-    post:
-      tags:
-      - identifier-endpoint
-      summary: Create identifier
-      operationId: create
-      parameters:
-      - name: Authorization
-        in: header
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/IdentifierCreateDto'
-        required: true
-      responses:
-        "406":
-          description: Creating identifier not allowed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Identifier form contains invalid request data
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Query information could not be retrieved
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created identifier
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-        "403":
-          description: Insufficient access rights or authorities
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Creating identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Identifier for this resource already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/pid/{pid}:
-    get:
-      tags:
-      - persistence-endpoint
-      summary: Find some identifier
-      operationId: find
-      parameters:
-      - name: pid
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Accept
-        in: header
-        required: true
-        schema:
-          type: string
-      responses:
-        "200":
-          description: Found identifier successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-            text/csv: {}
-            text/xml: {}
-            text/bibliography: {}
-            text/bibliography; style=apa: {}
-            text/bibliography; style=ieee: {}
-            text/bibliography; style=bibtex: {}
-        "404":
-          description: Identifier could not be exported from database as the resource
-            was not found
-          content:
-            text/csv:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: "Identifier could not be exported, the requested style is not\
-            \ known"
-          content:
-            text/bibliography:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Identifier could not exported from database as it is not reachable
-          content:
-            text/csv:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-components:
-  schemas:
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    IdentifierUpdateDto:
-      required:
-      - cid
-      - creators
-      - dbid
-      - publication_year
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        qid:
-          type: integer
-          format: int64
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        related_identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierCreateDto'
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierCreateDto:
-      required:
-      - value
-      type: object
-      properties:
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    CreatorCreateDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    IdentifierCreateDto:
-      required:
-      - cid
-      - creators
-      - dbid
-      - publication_year
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        qid:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorCreateDto'
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        related_identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierCreateDto'
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-metadata.yaml b/swagger/api-metadata.yaml
index bc1c717b5b0b8c20060728b7f1ec377f764cdbe9..2e1ef591c2ec6a959e5820ce009206bf23e897d5 100644
--- a/swagger/api-metadata.yaml
+++ b/swagger/api-metadata.yaml
@@ -8,7 +8,7 @@ info:
   license:
     name: Apache 2.0
     url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
+  version: 1.3.0
 externalDocs:
   description: Sourcecode Documentation
   url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
@@ -18,27 +18,6400 @@ servers:
 - url: https://dbrepo2.tuwien.ac.at
   description: Sandbox
 paths:
-  /api/oai:
+  /api/database/{databaseId}/table/{tableId}/history:
     get:
       tags:
-      - metadata-endpoint
-      summary: Get the record
-      operationId: identify_1_1_1_1
+      - table-history-endpoint
+      summary: Find all history
+      operationId: getAll
       parameters:
-      - name: verb
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "400":
+          description: Table history query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query table history
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table history successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableHistoryDto'
+        "405":
+          description: Find table history is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    head:
+      tags:
+      - table-history-endpoint
+      summary: Find all history
+      operationId: getAll_1
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "400":
+          description: Table history query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query table history
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table history successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableHistoryDto'
+        "405":
+          description: Find table history is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data:
+    get:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getAll_2
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
         in: query
-      - name: parameters
+        required: false
+        schema:
+          type: string
+          format: date-time
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
         in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - table-data-endpoint
+      summary: Update data
+      operationId: update_6
+      parameters:
+      - name: databaseId
+        in: path
         required: true
         schema:
-          $ref: '#/components/schemas/OaiListIdentifiersParameters'
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvUpdateDto'
+        required: true
       responses:
         "200":
-          description: List containers
+          description: OK
+      deprecated: true
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - table-data-endpoint
+      summary: Insert data
+      operationId: insert
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - table-data-endpoint
+      summary: Delete data
+      operationId: delete_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvDeleteDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+    head:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getAll_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
           content:
-            text/xml: {}
-components:
-  schemas:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}:
+    get:
+      tags:
+      - user-endpoint
+      summary: Get a user info
+      operationId: find
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      responses:
+        "200":
+          description: Found user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Find user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user information
+      operationId: modify
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserUpdateDto'
+        required: true
+      responses:
+        "404":
+          description: User attribute was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Modified user information
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}/theme:
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user theme
+      operationId: theme
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserThemeSetDto'
+        required: true
+      responses:
+        "202":
+          description: Modified user theme
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User or user attribute was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}/password:
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user password
+      operationId: password
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserPasswordDto'
+        required: true
+      responses:
+        "202":
+          description: Modified user password
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology/{id}:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: Find one ontology
+      operationId: find_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Find one ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/OntologyDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+    put:
+      tags:
+      - ontology-endpoint
+      summary: Update an ontology
+      operationId: update
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/OntologyModifyDto'
+        required: true
+      responses:
+        "202":
+          description: Updated ontology successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/OntologyDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - ontology-endpoint
+      summary: Delete an ontology
+      operationId: delete
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted ontology successfully
+          content:
+            application/json: {}
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/pid/{id}:
+    put:
+      tags:
+      - persistence-endpoint
+      summary: Update some identifier
+      operationId: update_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/IdentifierSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Updated identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+        "405":
+          description: Updating identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Identifier data is not valid to the form
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Updating identifier not allowed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Identifier or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - persistence-endpoint
+      summary: Delete some identifier
+      operationId: delete_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted identifier
+        "405":
+          description: Deleting identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Identifier could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/maintenance/message/{id}:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find one maintenance message
+      operationId: find_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Get messages
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageDto'
+    put:
+      tags:
+      - maintenance-endpoint
+      summary: Update maintenance message
+      operationId: update_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/BannerMessageUpdateDto'
+        required: true
+      responses:
+        "404":
+          description: Could not find message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageNotFoundException'
+        "202":
+          description: Updated message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageBriefDto'
+    delete:
+      tags:
+      - maintenance-endpoint
+      summary: Delete maintenance message
+      operationId: delete_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Could not find message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageNotFoundException'
+        "202":
+          description: Deleted message
+          content:
+            application/json: {}
+  /api/image/{id}:
+    get:
+      tags:
+      - image-endpoint
+      summary: Find some image
+      operationId: findById
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found image
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+    put:
+      tags:
+      - image-endpoint
+      summary: Update some image
+      operationId: update_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImageChangeDto'
+        required: true
+      responses:
+        "202":
+          description: Updated image successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - image-endpoint
+      summary: Delete some image
+      operationId: delete_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted image successfully
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/visibility:
+    put:
+      tags:
+      - database-endpoint
+      summary: Update database
+      operationId: visibility
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseModifyVisibilityDto'
+        required: true
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Visibility modification is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Visibility modified successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/transfer:
+    put:
+      tags:
+      - database-endpoint
+      summary: Transfer database
+      operationId: transfer
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseTransferDto'
+        required: true
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Transfer of ownership is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Transfer of ownership was successful
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/table/{tableId}/column/{columnId}:
+    put:
+      tags:
+      - table-column-endpoint
+      summary: Update a table column semantic mapping
+      operationId: update_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: columnId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Authorization
+        in: header
+        required: true
+        schema:
+          type: string
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ColumnSemanticsUpdateDto'
+        required: true
+      responses:
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Update semantic concept query is malformed or update unit of
+            measurement query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Updated column semantics successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ColumnDto'
+        "405":
+          description: Update column semantics not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ColumnDto'
+        "404":
+          description: "Table, database, semantic concept, unit of measurement or\
+            \ container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/access/{userId}:
+    put:
+      tags:
+      - access-endpoint
+      summary: Modify access to some database
+      operationId: update_5
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: userId
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseModifyAccessDto'
+        required: true
+      responses:
+        "400":
+          description: Modify access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Modify access not permitted when no access is granted in the
+            first place
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Modify access succeeded
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - access-endpoint
+      summary: Revoke access to some database
+      operationId: revoke
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: userId
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      responses:
+        "405":
+          description: Revoke of access not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Modify access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Revoke of access not permitted as no access was found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Revoked access successfully
+        "404":
+          description: User with access was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}:
+    get:
+      tags:
+      - store-endpoint
+      summary: Find some query
+      operationId: find_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: List queries
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Find query is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to select query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, query or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - store-endpoint
+      summary: Persist some query
+      operationId: persist
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/QueryPersistDto'
+        required: true
+      responses:
+        "200":
+          description: Persist query successful
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Persist query is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Query is already persisted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, query or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to persist query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/user:
+    get:
+      tags:
+      - user-endpoint
+      summary: Find all users
+      operationId: findAll
+      responses:
+        "200":
+          description: List users
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/UserBriefDto'
+    post:
+      tags:
+      - user-endpoint
+      summary: Create user
+      operationId: create
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/SignupRequestDto'
+        required: true
+      responses:
+        "201":
+          description: Created user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserBriefDto'
+        "400":
+          description: Parameters are not well-formed (likely email)
+          content:
+            application/json: {}
+        "409":
+          description: User with username already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: User with e-mail already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: default role not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+  /api/semantic/unit:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: List semantic units
+      operationId: findAllUnits
+      responses:
+        "200":
+          description: Find all semantic units
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/UnitDto'
+    post:
+      tags:
+      - semantics-endpoint
+      summary: Save a semantic unit
+      operationId: saveUnit
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UnitSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Saved a semantic unit
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UnitDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: List all ontologies
+      operationId: findAll_1
+      responses:
+        "200":
+          description: List all ontologies
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/OntologyDto'
+    post:
+      tags:
+      - ontology-endpoint
+      summary: Register a new ontology
+      operationId: create_1
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/OntologyCreateDto'
+        required: true
+      responses:
+        "201":
+          description: Could not find user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/concept:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: List semantic concepts
+      operationId: findAllConcepts
+      responses:
+        "200":
+          description: Find all semantic concepts
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ConceptDto'
+    post:
+      tags:
+      - semantics-endpoint
+      summary: Create or update a semantic concept
+      operationId: saveUnit_1
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ConceptSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Saved a semantic concept
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ConceptDto'
+      security:
+      - bearerAuth: []
+  /api/maintenance/message:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find maintenance messages
+      operationId: list
+      responses:
+        "200":
+          description: List messages
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/BannerMessageDto'
+    post:
+      tags:
+      - maintenance-endpoint
+      summary: Create maintenance message
+      operationId: create_2
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/BannerMessageCreateDto'
+        required: true
+      responses:
+        "201":
+          description: Created message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageBriefDto'
+  /api/image:
+    get:
+      tags:
+      - image-endpoint
+      summary: Find all images
+      operationId: findAll_2
+      responses:
+        "200":
+          description: List images
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ContainerImage'
+    post:
+      tags:
+      - image-endpoint
+      summary: Create image
+      operationId: create_3
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImageCreateDto'
+        required: true
+      responses:
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Image already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Image specification is invalid
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created image
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+      security:
+      - bearerAuth: []
+  /api/identifier:
+    get:
+      tags:
+      - identifier-endpoint
+      summary: Find identifiers
+      operationId: list_1
+      parameters:
+      - name: dbid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: qid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: vid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: type
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+      responses:
+        "200":
+          description: List identifiers
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/IdentifierDto'
+    post:
+      tags:
+      - identifier-endpoint
+      summary: Create identifier
+      operationId: create_4
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/IdentifierSaveDto'
+        required: true
+      responses:
+        "403":
+          description: Insufficient access rights or authorities
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Query information could not be retrieved
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Creating identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Creating identifier not allowed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+        "409":
+          description: Identifier for this resource already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Identifier form contains invalid request data
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database:
+    get:
+      tags:
+      - database-endpoint
+      summary: List databases
+      operationId: list_2
+      responses:
+        "200":
+          description: List of databases
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/DatabaseBriefDto'
+    post:
+      tags:
+      - database-endpoint
+      summary: Create database
+      operationId: create_5
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseCreateDto'
+        required: true
+      responses:
+        "400":
+          description: Database create query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database create permission is missing or grant permissions
+            at broker service failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Connection to the container failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Failed to create user at broker service or virtual host could
+            not be reached at broker service
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created a new database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseBriefDto'
+        "404":
+          description: "Container, user or database could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Container image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Database name already exist or query store could not be created
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/access:
+    get:
+      tags:
+      - access-endpoint
+      summary: Check access to some database
+      operationId: find_5
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: No access to this database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found database access
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseAccessDto'
+        "405":
+          description: Check access is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - access-endpoint
+      summary: Give access to some database
+      operationId: create_6
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseGiveAccessDto'
+        required: true
+      responses:
+        "400":
+          description: Granting access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Granting access not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Granting access succeeded
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find all views
+      operationId: findAll_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find views successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ViewBriefDto'
+        "405":
+          description: Find views is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - view-endpoint
+      summary: Create a view
+      operationId: create_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ViewCreateDto'
+        required: true
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Create view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Create view successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ViewBriefDto'
+        "400":
+          description: Create view query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Create view resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table:
+    get:
+      tags:
+      - table-endpoint
+      summary: List all tables
+      operationId: list_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: List tables
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableBriefDto'
+        "405":
+          description: List tables not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - table-endpoint
+      summary: Create a table
+      operationId: create_8
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCreateDto'
+        required: true
+      responses:
+        "405":
+          description: Create table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created a new table
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableBriefDto'
+        "400":
+          description: Create table query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Create table conflicts with existing table name
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Broker service failed to create queue
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data/import:
+    post:
+      tags:
+      - table-data-endpoint
+      summary: Insert data from csv
+      operationId: importCsv
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImportDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query:
+    get:
+      tags:
+      - store-endpoint
+      summary: Find queries
+      operationId: findAll_4
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: persisted
+        in: query
+        required: false
+        schema:
+          type: boolean
+      responses:
+        "200":
+          description: List queries
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/QueryBriefDto'
+        "405":
+          description: Find all queries is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Selection of time-versioned query resulted in an invalid query
+            statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to select query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - query-endpoint
+      summary: Execute query
+      operationId: execute
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ExecuteStatementDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/container:
+    get:
+      tags:
+      - container-endpoint
+      summary: Find all containers
+      operationId: findAll_5
+      parameters:
+      - name: limit
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int32
+      responses:
+        "200":
+          description: List containers
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ContainerBriefDto'
+    post:
+      tags:
+      - container-endpoint
+      summary: Create container
+      operationId: create_9
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ContainerCreateRequestDto'
+        required: true
+      responses:
+        "201":
+          description: Created a new container
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ContainerBriefDto'
+        "404":
+          description: Container image or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Container name already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology/{id}/entity:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: Find entities
+      operationId: find_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: label
+        in: query
+        required: false
+        schema:
+          type: string
+      - name: uri
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Found entities
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/EntityDto'
+        "400":
+          description: Filter params are invalid
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Generated query or uri is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/database/{databaseId}/table/{tableId}:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: Suggest table semantics
+      operationId: analyseTable
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Suggested table semantics successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableColumnEntityDto'
+        "404":
+          description: Could not find the table
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Generated query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/database/{databaseId}/table/{tableId}/column/{columnId}:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: Suggest table column semantics
+      operationId: analyseTableColumn
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: columnId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Could not find the table column
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Suggested table column semantics successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableColumnEntityDto'
+        "417":
+          description: Generated query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/pid/{pid}:
+    get:
+      tags:
+      - persistence-endpoint
+      summary: Find some identifier
+      operationId: find_3
+      parameters:
+      - name: pid
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Accept
+        in: header
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Found identifier successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+            text/csv: {}
+            text/xml: {}
+            text/bibliography: {}
+            text/bibliography; style=apa: {}
+            text/bibliography; style=ieee: {}
+            text/bibliography; style=bibtex: {}
+        "404":
+          description: Identifier could not be exported from database as the resource
+            was not found
+          content:
+            text/csv:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Identifier could not exported from database as it is not reachable
+          content:
+            text/csv:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: "Identifier could not be exported, the requested style is not\
+            \ known"
+          content:
+            text/bibliography:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+  /api/oai:
+    get:
+      tags:
+      - metadata-endpoint
+      summary: Get the record
+      operationId: identify_1_1_1_1
+      parameters:
+      - name: verb
+        in: query
+      - name: parameters
+        in: query
+        required: true
+        schema:
+          $ref: '#/components/schemas/OaiListIdentifiersParameters'
+      responses:
+        "200":
+          description: List containers
+          content:
+            text/xml: {}
+  /api/maintenance/message/active:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find active maintenance messages
+      operationId: active
+      responses:
+        "200":
+          description: List messages
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/BannerMessageBriefDto'
+  /api/identifier/retrieve:
+    get:
+      tags:
+      - identifier-endpoint
+      summary: Retrieve metadata from identifier
+      operationId: create_10
+      parameters:
+      - name: url
+        in: query
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Retrieved metadata from identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+  /api/database/{id}:
+    get:
+      tags:
+      - database-endpoint
+      summary: Find some database
+      operationId: findById_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Database found successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+        "404":
+          description: Database or container could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database information is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - database-endpoint
+      summary: Delete some database
+      operationId: delete_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "406":
+          description: Failed to delete user at broker service or virtual host could
+            not be reached at broker service
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Connection to the container failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Deleted a database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseBriefDto'
+        "404":
+          description: Container or database could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Database delete query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Container image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database delete permission is missing or revoke permissions
+            at broker service failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/table/{tableId}/export:
+    get:
+      tags:
+      - export-endpoint
+      summary: Export table
+      operationId: export
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: string
+                format: binary
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find one view
+      operationId: find_6
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "405":
+          description: Find view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find view successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ViewDto'
+        "404":
+          description: "Database, view or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - view-endpoint
+      summary: Delete one view
+      operationId: delete_5
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, view or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Delete view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Delete view successfully
+        "400":
+          description: Delete view query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Delete view resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}/data:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find view data
+      operationId: data
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, view, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Find data resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query view data
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find data successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+        "405":
+          description: Find data is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Pagination not in valid range or find data query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Parsing of resulting columns failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}/data/count:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find view data count
+      operationId: count
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}:
+    get:
+      tags:
+      - table-endpoint
+      summary: Get information about table
+      operationId: findById_2
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "405":
+          description: Find table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - table-endpoint
+      summary: Delete a table
+      operationId: delete_6
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Delete table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Delete table query resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Delete table successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableDto'
+        "423":
+          description: Delete table resulted in an invalid state
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data/count:
+    get:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getCount
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/export:
+    get:
+      tags:
+      - query-endpoint
+      summary: Exports some query
+      operationId: export_1
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Accept
+        in: header
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: object
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/data:
+    get:
+      tags:
+      - query-endpoint
+      summary: Re-execute some query
+      operationId: reExecute
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/data/count:
+    get:
+      tags:
+      - query-endpoint
+      summary: Re-execute some query
+      operationId: reExecuteCount
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/license:
+    get:
+      tags:
+      - license-endpoint
+      summary: Get all licenses
+      operationId: list_4
+      responses:
+        "200":
+          description: List of licenses
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/LicenseDto'
+  /api/container/{id}:
+    get:
+      tags:
+      - container-endpoint
+      summary: Find some container
+      operationId: findById_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found container
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ContainerDto'
+        "404":
+          description: Container image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+    delete:
+      tags:
+      - container-endpoint
+      summary: Delete some container
+      operationId: delete_8
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "409":
+          description: Container is still running
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "410":
+          description: Container is already removed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Deleted container successfully
+      security:
+      - bearerAuth: []
+components:
+  schemas:
+    ApiErrorDto:
+      required:
+      - code
+      - message
+      - status
+      type: object
+      properties:
+        status:
+          type: string
+          example: NOT_FOUND
+          enum:
+          - 100 CONTINUE
+          - 101 SWITCHING_PROTOCOLS
+          - 102 PROCESSING
+          - 103 EARLY_HINTS
+          - 103 CHECKPOINT
+          - 200 OK
+          - 201 CREATED
+          - 202 ACCEPTED
+          - 203 NON_AUTHORITATIVE_INFORMATION
+          - 204 NO_CONTENT
+          - 205 RESET_CONTENT
+          - 206 PARTIAL_CONTENT
+          - 207 MULTI_STATUS
+          - 208 ALREADY_REPORTED
+          - 226 IM_USED
+          - 300 MULTIPLE_CHOICES
+          - 301 MOVED_PERMANENTLY
+          - 302 FOUND
+          - 302 MOVED_TEMPORARILY
+          - 303 SEE_OTHER
+          - 304 NOT_MODIFIED
+          - 305 USE_PROXY
+          - 307 TEMPORARY_REDIRECT
+          - 308 PERMANENT_REDIRECT
+          - 400 BAD_REQUEST
+          - 401 UNAUTHORIZED
+          - 402 PAYMENT_REQUIRED
+          - 403 FORBIDDEN
+          - 404 NOT_FOUND
+          - 405 METHOD_NOT_ALLOWED
+          - 406 NOT_ACCEPTABLE
+          - 407 PROXY_AUTHENTICATION_REQUIRED
+          - 408 REQUEST_TIMEOUT
+          - 409 CONFLICT
+          - 410 GONE
+          - 411 LENGTH_REQUIRED
+          - 412 PRECONDITION_FAILED
+          - 413 PAYLOAD_TOO_LARGE
+          - 413 REQUEST_ENTITY_TOO_LARGE
+          - 414 URI_TOO_LONG
+          - 414 REQUEST_URI_TOO_LONG
+          - 415 UNSUPPORTED_MEDIA_TYPE
+          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
+          - 417 EXPECTATION_FAILED
+          - 418 I_AM_A_TEAPOT
+          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
+          - 420 METHOD_FAILURE
+          - 421 DESTINATION_LOCKED
+          - 422 UNPROCESSABLE_ENTITY
+          - 423 LOCKED
+          - 424 FAILED_DEPENDENCY
+          - 425 TOO_EARLY
+          - 426 UPGRADE_REQUIRED
+          - 428 PRECONDITION_REQUIRED
+          - 429 TOO_MANY_REQUESTS
+          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
+          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
+          - 500 INTERNAL_SERVER_ERROR
+          - 501 NOT_IMPLEMENTED
+          - 502 BAD_GATEWAY
+          - 503 SERVICE_UNAVAILABLE
+          - 504 GATEWAY_TIMEOUT
+          - 505 HTTP_VERSION_NOT_SUPPORTED
+          - 506 VARIANT_ALSO_NEGOTIATES
+          - 507 INSUFFICIENT_STORAGE
+          - 508 LOOP_DETECTED
+          - 509 BANDWIDTH_LIMIT_EXCEEDED
+          - 510 NOT_EXTENDED
+          - 511 NETWORK_AUTHENTICATION_REQUIRED
+        message:
+          type: string
+          example: Error message
+        code:
+          type: string
+          example: error.service.code
+    TableHistoryDto:
+      required:
+      - event
+      - timestamp
+      - total
+      type: object
+      properties:
+        timestamp:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        event:
+          type: string
+        total:
+          type: integer
+          format: int64
+          example: 1
+    QueryResultDto:
+      required:
+      - headers
+      - id
+      - result
+      type: object
+      properties:
+        result:
+          type: array
+          items:
+            type: object
+            additionalProperties:
+              type: object
+        headers:
+          type: array
+          items:
+            type: object
+            additionalProperties:
+              type: integer
+              format: int32
+        id:
+          type: integer
+          format: int64
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+    UserUpdateDto:
+      type: object
+      properties:
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Brown University
+        orcid:
+          type: string
+          example: 0000-0002-1825-0097
+    UserAttributesDto:
+      type: object
+      properties:
+        orcid:
+          type: string
+          example: https://orcid.org/0000-0002-1825-0097
+        affiliation:
+          type: string
+          example: Brown University
+    UserDto:
+      required:
+      - attributes
+      - email
+      - id
+      - username
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
+        username:
+          type: string
+          description: Only contains lowercase characters
+          example: jcarberry
+        name:
+          type: string
+          example: Josiah Carberry
+        attributes:
+          $ref: '#/components/schemas/UserAttributesDto'
+        email:
+          type: string
+          example: jcarberry@brown.edu
+        given_name:
+          type: string
+          example: Josiah
+        family_name:
+          type: string
+          example: Carberry
+    UserThemeSetDto:
+      required:
+      - theme_dark
+      type: object
+      properties:
+        theme_dark:
+          type: boolean
+          example: true
+    UserPasswordDto:
+      required:
+      - password
+      type: object
+      properties:
+        password:
+          type: string
+    OntologyModifyDto:
+      required:
+      - prefix
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: Ontology URI
+        prefix:
+          type: string
+          example: Ontology prefix
+        sparql_endpoint:
+          type: string
+          example: Ontology SPARQL endpoint
+    OntologyDto:
+      required:
+      - created
+      - id
+      - prefix
+      - rdf
+      - sparql
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+          example: http://www.wikidata.org/
+        prefix:
+          type: string
+          example: wd
+        sparql:
+          type: boolean
+          example: true
+        rdf:
+          type: boolean
+          example: false
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        uri_pattern:
+          type: string
+          example: http://www.wikidata.org/entity/.*
+        sparql_endpoint:
+          type: string
+          example: https://query.wikidata.org/sparql
+    UserBriefDto:
+      required:
+      - id
+      - username
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
+        username:
+          type: string
+          description: Only contains lowercase characters
+          example: jcarberry
+        name:
+          type: string
+          example: Josiah Carberry
+        orcid:
+          type: string
+          example: 0000-0002-1825-0097
+        given_name:
+          type: string
+          example: Josiah
+        family_name:
+          type: string
+          example: Carberry
+    CreatorSaveDto:
+      required:
+      - creator_name
+      - firstname
+      - lastname
+      - name_type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Wesleyan University
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        name_identifier:
+          type: string
+          example: 0000-0002-1825-0097
+        name_identifier_scheme:
+          type: string
+          example: ORCID
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        affiliation_identifier:
+          type: string
+          example: https://ror.org/04d836q62
+        affiliation_identifier_scheme:
+          type: string
+          example: ROR
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+    IdentifierFunderSaveDto:
+      required:
+      - funder_name
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funder_name:
+          type: string
+          example: European Commission
+        funder_identifier:
+          type: string
+          example: http://doi.org/10.13039/501100000780
+        funder_identifier_type:
+          type: string
+          example: Crossref Funder ID
+          enum:
+          - Crossref Funder ID
+          - ROR
+          - GND
+          - ISNI
+          - Other
+        scheme_uri:
+          type: string
+          example: http://doi.org/
+        award_number:
+          type: string
+          example: "824087"
+        award_title:
+          type: string
+          example: EOSC-Life
+    IdentifierSaveDescriptionDto:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+          example: "Air quality reports at Stephansplatz, Vienna"
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Abstract
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+    IdentifierSaveDto:
+      required:
+      - creators
+      - database_id
+      - publication_year
+      - type
+      - visibility
+      type: object
+      properties:
+        type:
+          type: string
+          example: database
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierSaveTitleDto'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierSaveDescriptionDto'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunderSaveDto'
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/LicenseDto'
+        visibility:
+          type: string
+          example: everyone
+          enum:
+          - everyone
+          - self
+        publisher:
+          type: string
+          example: TU Wien
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorSaveDto'
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+        view_id:
+          type: integer
+          format: int64
+        publication_day:
+          type: integer
+          format: int32
+          example: 15
+        publication_month:
+          type: integer
+          format: int32
+          example: 12
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+        related_identifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifierSaveDto'
+    IdentifierSaveTitleDto:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+          example: Airquality Demonstrator
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Subtitle
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+    LicenseDto:
+      required:
+      - identifier
+      - uri
+      type: object
+      properties:
+        identifier:
+          type: string
+          example: MIT
+        uri:
+          type: string
+          example: https://opensource.org/licenses/MIT
+    RelatedIdentifierSaveDto:
+      required:
+      - value
+      type: object
+      properties:
+        value:
+          type: string
+          example: 10.70124/dc4zh-9ce78
+        type:
+          type: string
+          example: DOI
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          example: Cites
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+    ColumnBriefDto:
+      required:
+      - column_type
+      - database_id
+      - id
+      - internal_name
+      - name
+      - table_id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: date
+        alias:
+          type: string
+        database_id:
+          type: integer
+          format: int64
+        table_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: mdb_date
+        column_type:
+          type: string
+          example: date
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+    ContainerDto:
+      required:
+      - created
+      - host
+      - id
+      - internal_name
+      - name
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        host:
+          type: string
+        port:
+          type: integer
+          format: int32
+        image:
+          $ref: '#/components/schemas/ImageBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        internal_name:
+          type: string
+          example: data-db
+    CreatorBriefDto:
+      required:
+      - creator_name
+      type: object
+      properties:
+        affiliation:
+          type: string
+          example: Wesleyan University
+        name_identifier:
+          type: string
+          example: https://orcid.org/0000-0002-1825-0097
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+    CreatorDto:
+      required:
+      - creator_name
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Brown University
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        name_identifier:
+          type: string
+          example: 0000-0002-1825-0097
+        name_identifier_scheme:
+          type: string
+          example: ORCID
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        name_identifier_scheme_uri:
+          type: string
+          example: https://orcid.org/
+        affiliation_identifier:
+          type: string
+          example: https://ror.org/05gq02987
+        affiliation_identifier_scheme:
+          type: string
+          example: ROR
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+        affiliation_identifier_scheme_uri:
+          type: string
+          example: https://ror.org/
+    DatabaseAccessDto:
+      required:
+      - created
+      - type
+      - user
+      type: object
+      properties:
+        user:
+          $ref: '#/components/schemas/UserDto'
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    DatabaseDto:
+      required:
+      - created
+      - creator
+      - exchange_name
+      - id
+      - internal_name
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        description:
+          type: string
+          example: Air Quality
+        tables:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableBriefDto'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/ViewBriefDto'
+        image:
+          $ref: '#/components/schemas/ImageDto'
+        container:
+          $ref: '#/components/schemas/ContainerDto'
+        accesses:
+          type: array
+          items:
+            $ref: '#/components/schemas/DatabaseAccessDto'
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        exchange_name:
+          type: string
+          example: dbrepo.air_quality
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+    IdentifierBriefDto:
+      required:
+      - creators
+      - id
+      - publication_year
+      - type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitleDto'
+        doi:
+          type: string
+          example: 10.1038/nphys1170
+        publisher:
+          type: string
+          example: TU Wien
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorBriefDto'
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+          example: 1
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+    IdentifierDescriptionDto:
+      required:
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+          example: "Air quality reports at Stephansplatz, Vienna"
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Abstract
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+    IdentifierDto:
+      required:
+      - created
+      - creators
+      - database
+      - execution
+      - id
+      - last_modified
+      - publication_year
+      - query
+      - query_hash
+      - query_normalized
+      - result_hash
+      - result_number
+      - type
+      - visibility
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitleDto'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierDescriptionDto'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunderDto'
+        query:
+          type: string
+          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
+            \ = \"09:STEF\""
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        execution:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        visibility:
+          type: string
+          example: everyone
+          enum:
+          - everyone
+          - self
+        doi:
+          type: string
+          example: 10.1038/nphys1170
+        publisher:
+          type: string
+          example: TU Wien
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/LicenseDto'
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+          example: 1
+        view_id:
+          type: integer
+          format: int64
+          example: 1
+        query_normalized:
+          type: string
+          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
+            \ = \"09:STEF\""
+        related_identifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifierDto'
+        query_hash:
+          type: string
+          description: query hash in sha512
+        result_hash:
+          type: string
+          example: 34fe82cda2c53f13f8d90cfd7a3469e3a939ff311add50dce30d9136397bf8e5
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        publication_day:
+          type: integer
+          format: int32
+          example: 15
+        publication_month:
+          type: integer
+          format: int32
+          example: 12
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    IdentifierFunderDto:
+      required:
+      - funder_name
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funder_name:
+          type: string
+          example: European Commission
+        funder_identifier:
+          type: string
+          example: http://doi.org/10.13039/501100000780
+        funder_identifier_type:
+          type: string
+          example: Crossref Funder ID
+          enum:
+          - Crossref Funder ID
+          - ROR
+          - GND
+          - ISNI
+          - Other
+        scheme_uri:
+          type: string
+          example: http://doi.org/
+        award_number:
+          type: string
+          example: "824087"
+        award_title:
+          type: string
+          example: EOSC-Life
+    IdentifierTitleDto:
+      required:
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+          example: Airquality Demonstrator
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+    ImageBriefDto:
+      required:
+      - id
+      - name
+      - version
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+          example: "10.5"
+    ImageDateDto:
+      required:
+      - created_at
+      - database_format
+      - example
+      - has_time
+      - id
+      - unix_format
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        example:
+          type: string
+          example: 30.01.2022
+        database_format:
+          type: string
+          example: '%d.%c.%Y'
+        unix_format:
+          type: string
+          example: dd.MM.YYYY
+        has_time:
+          type: boolean
+          example: false
+        created_at:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ImageDto:
+      required:
+      - default_port
+      - dialect
+      - driver_class
+      - id
+      - jdbc_method
+      - name
+      - registry
+      - version
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        registry:
+          type: string
+          example: docker.io/library
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+          example: "10.5"
+        dialect:
+          type: string
+          example: org.hibernate.dialect.MariaDBDialect
+        driver_class:
+          type: string
+          example: org.mariadb.jdbc.Driver
+        date_formats:
+          type: array
+          items:
+            $ref: '#/components/schemas/ImageDateDto'
+        jdbc_method:
+          type: string
+          example: mariadb
+        default_port:
+          type: integer
+          format: int32
+          example: 3306
+    RelatedIdentifierDto:
+      required:
+      - created
+      - id
+      - value
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        value:
+          type: string
+          example: 10.70124/dc4zh-9ce78
+        type:
+          type: string
+          example: DOI
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          example: Cites
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    TableBriefDto:
+      required:
+      - columns
+      - description
+      - id
+      - internal_name
+      - is_versioned
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_versioned:
+          type: boolean
+          example: true
+    ViewBriefDto:
+      required:
+      - created
+      - creator
+      - id
+      - internal_name
+      - name
+      - query
+      - query_hash
+      - vdbid
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        vdbid:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+        initial_view:
+          type: boolean
+          description: True if it is the default view for the database
+          example: true
+        query_hash:
+          type: string
+          example: 7de03e818900b6ea6d58ad0306d4a741d658c6df3d1964e89ed2395d8c7e7916
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    BannerMessageUpdateDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    BannerMessageNotFoundException:
+      type: object
+      properties:
+        cause:
+          type: object
+          properties:
+            stackTrace:
+              type: array
+              items:
+                type: object
+                properties:
+                  classLoaderName:
+                    type: string
+                  moduleName:
+                    type: string
+                  moduleVersion:
+                    type: string
+                  methodName:
+                    type: string
+                  fileName:
+                    type: string
+                  lineNumber:
+                    type: integer
+                    format: int32
+                  nativeMethod:
+                    type: boolean
+                  className:
+                    type: string
+            message:
+              type: string
+            suppressed:
+              type: array
+              items:
+                type: object
+                properties:
+                  stackTrace:
+                    type: array
+                    items:
+                      type: object
+                      properties:
+                        classLoaderName:
+                          type: string
+                        moduleName:
+                          type: string
+                        moduleVersion:
+                          type: string
+                        methodName:
+                          type: string
+                        fileName:
+                          type: string
+                        lineNumber:
+                          type: integer
+                          format: int32
+                        nativeMethod:
+                          type: boolean
+                        className:
+                          type: string
+                  message:
+                    type: string
+                  localizedMessage:
+                    type: string
+            localizedMessage:
+              type: string
+        stackTrace:
+          type: array
+          items:
+            type: object
+            properties:
+              classLoaderName:
+                type: string
+              moduleName:
+                type: string
+              moduleVersion:
+                type: string
+              methodName:
+                type: string
+              fileName:
+                type: string
+              lineNumber:
+                type: integer
+                format: int32
+              nativeMethod:
+                type: boolean
+              className:
+                type: string
+        message:
+          type: string
+        suppressed:
+          type: array
+          items:
+            type: object
+            properties:
+              stackTrace:
+                type: array
+                items:
+                  type: object
+                  properties:
+                    classLoaderName:
+                      type: string
+                    moduleName:
+                      type: string
+                    moduleVersion:
+                      type: string
+                    methodName:
+                      type: string
+                    fileName:
+                      type: string
+                    lineNumber:
+                      type: integer
+                      format: int32
+                    nativeMethod:
+                      type: boolean
+                    className:
+                      type: string
+              message:
+                type: string
+              localizedMessage:
+                type: string
+        localizedMessage:
+          type: string
+    BannerMessageBriefDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+    ImageChangeDto:
+      required:
+      - dialect
+      - driver_class
+      - jdbc_method
+      - registry
+      type: object
+      properties:
+        registry:
+          type: string
+          example: docker.io/library
+        defaultPort:
+          maximum: 65535
+          minimum: 1024
+          type: integer
+          format: int32
+          example: 5432
+        dialect:
+          type: string
+          example: Postgres
+        driver_class:
+          type: string
+          example: org.postgresql.Driver
+        jdbc_method:
+          type: string
+          example: postgresql
+    DatabaseModifyVisibilityDto:
+      required:
+      - is_public
+      type: object
+      properties:
+        is_public:
+          type: boolean
+          example: true
+    DatabaseTransferDto:
+      required:
+      - username
+      type: object
+      properties:
+        username:
+          type: string
+    ColumnSemanticsUpdateDto:
+      type: object
+      properties:
+        concept_uri:
+          type: string
+        unit_uri:
+          type: string
+    ColumnDto:
+      required:
+      - auto_generated
+      - column_type
+      - database_id
+      - id
+      - internal_name
+      - is_null_allowed
+      - is_primary_key
+      - is_public
+      - name
+      - table_id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Date
+        alias:
+          type: string
+        size:
+          type: integer
+          format: int32
+          example: 255
+        d:
+          type: integer
+          format: int32
+          example: 0
+        concept:
+          $ref: '#/components/schemas/ConceptDto'
+        unit:
+          $ref: '#/components/schemas/UnitDto'
+        enums:
+          type: array
+          items:
+            type: string
+        sets:
+          type: array
+          items:
+            type: string
+        database_id:
+          type: integer
+          format: int64
+        table_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: mdb_date
+        date_format:
+          $ref: '#/components/schemas/ImageDateDto'
+        auto_generated:
+          type: boolean
+          example: false
+        is_primary_key:
+          type: boolean
+          example: true
+        index_length:
+          type: integer
+          format: int32
+        column_type:
+          type: string
+          example: string
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+        is_public:
+          type: boolean
+          example: true
+        is_null_allowed:
+          type: boolean
+          example: false
+    ConceptDto:
+      required:
+      - columns
+      - created
+      - id
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+    UnitDto:
+      required:
+      - columns
+      - created
+      - id
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+    DatabaseModifyAccessDto:
+      required:
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+    TableCsvUpdateDto:
+      required:
+      - data
+      - keys
+      type: object
+      properties:
+        data:
+          type: object
+          additionalProperties:
+            type: object
+        keys:
+          type: object
+          additionalProperties:
+            type: object
+    QueryPersistDto:
+      required:
+      - persist
+      type: object
+      properties:
+        persist:
+          type: boolean
+          example: true
+    QueryDto:
+      required:
+      - cid
+      - created
+      - creator
+      - dbid
+      - execution
+      - id
+      - is_persisted
+      - last_modified
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        cid:
+          type: integer
+          format: int64
+        dbid:
+          type: integer
+          format: int64
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        execution:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        type:
+          type: string
+          example: query
+          enum:
+          - query
+          - view
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query_normalized:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        query_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        is_persisted:
+          type: boolean
+          example: true
+        result_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    SignupRequestDto:
+      required:
+      - email
+      - password
+      - username
+      type: object
+      properties:
+        username:
+          pattern: "^[a-z0-9]{3,}$"
+          type: string
+          example: user
+        email:
+          type: string
+          example: user@example.com
+        password:
+          type: string
+    UnitSaveDto:
+      required:
+      - description
+      - name
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+    OntologyCreateDto:
+      required:
+      - prefix
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: Ontology URI
+        prefix:
+          type: string
+          example: Ontology prefix
+        sparql_endpoint:
+          type: string
+          example: Ontology SPARQL endpoint
+    ConceptSaveDto:
+      required:
+      - description
+      - name
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+    BannerMessageCreateDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ImageCreateDto:
+      required:
+      - default_port
+      - dialect
+      - driver_class
+      - jdbc_method
+      - name
+      - registry
+      - version
+      type: object
+      properties:
+        registry:
+          type: string
+          example: docker.io/library
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+        dialect:
+          type: string
+        driver_class:
+          type: string
+        jdbc_method:
+          type: string
+        default_port:
+          maximum: 65535
+          minimum: 1024
+          type: integer
+          format: int32
+    DatabaseCreateDto:
+      required:
+      - container_id
+      - is_public
+      - name
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        container_id:
+          type: integer
+          format: int64
+          example: 1
+        is_public:
+          type: boolean
+          example: true
+    ContainerBriefDto:
+      required:
+      - created
+      - hash
+      - id
+      - internal_name
+      - name
+      - running
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        hash:
+          type: string
+          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
+        name:
+          type: string
+          example: Air Quality
+        running:
+          type: boolean
+          example: true
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        internal_name:
+          type: string
+          example: air-quality
+    DatabaseBriefDto:
+      required:
+      - created
+      - id
+      - image
+      - internal_name
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        engine:
+          type: string
+          example: mariadb:10.5
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        container:
+          $ref: '#/components/schemas/ContainerBriefDto'
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        image:
+          $ref: '#/components/schemas/ImageBriefDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+    DatabaseGiveAccessDto:
+      required:
+      - type
+      - userId
+      type: object
+      properties:
+        userId:
+          type: string
+          format: uuid
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+    ViewCreateDto:
+      required:
+      - is_public
+      - name
+      - query
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        is_public:
+          type: boolean
+          example: true
+    ColumnCreateDto:
+      required:
+      - name
+      - null_allowed
+      - primary_key
+      - type
+      type: object
+      properties:
+        name:
+          type: string
+          example: Date
+        type:
+          type: string
+          example: string
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+        size:
+          type: integer
+          format: int32
+          example: 255
+        d:
+          type: integer
+          format: int32
+          example: 0
+        dfid:
+          type: integer
+          description: date format id
+          format: int64
+        enums:
+          type: array
+          description: "enum values, only considered when type = ENUM"
+          items:
+            type: string
+            description: "enum values, only considered when type = ENUM"
+        sets:
+          type: array
+          description: "set values, only considered when type = SET"
+          items:
+            type: string
+            description: "set values, only considered when type = SET"
+        primary_key:
+          type: boolean
+          example: false
+        index_length:
+          type: integer
+          format: int32
+        null_allowed:
+          type: boolean
+          example: true
+    ConstraintsCreateDto:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            type: array
+            items:
+              type: string
+        checks:
+          type: array
+          items:
+            type: string
+        foreign_keys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyCreateDto'
+    ForeignKeyCreateDto:
+      type: object
+      properties:
+        columns:
+          type: array
+          items:
+            type: string
+        referenced_table:
+          type: string
+        referenced_columns:
+          type: array
+          items:
+            type: string
+        on_update:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+        on_delete:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+    TableCreateDto:
+      required:
+      - columns
+      - name
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnCreateDto'
+        constraints:
+          $ref: '#/components/schemas/ConstraintsCreateDto'
+    TableCsvDto:
+      required:
+      - data
+      type: object
+      properties:
+        data:
+          type: object
+          additionalProperties:
+            type: object
+    ImportDto:
+      required:
+      - location
+      - separator
+      type: object
+      properties:
+        location:
+          type: string
+          example: /tmp/file.csv
+        separator:
+          type: string
+          example: ","
+        quote:
+          type: string
+          example: '"'
+        skip_lines:
+          minimum: 0
+          type: integer
+          format: int64
+        false_element:
+          type: string
+        true_element:
+          type: string
+        null_element:
+          type: string
+          example: NA
+    ExecuteStatementDto:
+      required:
+      - statement
+      type: object
+      properties:
+        statement:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        timestamp:
+          type: string
+          description: Execute query for data at this timestamp
+          format: date-time
+    ContainerCreateRequestDto:
+      required:
+      - host
+      - imageId
+      - name
+      - privilegedPassword
+      - privilegedUsername
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        imageId:
+          type: integer
+          description: Image ID
+          format: int64
+        host:
+          type: string
+          description: Hostname of container
+        port:
+          type: integer
+          description: Port of container
+          format: int32
+        privilegedUsername:
+          type: string
+          description: Username of privileged user
+          example: root
+        privilegedPassword:
+          type: string
+          description: Password of privileged user
+    EntityDto:
+      required:
+      - label
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: https://www.wikidata.org/entity/Q1686799
+        label:
+          type: string
+          example: Apache Jena
+        description:
+          type: string
+          example: open source semantic web framework for Java
+    TableColumnEntityDto:
+      required:
+      - columnId
+      - databaseId
+      - tableId
+      - uri
+      type: object
+      properties:
+        databaseId:
+          type: integer
+          format: int64
+          example: 1
+        tableId:
+          type: integer
+          format: int64
+          example: 1
+        columnId:
+          type: integer
+          format: int64
+          example: 1
+        uri:
+          type: string
+          example: https://www.wikidata.org/entity/Q1686799
+        label:
+          type: string
+          example: Apache Jena
+        description:
+          type: string
+          example: open source semantic web framework for Java
     OaiListIdentifiersParameters:
       type: object
       properties:
@@ -52,11 +6425,1575 @@ components:
           type: string
         resumptionToken:
           type: string
+        parametersString:
+          type: string
         fromDate:
           type: string
           format: date-time
         untilDate:
           type: string
           format: date-time
-        parametersString:
+    BannerMessageDto:
+      required:
+      - id
+      - message
+      - type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    Constraints:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            $ref: '#/components/schemas/Unique'
+        foreignKeys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKey'
+        checks:
+          uniqueItems: true
+          type: array
+          items:
+            type: string
+    Container:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+        internalName:
+          type: string
+        imageId:
+          type: integer
+          format: int64
+        host:
+          type: string
+        port:
+          type: integer
+          format: int32
+        databases:
+          type: array
+          items:
+            $ref: '#/components/schemas/Database'
+        image:
+          $ref: '#/components/schemas/ContainerImage'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+        privilegedUsername:
+          type: string
+        privilegedPassword:
+          type: string
+    ContainerImage:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+        version:
+          type: string
+        driverClass:
+          type: string
+        dialect:
+          type: string
+        jdbcMethod:
+          type: string
+        defaultPort:
+          type: integer
+          format: int32
+        dateFormats:
+          type: array
+          items:
+            $ref: '#/components/schemas/ContainerImageDate'
+        containers:
+          type: array
+          items:
+            $ref: '#/components/schemas/Container'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ContainerImageDate:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        iid:
+          type: integer
+          format: int64
+        image:
+          $ref: '#/components/schemas/ContainerImage'
+        example:
+          type: string
+        hasTime:
+          type: boolean
+        databaseFormat:
+          type: string
+        unixFormat:
+          type: string
+        createdAt:
+          type: string
+          format: date-time
+    Creator:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+        lastname:
+          type: string
+        creatorName:
+          type: string
+        nameType:
+          type: string
+          enum:
+          - Personal
+          - Organizational
+        nameIdentifier:
+          type: string
+        nameIdentifierScheme:
+          type: string
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        nameIdentifierSchemeUri:
+          type: string
+        affiliation:
+          type: string
+        affiliationIdentifier:
+          type: string
+        affiliationIdentifierScheme:
+          type: string
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+        affiliationIdentifierSchemeUri:
+          type: string
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        apaName:
+          type: string
+        bibtexName:
+          type: string
+        ieeeName:
+          type: string
+    Database:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        creator:
+          $ref: '#/components/schemas/User'
+        ownedBy:
+          type: string
+          format: uuid
+        owner:
+          $ref: '#/components/schemas/User'
+        cid:
+          type: integer
+          format: int64
+        container:
+          $ref: '#/components/schemas/Container'
+        name:
+          type: string
+        internalName:
+          type: string
+        exchangeName:
+          type: string
+        description:
+          type: string
+        contactPerson:
+          type: string
+          format: uuid
+        contact:
+          $ref: '#/components/schemas/User'
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        tables:
+          type: array
+          items:
+            $ref: '#/components/schemas/Table'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/View'
+        isPublic:
+          type: boolean
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ForeignKey:
+      type: object
+      properties:
+        fkid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/Table'
+        referencedTable:
+          $ref: '#/components/schemas/Table'
+        references:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyReference'
+        onUpdate:
+          type: string
+          enum:
+          - ReferenceType.RESTRICT
+          - ReferenceType.CASCADE
+          - ReferenceType.SET_NULL
+          - ReferenceType.NO_ACTION
+          - ReferenceType.SET_DEFAULT
+        onDelete:
+          type: string
+          enum:
+          - ReferenceType.RESTRICT
+          - ReferenceType.CASCADE
+          - ReferenceType.SET_NULL
+          - ReferenceType.NO_ACTION
+          - ReferenceType.SET_DEFAULT
+    ForeignKeyReference:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        foreignKey:
+          $ref: '#/components/schemas/ForeignKey'
+        column:
+          $ref: '#/components/schemas/TableColumn'
+        referencedColumn:
+          $ref: '#/components/schemas/TableColumn'
+    Identifier:
+      required:
+      - publisher
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        databaseId:
+          type: integer
+          format: int64
+        queryId:
+          type: integer
+          format: int64
+        viewId:
+          type: integer
+          format: int64
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/Creator'
+        publisher:
+          type: string
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitle'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierDescription'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunder'
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/License'
+        type:
+          type: string
+          enum:
+          - DATABASE
+          - SUBSET
+          - VIEW
+        query:
+          type: string
+        queryNormalized:
+          type: string
+        queryHash:
+          type: string
+        resultHash:
+          type: string
+        execution:
+          type: string
+          format: date-time
+        resultNumber:
+          type: integer
+          format: int64
+        publicationYear:
+          type: integer
+          format: int32
+        publicationMonth:
+          type: integer
+          format: int32
+        publicationDay:
+          type: integer
+          format: int32
+        visibility:
+          type: string
+          enum:
+          - VisibilityType.EVERYONE
+          - VisibilityType.SELF
+        database:
+          $ref: '#/components/schemas/Database'
+        relatedIdentifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifier'
+        doi:
+          type: string
+        createdBy:
+          type: string
+          format: uuid
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    IdentifierDescription:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+        descriptionType:
+          type: string
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    IdentifierFunder:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funderName:
+          type: string
+        funderIdentifier:
+          type: string
+        funderIdentifierType:
+          type: string
+          enum:
+          - CROSSREF_FUNDER_ID
+          - ROR
+          - GND
+          - ISNI
+          - OTHER
+        schemeUri:
+          type: string
+        awardNumber:
+          type: string
+        awardTitle:
+          type: string
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    IdentifierTitle:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+        titleType:
+          type: string
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    License:
+      type: object
+      properties:
+        identifier:
+          type: string
+        uri:
+          type: string
+    RelatedIdentifier:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        value:
+          type: string
+        type:
+          type: string
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    Table:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        tdbid:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        creator:
+          $ref: '#/components/schemas/User'
+        ownedBy:
+          type: string
+          format: uuid
+        owner:
+          $ref: '#/components/schemas/User'
+        name:
+          type: string
+        internalName:
+          type: string
+        queueName:
+          type: string
+        routingKey:
+          type: string
+        description:
+          type: string
+        database:
+          $ref: '#/components/schemas/Database'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+        constraints:
+          $ref: '#/components/schemas/Constraints'
+        isVersioned:
+          type: boolean
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    TableColumn:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        dateFormat:
+          $ref: '#/components/schemas/ContainerImageDate'
+        table:
+          $ref: '#/components/schemas/Table'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/View'
+        name:
+          type: string
+        autoGenerated:
+          type: boolean
+        internalName:
+          type: string
+        isPrimaryKey:
+          type: boolean
+        indexLength:
+          type: integer
+          format: int32
+        alias:
+          type: string
+        columnType:
+          type: string
+          enum:
+          - TableColumnType.CHAR
+          - TableColumnType.VARCHAR
+          - TableColumnType.BINARY
+          - TableColumnType.VARBINARY
+          - TableColumnType.TINYBLOB
+          - TableColumnType.TINYTEXT
+          - TableColumnType.TEXT
+          - TableColumnType.BLOB
+          - TableColumnType.MEDIUMTEXT
+          - TableColumnType.MEDIUMBLOB
+          - TableColumnType.LONGTEXT
+          - TableColumnType.LONGBLOB
+          - TableColumnType.ENUM
+          - TableColumnType.SET
+          - TableColumnType.BIT
+          - TableColumnType.TINYINT
+          - TableColumnType.BOOL
+          - TableColumnType.SMALLINT
+          - TableColumnType.MEDIUMINT
+          - TableColumnType.INT
+          - TableColumnType.BIGINT
+          - TableColumnType.FLOAT
+          - TableColumnType.DOUBLE
+          - TableColumnType.DECIMAL
+          - TableColumnType.DATE
+          - TableColumnType.DATETIME
+          - TableColumnType.TIMESTAMP
+          - TableColumnType.TIME
+          - TableColumnType.YEAR
+        length:
+          type: integer
+          format: int32
+        isNullAllowed:
+          type: boolean
+        ordinalPosition:
+          type: integer
+          format: int32
+        created:
+          type: string
+          format: date-time
+        concept:
+          $ref: '#/components/schemas/TableColumnConcept'
+        unit:
+          $ref: '#/components/schemas/TableColumnUnit'
+        enums:
+          type: array
+          items:
+            type: string
+        sets:
+          type: array
+          items:
+            type: string
+        size:
+          type: integer
+          format: int32
+        d:
+          type: integer
+          format: int32
+        lastModified:
+          type: string
+          format: date-time
+    TableColumnConcept:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    TableColumnUnit:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    Unique:
+      type: object
+      properties:
+        uid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/Table'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    User:
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+        username:
+          type: string
+        firstname:
+          type: string
+        lastname:
+          type: string
+        email:
+          type: string
+        orcid:
+          type: string
+        affiliation:
+          type: string
+        themeDark:
+          type: boolean
+        mariadbPassword:
+          type: string
+    View:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        vdbid:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        name:
+          type: string
+        internalName:
+          type: string
+        isPublic:
+          type: boolean
+        isInitialView:
+          type: boolean
+        query:
+          type: string
+        queryHash:
+          type: string
+        database:
+          $ref: '#/components/schemas/Database'
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ViewDto:
+      required:
+      - columns
+      - created
+      - creator
+      - database
+      - database_id
+      - id
+      - internal_name
+      - name
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        database_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+        initial_view:
+          type: boolean
+          description: True if it is the default view for the database
+          example: true
+        query_hash:
+          type: string
+          example: 7de03e818900b6ea6d58ad0306d4a741d658c6df3d1964e89ed2395d8c7e7916
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ConstraintsDto:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            $ref: '#/components/schemas/UniqueDto'
+        checks:
+          type: array
+          items:
+            type: string
+        foreign_keys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyDto'
+    ForeignKeyDto:
+      type: object
+      properties:
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        referenced_table:
+          $ref: '#/components/schemas/TableBriefDto'
+        referenced_columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        on_update:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+        on_delete:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+    TableDto:
+      required:
+      - columns
+      - created
+      - created_by
+      - creator
+      - database
+      - id
+      - internal_name
+      - is_public
+      - is_versioned
+      - name
+      - owner
+      - queue_name
+      - routing_key
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        name:
+          type: string
+          example: Air Quality
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        owner:
+          $ref: '#/components/schemas/UserDto'
+        description:
+          type: string
+          example: Air Quality in Austria
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        constraints:
+          $ref: '#/components/schemas/ConstraintsDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_versioned:
+          type: boolean
+          example: true
+        created_by:
+          type: string
+          format: uuid
+        queue_name:
+          type: string
+          example: dbrepo.air_quality
+        routing_key:
+          type: string
+          example: dbrepo.air_quality
+        is_public:
+          type: boolean
+          example: true
+    UniqueDto:
+      required:
+      - columns
+      - table
+      - uid
+      type: object
+      properties:
+        uid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/TableDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+    QueryBriefDto:
+      required:
+      - cid
+      - created
+      - creator
+      - dbid
+      - execution
+      - id
+      - last_modified
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        cid:
+          type: integer
+          format: int64
+        dbid:
+          type: integer
+          format: int64
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        execution:
+          type: string
+          format: date-time
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        type:
+          type: string
+          example: query
+          enum:
+          - query
+          - view
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        created:
           type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query_normalized:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        query_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    TableCsvDeleteDto:
+      required:
+      - keys
+      type: object
+      properties:
+        keys:
+          type: object
+          additionalProperties:
+            type: object
+  securitySchemes:
+    bearerAuth:
+      type: http
+      scheme: bearer
+      bearerFormat: JWT
diff --git a/swagger/api-query.yaml b/swagger/api-query.yaml
deleted file mode 100644
index 16168d93b08fc5f2d3b79131526ad2c8a027b0eb..0000000000000000000000000000000000000000
--- a/swagger/api-query.yaml
+++ /dev/null
@@ -1,2520 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Query Service API
-  description: Service that manages the queries
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9093
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/table/{tableId}/history:
-    get:
-      tags:
-      - table-history-endpoint
-      summary: Find all history
-      operationId: getAll
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table history is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table history successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableHistoryDto'
-        "404":
-          description: "Table, database or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query table history
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Table history query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    head:
-      tags:
-      - table-history-endpoint
-      summary: Find all history
-      operationId: getAll_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table history is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table history successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableHistoryDto'
-        "404":
-          description: "Table, database or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query table history
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Table history query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data:
-    get:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getAll_2
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - table-data-endpoint
-      summary: Update data
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvUpdateDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      deprecated: true
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - table-data-endpoint
-      summary: Insert data
-      operationId: insert
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - table-data-endpoint
-      summary: Delete data
-      operationId: delete_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvDeleteDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-    head:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getAll_3
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}:
-    get:
-      tags:
-      - store-endpoint
-      summary: Find some query
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List queries
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryDto'
-        "404":
-          description: "Database, query or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find query is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to select query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - store-endpoint
-      summary: Persist some query
-      operationId: persist
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: "Database, query or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Persist query successful
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryDto'
-        "405":
-          description: Persist query is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to persist query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Query is already persisted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find all views
-      operationId: findAll
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find views is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find views successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ViewBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - view-endpoint
-      summary: Create a view
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ViewCreateDto'
-        required: true
-      responses:
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Create view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Create view successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ViewBriefDto'
-        "423":
-          description: Create view resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Create view query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data/import:
-    post:
-      tags:
-      - table-data-endpoint
-      summary: Insert data from csv
-      operationId: importCsv
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImportDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query:
-    get:
-      tags:
-      - store-endpoint
-      summary: Find queries
-      operationId: findAll_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: persisted
-        in: query
-        required: false
-        schema:
-          type: boolean
-      responses:
-        "405":
-          description: Find all queries is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to select query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Selection of time-versioned query resulted in an invalid query
-            statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: List queries
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/QueryBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - query-endpoint
-      summary: Execute query
-      operationId: execute
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ExecuteStatementDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find one view
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find view successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ViewDto'
-        "404":
-          description: "Database, view or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - view-endpoint
-      summary: Delete one view
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, view or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Delete view query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Delete view successfully
-        "423":
-          description: Delete view resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Delete view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}/data:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find view data
-      operationId: data
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find data successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Find data resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "417":
-          description: Parsing of resulting columns failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query view data
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, view, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Pagination not in valid range or find data query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find data is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}/data/count:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find view data count
-      operationId: count
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/export:
-    get:
-      tags:
-      - export-endpoint
-      summary: Export table
-      operationId: export
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: string
-                format: binary
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data/count:
-    get:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getCount
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/export:
-    get:
-      tags:
-      - query-endpoint
-      summary: Exports some query
-      operationId: export_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Accept
-        in: header
-        required: true
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: object
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/data:
-    get:
-      tags:
-      - query-endpoint
-      summary: Re-execute some query
-      operationId: reExecute
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/data/count:
-    get:
-      tags:
-      - query-endpoint
-      summary: Re-execute some query
-      operationId: reExecuteCount
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    TableHistoryDto:
-      required:
-      - event
-      - timestamp
-      - total
-      type: object
-      properties:
-        timestamp:
-          type: string
-          format: date-time
-        event:
-          type: string
-        total:
-          type: integer
-          format: int64
-          example: 1
-    QueryResultDto:
-      required:
-      - id
-      - result
-      type: object
-      properties:
-        result:
-          type: array
-          items:
-            type: object
-            additionalProperties:
-              type: object
-        id:
-          type: integer
-          format: int64
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-    TableCsvUpdateDto:
-      required:
-      - data
-      - keys
-      type: object
-      properties:
-        data:
-          type: object
-          additionalProperties:
-            type: object
-        keys:
-          type: object
-          additionalProperties:
-            type: object
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    QueryDto:
-      required:
-      - cid
-      - created
-      - creator
-      - dbid
-      - id
-      - is_persisted
-      - query
-      - query_hash
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        execution:
-          type: string
-          format: date-time
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        type:
-          type: string
-          example: query
-          enum:
-          - query
-          - view
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        created:
-          type: string
-          format: date-time
-        query_normalized:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        query_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        is_persisted:
-          type: boolean
-          example: true
-        result_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        last_modified:
-          type: string
-          format: date-time
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    ViewCreateDto:
-      required:
-      - is_public
-      - name
-      - query
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        is_public:
-          type: boolean
-          example: true
-    TableCsvDto:
-      required:
-      - data
-      type: object
-      properties:
-        data:
-          type: object
-          additionalProperties:
-            type: object
-    ImportDto:
-      required:
-      - location
-      - separator
-      type: object
-      properties:
-        location:
-          type: string
-          example: /tmp/file.csv
-        separator:
-          type: string
-          example: ","
-        quote:
-          type: string
-          example: '"'
-        skip_lines:
-          minimum: 0
-          type: integer
-          format: int64
-        false_element:
-          type: string
-        true_element:
-          type: string
-        null_element:
-          type: string
-          example: NA
-    ExecuteStatementDto:
-      required:
-      - statement
-      type: object
-      properties:
-        statement:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        timestamp:
-          type: string
-          description: Execute query for data at this timestamp
-          format: date-time
-    ViewDto:
-      required:
-      - created
-      - creator
-      - database
-      - id
-      - internalName
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        name:
-          type: string
-          example: Air Quality
-        internalName:
-          type: string
-          example: air_quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    QueryBriefDto:
-      required:
-      - cid
-      - created
-      - creator
-      - dbid
-      - id
-      - query
-      - query_hash
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        execution:
-          type: string
-          format: date-time
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        type:
-          type: string
-          example: query
-          enum:
-          - query
-          - view
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        created:
-          type: string
-          format: date-time
-        query_normalized:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        query_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        last_modified:
-          type: string
-          format: date-time
-    TableCsvDeleteDto:
-      required:
-      - keys
-      type: object
-      properties:
-        keys:
-          type: object
-          additionalProperties:
-            type: object
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-semantics.yaml b/swagger/api-semantics.yaml
deleted file mode 100644
index c001c6d7bb3539f64f83b76b093d90ac679ce30b..0000000000000000000000000000000000000000
--- a/swagger/api-semantics.yaml
+++ /dev/null
@@ -1,685 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Semantic Service API
-  description: Service that manages the tables
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9097
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/semantic/ontology/{id}:
-    get:
-      tags:
-      - ontology-endpoint
-      summary: Find one ontology
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find one ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - ontology-endpoint
-      summary: Update an ontology
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/OntologyModifyDto'
-        required: true
-      responses:
-        "202":
-          description: Updated ontology successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - ontology-endpoint
-      summary: Delete an ontology
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted ontology successfully
-          content:
-            application/json: {}
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/unit:
-    get:
-      tags:
-      - semantics-endpoint
-      summary: List semantic units
-      operationId: findAllUnits
-      responses:
-        "200":
-          description: Find all semantic units
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/UnitDto'
-    post:
-      tags:
-      - semantics-endpoint
-      summary: Save a semantic unit
-      operationId: saveUnit
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UnitSaveDto'
-        required: true
-      responses:
-        "202":
-          description: Saved a semantic unit
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UnitDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/ontology:
-    get:
-      tags:
-      - ontology-endpoint
-      summary: List all ontologies
-      operationId: findAll
-      responses:
-        "200":
-          description: List all ontologies
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/OntologyDto'
-    post:
-      tags:
-      - ontology-endpoint
-      summary: Register a new ontology
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/OntologyCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Registered ontology successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/concept:
-    get:
-      tags:
-      - semantics-endpoint
-      summary: List semantic concepts
-      operationId: findAllConcepts
-      responses:
-        "200":
-          description: Find all semantic concepts
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ConceptDto'
-    post:
-      tags:
-      - semantics-endpoint
-      summary: Create or update a semantic concept
-      operationId: saveUnit_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ConceptSaveDto'
-        required: true
-      responses:
-        "202":
-          description: Saved a semantic concept
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ConceptDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/ontology/{id}/entity:
-    get:
-      tags:
-      - query-endpoint
-      summary: Find entities
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: label
-        in: query
-        required: false
-        schema:
-          type: string
-      - name: uri
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: Found entities
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/EntityDto'
-        "417":
-          description: Generated query or uri is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Filter params are invalid
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/database/{databaseId}/table/{tableId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Suggest table semantics
-      operationId: analyseTable
-      parameters:
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "417":
-          description: Generated query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Could not find the table
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Suggested table semantics successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableColumnEntityDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/database/{databaseId}/table/{tableId}/column/{columnId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Suggest table column semantics
-      operationId: analyseTableColumn
-      parameters:
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: columnId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "417":
-          description: Generated query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Suggested table column semantics successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableColumnEntityDto'
-        "404":
-          description: Could not find the table column
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    OntologyModifyDto:
-      required:
-      - prefix
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    OntologyDto:
-      required:
-      - created
-      - id
-      - prefix
-      - rdf
-      - sparql
-      - uri
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql:
-          type: boolean
-          example: true
-        rdf:
-          type: boolean
-          example: true
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    UnitSaveDto:
-      required:
-      - description
-      - name
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    UnitDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    OntologyCreateDto:
-      required:
-      - prefix
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    ConceptSaveDto:
-      required:
-      - description
-      - name
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-    ConceptDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    EntityDto:
-      required:
-      - label
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: https://www.wikidata.org/entity/Q1686799
-        label:
-          type: string
-          example: Apache Jena
-        description:
-          type: string
-          example: open source semantic web framework for Java
-    TableColumnEntityDto:
-      required:
-      - columnId
-      - databaseId
-      - tableId
-      - uri
-      type: object
-      properties:
-        databaseId:
-          type: integer
-          format: int64
-          example: 1
-        tableId:
-          type: integer
-          format: int64
-          example: 1
-        columnId:
-          type: integer
-          format: int64
-          example: 1
-        uri:
-          type: string
-          example: https://www.wikidata.org/entity/Q1686799
-        label:
-          type: string
-          example: Apache Jena
-        description:
-          type: string
-          example: open source semantic web framework for Java
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-table.yaml b/swagger/api-table.yaml
deleted file mode 100644
index 9639c5fc4e24d730136b88d16a7b5a526dc469d4..0000000000000000000000000000000000000000
--- a/swagger/api-table.yaml
+++ /dev/null
@@ -1,860 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Table Service API
-  description: Service that manages the tables
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9094
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/table/{tableId}/column/{columnId}:
-    put:
-      tags:
-      - table-column-endpoint
-      summary: Update a table column semantic mapping
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: columnId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Authorization
-        in: header
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ColumnSemanticsUpdateDto'
-        required: true
-      responses:
-        "404":
-          description: "Table, database, semantic concept, unit of measurement or\
-            \ container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Updated column semantics successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ColumnDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Update semantic concept query is malformed or update unit of
-            measurement query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Update column semantics not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ColumnDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table:
-    get:
-      tags:
-      - table-endpoint
-      summary: List all tables
-      operationId: list
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Database could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: List tables not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: List tables
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - table-endpoint
-      summary: Create a table
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCreateDto'
-        required: true
-      responses:
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Broker service failed to create queue
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Create table conflicts with existing table name
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Create table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created a new table
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableBriefDto'
-        "400":
-          description: Create table query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Get information about table
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Table, database or container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - table-endpoint
-      summary: Delete a table
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Delete table successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableDto'
-        "405":
-          description: Delete table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Delete table resulted in an invalid state
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Delete table query resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Table, database or container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ColumnSemanticsUpdateDto:
-      type: object
-      properties:
-        concept_uri:
-          type: string
-        unit_uri:
-          type: string
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ColumnDto:
-      required:
-      - auto_generated
-      - column_type
-      - id
-      - internal_name
-      - is_null_allowed
-      - is_primary_key
-      - is_public
-      - name
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Date
-        length:
-          type: integer
-          format: int32
-          example: 255
-        concept:
-          $ref: '#/components/schemas/ConceptDto'
-        unit:
-          $ref: '#/components/schemas/UnitDto'
-        internal_name:
-          type: string
-          example: mdb_date
-        date_format:
-          $ref: '#/components/schemas/ImageDateDto'
-        auto_generated:
-          type: boolean
-          example: false
-        is_primary_key:
-          type: boolean
-          example: true
-        index_length:
-          type: integer
-          format: int32
-        column_type:
-          type: string
-          example: string
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-        is_public:
-          type: boolean
-          example: true
-        is_null_allowed:
-          type: boolean
-          example: false
-        enum_values:
-          type: array
-          items:
-            type: string
-    ConceptDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    UnitDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    ColumnCreateDto:
-      required:
-      - name
-      - null_allowed
-      - primary_key
-      - type
-      type: object
-      properties:
-        name:
-          type: string
-          example: Date
-        type:
-          type: string
-          example: string
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-        length:
-          type: integer
-          format: int32
-          example: 255
-        dfid:
-          type: integer
-          description: date format id
-          format: int64
-        primary_key:
-          type: boolean
-          example: false
-        index_length:
-          type: integer
-          format: int32
-        null_allowed:
-          type: boolean
-          example: true
-        enum_values:
-          type: array
-          description: "enum values, only considered when type = ENUM"
-          items:
-            type: string
-            description: "enum values, only considered when type = ENUM"
-    ConstraintsCreateDto:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            type: array
-            items:
-              type: string
-        checks:
-          type: array
-          items:
-            type: string
-        foreign_keys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyCreateDto'
-    ForeignKeyCreateDto:
-      type: object
-      properties:
-        columns:
-          type: array
-          items:
-            type: string
-        referenced_table:
-          type: string
-        referenced_columns:
-          type: array
-          items:
-            type: string
-        on_update:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-        on_delete:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-    TableCreateDto:
-      required:
-      - columns
-      - description
-      - name
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnCreateDto'
-        constraints:
-          $ref: '#/components/schemas/ConstraintsCreateDto'
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ConstraintsDto:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            type: array
-            items:
-              $ref: '#/components/schemas/ColumnDto'
-        checks:
-          type: array
-          items:
-            type: string
-        foreign_keys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyDto'
-    ForeignKeyDto:
-      type: object
-      properties:
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        referenced_table:
-          $ref: '#/components/schemas/TableBriefDto'
-        referenced_columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        on_update:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-        on_delete:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-    TableDto:
-      required:
-      - columns
-      - creator
-      - description
-      - id
-      - internal_name
-      - is_public
-      - name
-      - owner
-      - queue_name
-      - routing_key
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        description:
-          type: string
-          example: Air Quality in Austria
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        constraints:
-          $ref: '#/components/schemas/ConstraintsDto'
-        internal_name:
-          type: string
-          example: air_quality
-        queue_name:
-          type: string
-          example: dbrepo/air_quality/air_quality
-        routing_key:
-          type: string
-          example: dbrepo/air_quality/air_quality/1
-        is_public:
-          type: boolean
-          example: true
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/api-user.yaml b/swagger/api-user.yaml
deleted file mode 100644
index 56bd25f5380528b7f08b44b29c83363103d9bd93..0000000000000000000000000000000000000000
--- a/swagger/api-user.yaml
+++ /dev/null
@@ -1,1521 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository User Service API
-  description: Service that manages the users
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Wiki Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/wikis
-servers:
-- url: http://localhost:9098
-  description: Generated server url
-paths:
-  /api/user/{id}:
-    get:
-      tags:
-      - user-endpoint
-      summary: Get a user info
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      responses:
-        "404":
-          description: User was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found user
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user information
-      operationId: modify
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserUpdateDto'
-        required: true
-      responses:
-        "202":
-          description: Modified user information
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: User attribute was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/user/{id}/theme:
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user theme
-      operationId: theme
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserThemeSetDto'
-        required: true
-      responses:
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: User or user attribute was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modified user theme
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-  /api/user/{id}/password:
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user password
-      operationId: password
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserPasswordDto'
-        required: true
-      responses:
-        "404":
-          description: User was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modified user password
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-  /api/maintenance/message/{id}:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find one maintenance message
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Get messages
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageDto'
-    put:
-      tags:
-      - maintenance-endpoint
-      summary: Update maintenance message
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/BannerMessageUpdateDto'
-        required: true
-      responses:
-        "404":
-          description: Could not find message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageNotFoundException'
-        "202":
-          description: Updated message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageBriefDto'
-    delete:
-      tags:
-      - maintenance-endpoint
-      summary: Delete maintenance message
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted message
-          content:
-            application/json: {}
-        "404":
-          description: Could not find message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageNotFoundException'
-  /api/user:
-    get:
-      tags:
-      - user-endpoint
-      summary: Find all users
-      operationId: findAll
-      responses:
-        "200":
-          description: List users
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/UserBriefDto'
-    post:
-      tags:
-      - user-endpoint
-      summary: Create user
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/SignupRequestDto'
-        required: true
-      responses:
-        "409":
-          description: User with username already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Realm or default role not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created user
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserBriefDto'
-        "417":
-          description: User with e-mail already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-  /api/maintenance/message:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find maintenance messages
-      operationId: list
-      responses:
-        "200":
-          description: List messages
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/BannerMessageDto'
-    post:
-      tags:
-      - maintenance-endpoint
-      summary: Create maintenance message
-      operationId: create_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/BannerMessageCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageBriefDto'
-  /api/maintenance/message/active:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find active maintenance messages
-      operationId: active
-      responses:
-        "200":
-          description: List messages
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/BannerMessageBriefDto'
-components:
-  schemas:
-    UserUpdateDto:
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Brown University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    UserThemeSetDto:
-      required:
-      - theme_dark
-      type: object
-      properties:
-        theme_dark:
-          type: boolean
-          example: true
-    UserPasswordDto:
-      required:
-      - password
-      type: object
-      properties:
-        password:
-          type: string
-    BannerMessageUpdateDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-    BannerMessageNotFoundException:
-      type: object
-      properties:
-        cause:
-          type: object
-          properties:
-            stackTrace:
-              type: array
-              items:
-                type: object
-                properties:
-                  classLoaderName:
-                    type: string
-                  moduleName:
-                    type: string
-                  moduleVersion:
-                    type: string
-                  methodName:
-                    type: string
-                  fileName:
-                    type: string
-                  lineNumber:
-                    type: integer
-                    format: int32
-                  nativeMethod:
-                    type: boolean
-                  className:
-                    type: string
-            message:
-              type: string
-            suppressed:
-              type: array
-              items:
-                type: object
-                properties:
-                  stackTrace:
-                    type: array
-                    items:
-                      type: object
-                      properties:
-                        classLoaderName:
-                          type: string
-                        moduleName:
-                          type: string
-                        moduleVersion:
-                          type: string
-                        methodName:
-                          type: string
-                        fileName:
-                          type: string
-                        lineNumber:
-                          type: integer
-                          format: int32
-                        nativeMethod:
-                          type: boolean
-                        className:
-                          type: string
-                  message:
-                    type: string
-                  localizedMessage:
-                    type: string
-            localizedMessage:
-              type: string
-        stackTrace:
-          type: array
-          items:
-            type: object
-            properties:
-              classLoaderName:
-                type: string
-              moduleName:
-                type: string
-              moduleVersion:
-                type: string
-              methodName:
-                type: string
-              fileName:
-                type: string
-              lineNumber:
-                type: integer
-                format: int32
-              nativeMethod:
-                type: boolean
-              className:
-                type: string
-        message:
-          type: string
-        suppressed:
-          type: array
-          items:
-            type: object
-            properties:
-              stackTrace:
-                type: array
-                items:
-                  type: object
-                  properties:
-                    classLoaderName:
-                      type: string
-                    moduleName:
-                      type: string
-                    moduleVersion:
-                      type: string
-                    methodName:
-                      type: string
-                    fileName:
-                      type: string
-                    lineNumber:
-                      type: integer
-                      format: int32
-                    nativeMethod:
-                      type: boolean
-                    className:
-                      type: string
-              message:
-                type: string
-              localizedMessage:
-                type: string
-        localizedMessage:
-          type: string
-    BannerMessageBriefDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-    SignupRequestDto:
-      required:
-      - email
-      - password
-      - username
-      type: object
-      properties:
-        username:
-          pattern: "^[a-z0-9]{3,}$"
-          type: string
-          example: user
-        email:
-          type: string
-          example: user@example.com
-        password:
-          type: string
-    BannerMessageCreateDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-    BannerMessageDto:
-      required:
-      - id
-      - message
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/container/api.yaml b/swagger/container/api.yaml
index 2102e2f63cab2048d1c546149d233b3c141faf6d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/container/api.yaml
+++ b/swagger/container/api.yaml
@@ -1,2410 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Container Service API
-  description: Service that manages the containers
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9092
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/image/{id}:
-    get:
-      tags:
-      - image-endpoint
-      summary: Find some image
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Found image
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - image-endpoint
-      summary: Update some image
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImageChangeDto'
-        required: true
-      responses:
-        "202":
-          description: Updated image successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - image-endpoint
-      summary: Delete some image
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted image successfully
-        "404":
-          description: Image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}:
-    get:
-      tags:
-      - container-endpoint
-      summary: Find some container
-      operationId: findById_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found container
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerDto'
-        "404":
-          description: Container image could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - container-endpoint
-      summary: Modify some container
-      operationId: modify
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ContainerChangeDto'
-        required: true
-      responses:
-        "409":
-          description: Container is already started/stopped
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Container or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Modification of container state is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Modified state of container successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerBriefDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - container-endpoint
-      summary: Delete some container
-      operationId: delete_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "410":
-          description: Container is already removed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Container is still running
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Deleted container successfully
-      security:
-      - bearerAuth: []
-  /api/image:
-    get:
-      tags:
-      - image-endpoint
-      summary: Find all images
-      operationId: findAll
-      responses:
-        "200":
-          description: List images
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ContainerImage'
-    post:
-      tags:
-      - image-endpoint
-      summary: Create image
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImageCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created image
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ImageDto'
-        "404":
-          description: User could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Image specification is invalid
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Image already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container:
-    get:
-      tags:
-      - container-endpoint
-      summary: Find all containers
-      operationId: findAll_1
-      parameters:
-      - name: limit
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int32
-      responses:
-        "200":
-          description: List containers
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ContainerBriefDto'
-    post:
-      tags:
-      - container-endpoint
-      summary: Create container
-      operationId: create_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ContainerCreateRequestDto'
-        required: true
-      responses:
-        "201":
-          description: Created a new container
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ContainerBriefDto'
-        "404":
-          description: Container image or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Container name already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Docker client failed to connect
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ImageChangeDto:
-      required:
-      - dialect
-      - driver_class
-      - jdbc_method
-      - registry
-      type: object
-      properties:
-        registry:
-          type: string
-          example: docker.io/library
-        defaultPort:
-          maximum: 65535
-          minimum: 1024
-          type: integer
-          format: int32
-          example: 5432
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageEnvItemDto'
-        dialect:
-          type: string
-          example: Postgres
-        driver_class:
-          type: string
-          example: org.postgresql.Driver
-        jdbc_method:
-          type: string
-          example: postgresql
-    ImageEnvItemDto:
-      required:
-      - iid
-      - key
-      - type
-      type: object
-      properties:
-        iid:
-          type: integer
-          format: int64
-        key:
-          type: string
-          example: MARIADB_ROOT_PASSWORD
-        type:
-          type: string
-          example: PRIVILEGED_PASSWORD
-          enum:
-          - username
-          - password
-          - privileged_username
-          - privileged_password
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ContainerChangeDto:
-      required:
-      - action
-      type: object
-      properties:
-        action:
-          type: string
-          enum:
-          - start
-          - stop
-    ContainerBriefDto:
-      required:
-      - creator
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        running:
-          type: boolean
-          example: true
-        database:
-          $ref: '#/components/schemas/DatabaseBriefDto'
-        created:
-          type: string
-          format: date-time
-        internal_name:
-          type: string
-          example: air-quality
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    DatabaseBriefDto:
-      required:
-      - id
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        engine:
-          type: string
-          example: mariadb:10.5
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        container:
-          $ref: '#/components/schemas/ContainerBriefDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        is_public:
-          type: boolean
-          example: true
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ImageCreateDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-        dialect:
-          type: string
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageEnvItemDto'
-        driver_class:
-          type: string
-        jdbc_method:
-          type: string
-        default_port:
-          maximum: 65535
-          minimum: 1024
-          type: integer
-          format: int32
-    ContainerCreateRequestDto:
-      required:
-      - name
-      - repository
-      - tag
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    Constraints:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            $ref: '#/components/schemas/Unique'
-        foreignKeys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKey'
-        checks:
-          uniqueItems: true
-          type: array
-          items:
-            type: string
-    Container:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        ownedBy:
-          type: string
-          format: uuid
-        owner:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        internalName:
-          type: string
-        hash:
-          type: string
-        imageId:
-          type: integer
-          format: int64
-        port:
-          type: integer
-          format: int32
-        database:
-          $ref: '#/components/schemas/Database'
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        ipAddress:
-          type: string
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ContainerImage:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        repository:
-          type: string
-        registry:
-          type: string
-        tag:
-          type: string
-        driverClass:
-          type: string
-        dialect:
-          type: string
-        jdbcMethod:
-          type: string
-        hash:
-          type: string
-        compiled:
-          type: string
-          format: date-time
-        size:
-          type: integer
-          format: int64
-        defaultPort:
-          type: integer
-          format: int32
-        environment:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerImageEnvironmentItem'
-        dateFormats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerImageDate'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Container'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ContainerImageDate:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        example:
-          type: string
-        hasTime:
-          type: boolean
-        databaseFormat:
-          type: string
-        unixFormat:
-          type: string
-        createdAt:
-          type: string
-          format: date-time
-    ContainerImageEnvironmentItem:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        key:
-          type: string
-        value:
-          type: string
-        type:
-          type: string
-          enum:
-          - USERNAME
-          - PASSWORD
-          - PRIVILEGED_USERNAME
-          - PRIVILEGED_PASSWORD
-        image:
-          $ref: '#/components/schemas/ContainerImage'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    Creator:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        pid:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-        lastname:
-          type: string
-        affiliation:
-          type: string
-        orcid:
-          type: string
-        identifier:
-          $ref: '#/components/schemas/Identifier'
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/User'
-        lastModified:
-          type: string
-          format: date-time
-    Credential:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        type:
-          type: string
-        userId:
-          type: string
-          format: uuid
-        createdDate:
-          type: integer
-          format: int64
-        secretData:
-          type: string
-        credentialData:
-          type: string
-        priority:
-          type: integer
-          format: int32
-        user:
-          $ref: '#/components/schemas/User'
-    Database:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        ownedBy:
-          type: string
-          format: uuid
-        owner:
-          $ref: '#/components/schemas/User'
-        container:
-          $ref: '#/components/schemas/Container'
-        name:
-          type: string
-        internalName:
-          type: string
-        exchangeName:
-          type: string
-        description:
-          type: string
-        contactPerson:
-          type: string
-          format: uuid
-        contact:
-          $ref: '#/components/schemas/User'
-        identifier:
-          $ref: '#/components/schemas/Identifier'
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/Table'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/View'
-        isPublic:
-          type: boolean
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ForeignKey:
-      type: object
-      properties:
-        fkid:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        table:
-          $ref: '#/components/schemas/Table'
-        rtid:
-          type: integer
-          format: int64
-        rtdbid:
-          type: integer
-          format: int64
-        referencedTable:
-          $ref: '#/components/schemas/Table'
-        references:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyReference'
-        onUpdate:
-          type: string
-          enum:
-          - ReferenceType.RESTRICT
-          - ReferenceType.CASCADE
-          - ReferenceType.SET_NULL
-          - ReferenceType.NO_ACTION
-          - ReferenceType.SET_DEFAULT
-        onDelete:
-          type: string
-          enum:
-          - ReferenceType.RESTRICT
-          - ReferenceType.CASCADE
-          - ReferenceType.SET_NULL
-          - ReferenceType.NO_ACTION
-          - ReferenceType.SET_DEFAULT
-    ForeignKeyReference:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        foreignKey:
-          $ref: '#/components/schemas/ForeignKey'
-        column:
-          $ref: '#/components/schemas/TableColumn'
-        referencedColumn:
-          $ref: '#/components/schemas/TableColumn'
-    Identifier:
-      required:
-      - publisher
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        containerId:
-          type: integer
-          format: int64
-        databaseId:
-          type: integer
-          format: int64
-        queryId:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/User'
-        title:
-          type: string
-        description:
-          type: string
-        publisher:
-          type: string
-        language:
-          type: string
-          enum:
-          - LanguageType.AB
-          - LanguageType.AA
-          - LanguageType.AF
-          - LanguageType.AK
-          - LanguageType.SQ
-          - LanguageType.AM
-          - LanguageType.AR
-          - LanguageType.AN
-          - LanguageType.HY
-          - LanguageType.AS
-          - LanguageType.AV
-          - LanguageType.AE
-          - LanguageType.AY
-          - LanguageType.AZ
-          - LanguageType.BM
-          - LanguageType.BA
-          - LanguageType.EU
-          - LanguageType.BE
-          - LanguageType.BN
-          - LanguageType.BH
-          - LanguageType.BI
-          - LanguageType.BS
-          - LanguageType.BR
-          - LanguageType.BG
-          - LanguageType.MY
-          - LanguageType.CA
-          - LanguageType.KM
-          - LanguageType.CH
-          - LanguageType.CE
-          - LanguageType.NY
-          - LanguageType.ZH
-          - LanguageType.CU
-          - LanguageType.CV
-          - LanguageType.KW
-          - LanguageType.CO
-          - LanguageType.CR
-          - LanguageType.HR
-          - LanguageType.CS
-          - LanguageType.DA
-          - LanguageType.DV
-          - LanguageType.NL
-          - LanguageType.DZ
-          - LanguageType.EN
-          - LanguageType.EO
-          - LanguageType.ET
-          - LanguageType.EE
-          - LanguageType.FO
-          - LanguageType.FJ
-          - LanguageType.FI
-          - LanguageType.FR
-          - LanguageType.FF
-          - LanguageType.GD
-          - LanguageType.GL
-          - LanguageType.LG
-          - LanguageType.KA
-          - LanguageType.DE
-          - LanguageType.KI
-          - LanguageType.EL
-          - LanguageType.KL
-          - LanguageType.GN
-          - LanguageType.GU
-          - LanguageType.HT
-          - LanguageType.HA
-          - LanguageType.HE
-          - LanguageType.HZ
-          - LanguageType.HI
-          - LanguageType.HO
-          - LanguageType.HU
-          - LanguageType.IS
-          - LanguageType.IO
-          - LanguageType.IG
-          - LanguageType.ID
-          - LanguageType.IA
-          - LanguageType.IE
-          - LanguageType.IU
-          - LanguageType.IK
-          - LanguageType.GA
-          - LanguageType.IT
-          - LanguageType.JA
-          - LanguageType.JV
-          - LanguageType.KN
-          - LanguageType.KR
-          - LanguageType.KS
-          - LanguageType.KK
-          - LanguageType.RW
-          - LanguageType.KV
-          - LanguageType.KG
-          - LanguageType.KO
-          - LanguageType.KJ
-          - LanguageType.KU
-          - LanguageType.KY
-          - LanguageType.LO
-          - LanguageType.LA
-          - LanguageType.LV
-          - LanguageType.LB
-          - LanguageType.LI
-          - LanguageType.LN
-          - LanguageType.LT
-          - LanguageType.LU
-          - LanguageType.MK
-          - LanguageType.MG
-          - LanguageType.MS
-          - LanguageType.ML
-          - LanguageType.MT
-          - LanguageType.GV
-          - LanguageType.MI
-          - LanguageType.MR
-          - LanguageType.MH
-          - LanguageType.RO
-          - LanguageType.MN
-          - LanguageType.NA
-          - LanguageType.NV
-          - LanguageType.ND
-          - LanguageType.NG
-          - LanguageType.NE
-          - LanguageType.SE
-          - LanguageType.NO
-          - LanguageType.NB
-          - LanguageType.NN
-          - LanguageType.II
-          - LanguageType.OC
-          - LanguageType.OJ
-          - LanguageType.OR
-          - LanguageType.OM
-          - LanguageType.OS
-          - LanguageType.PI
-          - LanguageType.PA
-          - LanguageType.PS
-          - LanguageType.FA
-          - LanguageType.PL
-          - LanguageType.PT
-          - LanguageType.QU
-          - LanguageType.RM
-          - LanguageType.RN
-          - LanguageType.RU
-          - LanguageType.SM
-          - LanguageType.SG
-          - LanguageType.SA
-          - LanguageType.SC
-          - LanguageType.SR
-          - LanguageType.SN
-          - LanguageType.SD
-          - LanguageType.SI
-          - LanguageType.SK
-          - LanguageType.SL
-          - LanguageType.SO
-          - LanguageType.ST
-          - LanguageType.NR
-          - LanguageType.ES
-          - LanguageType.SU
-          - LanguageType.SW
-          - LanguageType.SS
-          - LanguageType.SV
-          - LanguageType.TL
-          - LanguageType.TY
-          - LanguageType.TG
-          - LanguageType.TA
-          - LanguageType.TT
-          - LanguageType.TE
-          - LanguageType.TH
-          - LanguageType.BO
-          - LanguageType.TI
-          - LanguageType.TO
-          - LanguageType.TS
-          - LanguageType.TN
-          - LanguageType.TR
-          - LanguageType.TK
-          - LanguageType.TW
-          - LanguageType.UG
-          - LanguageType.UK
-          - LanguageType.UR
-          - LanguageType.UZ
-          - LanguageType.VE
-          - LanguageType.VI
-          - LanguageType.VO
-          - LanguageType.WA
-          - LanguageType.CY
-          - LanguageType.FY
-          - LanguageType.WO
-          - LanguageType.XH
-          - LanguageType.YI
-          - LanguageType.YO
-          - LanguageType.ZA
-          - LanguageType.ZU
-        license:
-          $ref: '#/components/schemas/License'
-        type:
-          type: string
-          enum:
-          - DATABASE
-          - SUBSET
-        query:
-          type: string
-        queryNormalized:
-          type: string
-        queryHash:
-          type: string
-        resultHash:
-          type: string
-        execution:
-          type: string
-          format: date-time
-        resultNumber:
-          type: integer
-          format: int64
-        publicationYear:
-          type: integer
-          format: int32
-        publicationMonth:
-          type: integer
-          format: int32
-        publicationDay:
-          type: integer
-          format: int32
-        visibility:
-          type: string
-          enum:
-          - VisibilityType.EVERYONE
-          - VisibilityType.SELF
-        database:
-          $ref: '#/components/schemas/Database'
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifier'
-        doi:
-          type: string
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/Creator'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    License:
-      type: object
-      properties:
-        identifier:
-          type: string
-        uri:
-          type: string
-    RelatedIdentifier:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        iid:
-          type: integer
-          format: int64
-        value:
-          type: string
-        type:
-          type: string
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        creator:
-          $ref: '#/components/schemas/User'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    Role:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        name:
-          type: string
-        realmId:
-          type: string
-          format: uuid
-        users:
-          type: array
-          items:
-            $ref: '#/components/schemas/User'
-    Table:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/User'
-        owner:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        internalName:
-          type: string
-        queueName:
-          type: string
-        routingKey:
-          type: string
-        description:
-          type: string
-        database:
-          $ref: '#/components/schemas/Database'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-        constraints:
-          $ref: '#/components/schemas/Constraints'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    TableColumn:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        cdbid:
-          type: integer
-          format: int64
-        dfid:
-          type: integer
-          format: int64
-        dateFormat:
-          $ref: '#/components/schemas/ContainerImageDate'
-        table:
-          $ref: '#/components/schemas/Table'
-        view:
-          $ref: '#/components/schemas/View'
-        creator:
-          $ref: '#/components/schemas/User'
-        name:
-          type: string
-        autoGenerated:
-          type: boolean
-        internalName:
-          type: string
-        isPrimaryKey:
-          type: boolean
-        indexLength:
-          type: integer
-          format: int32
-        alias:
-          type: string
-        columnType:
-          type: string
-          enum:
-          - TableColumnType.ENUM
-          - TableColumnType.NUMBER
-          - TableColumnType.DECIMAL
-          - TableColumnType.STRING
-          - TableColumnType.TEXT
-          - TableColumnType.BOOLEAN
-          - TableColumnType.DATE
-          - TableColumnType.TIMESTAMP
-          - TableColumnType.BLOB
-        length:
-          type: integer
-          format: int32
-        isNullAllowed:
-          type: boolean
-        enumValues:
-          type: array
-          items:
-            type: string
-        ordinalPosition:
-          type: integer
-          format: int32
-        created:
-          type: string
-          format: date-time
-        concept:
-          $ref: '#/components/schemas/TableColumnConcept'
-        unit:
-          $ref: '#/components/schemas/TableColumnUnit'
-        lastModified:
-          type: string
-          format: date-time
-    TableColumnConcept:
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    TableColumnUnit:
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    Unique:
-      type: object
-      properties:
-        uid:
-          type: integer
-          format: int64
-        tid:
-          type: integer
-          format: int64
-        tdbid:
-          type: integer
-          format: int64
-        table:
-          $ref: '#/components/schemas/Table'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-    User:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        username:
-          type: string
-        firstname:
-          type: string
-        lastname:
-          type: string
-        realmId:
-          type: string
-          format: uuid
-        email:
-          type: string
-        emailVerified:
-          type: boolean
-        enabled:
-          type: boolean
-        createdTimestamp:
-          type: integer
-          format: int64
-        databasePassword:
-          type: string
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttribute'
-        credentials:
-          type: array
-          items:
-            $ref: '#/components/schemas/Credential'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Container'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/Database'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/Identifier'
-        roles:
-          type: array
-          items:
-            $ref: '#/components/schemas/Role'
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/Table'
-    UserAttribute:
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-        userId:
-          type: string
-          format: uuid
-        name:
-          type: string
-        value:
-          type: string
-        user:
-          $ref: '#/components/schemas/User'
-    View:
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vcid:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        createdBy:
-          type: string
-          format: uuid
-        creator:
-          $ref: '#/components/schemas/User'
-        database:
-          $ref: '#/components/schemas/Database'
-        name:
-          type: string
-        internalName:
-          type: string
-        isPublic:
-          type: boolean
-        isInitialView:
-          type: boolean
-        query:
-          type: string
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableColumn'
-        created:
-          type: string
-          format: date-time
-        lastModified:
-          type: string
-          format: date-time
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/database/api.yaml b/swagger/database/api.yaml
index 40b76995cc7f1fb0776ba1cd9e7dabb012ca377f..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/database/api.yaml
+++ b/swagger/database/api.yaml
@@ -1,1626 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Database Service API
-  description: Service that manages the databases
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9092
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/visibility:
-    put:
-      tags:
-      - database-endpoint
-      summary: Update database
-      operationId: visibility
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseModifyVisibilityDto'
-        required: true
-      responses:
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Visibility modified successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-        "405":
-          description: Visibility modification is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/transfer:
-    put:
-      tags:
-      - database-endpoint
-      summary: Transfer database
-      operationId: transfer
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseTransferDto'
-        required: true
-      responses:
-        "202":
-          description: Transfer of ownership was successful
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Transfer of ownership is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/access/{username}:
-    put:
-      tags:
-      - access-endpoint
-      summary: Modify access to some database
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: username
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseModifyAccessDto'
-        required: true
-      responses:
-        "404":
-          description: Database or user not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Modify access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modify access succeeded
-        "403":
-          description: Modify access not permitted when no access is granted in the
-            first place
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - access-endpoint
-      summary: Revoke access to some database
-      operationId: revoke
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: username
-        in: path
-        required: true
-        schema:
-          type: string
-      responses:
-        "404":
-          description: User with access was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Modify access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Revoke of access not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Revoke of access not permitted as no access was found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Revoked access successfully
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database:
-    get:
-      tags:
-      - database-endpoint
-      summary: List databases
-      operationId: list
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List of databases
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/DatabaseBriefDto'
-    post:
-      tags:
-      - database-endpoint
-      summary: Create database
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created a new database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseBriefDto'
-        "404":
-          description: "Container, user or database could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Failed to create user at broker service or virtual host could
-            not be reached at broker service
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Database create permission is missing or grant permissions
-            at broker service failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Container image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Connection to the container failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Database create query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Database name already exist or query store could not be created
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/access:
-    get:
-      tags:
-      - access-endpoint
-      summary: Check access to some database
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "403":
-          description: No access to this database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found database access
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseAccessDto'
-        "405":
-          description: Check access is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - access-endpoint
-      summary: Give access to some database
-      operationId: create_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/DatabaseGiveAccessDto'
-        required: true
-      responses:
-        "202":
-          description: Granting access succeeded
-        "405":
-          description: Granting access not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Granting access query or database connection is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or user not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}:
-    get:
-      tags:
-      - database-endpoint
-      summary: Find some database
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Database information is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or container could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Database found successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - database-endpoint
-      summary: Delete some database
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "400":
-          description: Database delete query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Container or database could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Database delete permission is missing or revoke permissions
-            at broker service failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Container image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Failed to delete user at broker service or virtual host could
-            not be reached at broker service
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Connection to the container failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Deleted a database
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/DatabaseBriefDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/license:
-    get:
-      tags:
-      - license-endpoint
-      summary: Get all licenses
-      operationId: list_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List of licenses
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/LicenseDto'
-components:
-  schemas:
-    DatabaseModifyVisibilityDto:
-      required:
-      - is_public
-      type: object
-      properties:
-        is_public:
-          type: boolean
-          example: true
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    DatabaseTransferDto:
-      required:
-      - username
-      type: object
-      properties:
-        username:
-          type: string
-    DatabaseModifyAccessDto:
-      required:
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-    DatabaseCreateDto:
-      required:
-      - is_public
-      - name
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        is_public:
-          type: boolean
-          example: true
-    ContainerBriefDto:
-      required:
-      - creator
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        running:
-          type: boolean
-          example: true
-        database:
-          $ref: '#/components/schemas/DatabaseBriefDto'
-        created:
-          type: string
-          format: date-time
-        internal_name:
-          type: string
-          example: air-quality
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    DatabaseBriefDto:
-      required:
-      - id
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        engine:
-          type: string
-          example: mariadb:10.5
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        container:
-          $ref: '#/components/schemas/ContainerBriefDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        is_public:
-          type: boolean
-          example: true
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    DatabaseGiveAccessDto:
-      required:
-      - type
-      - username
-      type: object
-      properties:
-        username:
-          type: string
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/generate.sh b/swagger/generate.sh
index a5ca8017a498d330ad46681648897aae8c6fc371..f4edefbfe46d0b1821527ed0d4faa5dd65c14f58 100755
--- a/swagger/generate.sh
+++ b/swagger/generate.sh
@@ -2,13 +2,6 @@
 
 declare -A services
 services[5000]=analyse
-services[9091]=container
-services[9092]=database
-services[9093]=query
-services[9094]=table
-services[9096]=identifier
-services[9097]=semantics
-services[9098]=user
 services[9099]=metadata
 
 function retrieve () {
diff --git a/swagger/identifier/api.yaml b/swagger/identifier/api.yaml
index 002b392bb6df32db0e8153596b5d397297ffb6af..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/identifier/api.yaml
+++ b/swagger/identifier/api.yaml
@@ -1,1333 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Identifier Service API
-  description: Service that manages the identifiers
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9096
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/pid/{id}:
-    put:
-      tags:
-      - persistence-endpoint
-      summary: Update some identifier
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/IdentifierUpdateDto'
-        required: true
-      responses:
-        "405":
-          description: Updating identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Updated identifier
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-        "404":
-          description: Identifier or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Identifier data is not valid to the form
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "406":
-          description: Updating identifier not allowed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - persistence-endpoint
-      summary: Delete some identifier
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Identifier could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Deleting identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Deleted identifier
-      security:
-      - bearerAuth: []
-  /api/identifier:
-    get:
-      tags:
-      - identifier-endpoint
-      summary: Find identifiers
-      operationId: list
-      parameters:
-      - name: dbid
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: qid
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: type
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - database
-          - subset
-      responses:
-        "200":
-          description: List identifiers
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/IdentifierDto'
-    post:
-      tags:
-      - identifier-endpoint
-      summary: Create identifier
-      operationId: create
-      parameters:
-      - name: Authorization
-        in: header
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/IdentifierCreateDto'
-        required: true
-      responses:
-        "406":
-          description: Creating identifier not allowed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Identifier form contains invalid request data
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Query information could not be retrieved
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created identifier
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-        "403":
-          description: Insufficient access rights or authorities
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Creating identifier not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Identifier for this resource already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/pid/{pid}:
-    get:
-      tags:
-      - persistence-endpoint
-      summary: Find some identifier
-      operationId: find
-      parameters:
-      - name: pid
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Accept
-        in: header
-        required: true
-        schema:
-          type: string
-      responses:
-        "200":
-          description: Found identifier successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/IdentifierDto'
-            text/csv: {}
-            text/xml: {}
-            text/bibliography: {}
-            text/bibliography; style=apa: {}
-            text/bibliography; style=ieee: {}
-            text/bibliography; style=bibtex: {}
-        "404":
-          description: Identifier could not be exported from database as the resource
-            was not found
-          content:
-            text/csv:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: "Identifier could not be exported, the requested style is not\
-            \ known"
-          content:
-            text/bibliography:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "502":
-          description: Identifier could not exported from database as it is not reachable
-          content:
-            text/csv:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-components:
-  schemas:
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    IdentifierUpdateDto:
-      required:
-      - cid
-      - creators
-      - dbid
-      - publication_year
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        qid:
-          type: integer
-          format: int64
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        related_identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierCreateDto'
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierCreateDto:
-      required:
-      - value
-      type: object
-      properties:
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    CreatorCreateDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    IdentifierCreateDto:
-      required:
-      - cid
-      - creators
-      - dbid
-      - publication_year
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        qid:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorCreateDto'
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        related_identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierCreateDto'
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/metadata/api.yaml b/swagger/metadata/api.yaml
index bc1c717b5b0b8c20060728b7f1ec377f764cdbe9..2e1ef591c2ec6a959e5820ce009206bf23e897d5 100644
--- a/swagger/metadata/api.yaml
+++ b/swagger/metadata/api.yaml
@@ -8,7 +8,7 @@ info:
   license:
     name: Apache 2.0
     url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
+  version: 1.3.0
 externalDocs:
   description: Sourcecode Documentation
   url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
@@ -18,27 +18,6400 @@ servers:
 - url: https://dbrepo2.tuwien.ac.at
   description: Sandbox
 paths:
-  /api/oai:
+  /api/database/{databaseId}/table/{tableId}/history:
     get:
       tags:
-      - metadata-endpoint
-      summary: Get the record
-      operationId: identify_1_1_1_1
+      - table-history-endpoint
+      summary: Find all history
+      operationId: getAll
       parameters:
-      - name: verb
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "400":
+          description: Table history query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query table history
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table history successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableHistoryDto'
+        "405":
+          description: Find table history is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    head:
+      tags:
+      - table-history-endpoint
+      summary: Find all history
+      operationId: getAll_1
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "400":
+          description: Table history query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query table history
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table history successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableHistoryDto'
+        "405":
+          description: Find table history is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data:
+    get:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getAll_2
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
         in: query
-      - name: parameters
+        required: false
+        schema:
+          type: string
+          format: date-time
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
         in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - table-data-endpoint
+      summary: Update data
+      operationId: update_6
+      parameters:
+      - name: databaseId
+        in: path
         required: true
         schema:
-          $ref: '#/components/schemas/OaiListIdentifiersParameters'
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvUpdateDto'
+        required: true
       responses:
         "200":
-          description: List containers
+          description: OK
+      deprecated: true
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - table-data-endpoint
+      summary: Insert data
+      operationId: insert
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - table-data-endpoint
+      summary: Delete data
+      operationId: delete_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCsvDeleteDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+    head:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getAll_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
           content:
-            text/xml: {}
-components:
-  schemas:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}:
+    get:
+      tags:
+      - user-endpoint
+      summary: Get a user info
+      operationId: find
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      responses:
+        "200":
+          description: Found user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Find user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user information
+      operationId: modify
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserUpdateDto'
+        required: true
+      responses:
+        "404":
+          description: User attribute was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Modified user information
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}/theme:
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user theme
+      operationId: theme
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserThemeSetDto'
+        required: true
+      responses:
+        "202":
+          description: Modified user theme
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User or user attribute was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/user/{id}/password:
+    put:
+      tags:
+      - user-endpoint
+      summary: Modify user password
+      operationId: password
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UserPasswordDto'
+        required: true
+      responses:
+        "202":
+          description: Modified user password
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserDto'
+        "405":
+          description: Modify user is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology/{id}:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: Find one ontology
+      operationId: find_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Find one ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/OntologyDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+    put:
+      tags:
+      - ontology-endpoint
+      summary: Update an ontology
+      operationId: update
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/OntologyModifyDto'
+        required: true
+      responses:
+        "202":
+          description: Updated ontology successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/OntologyDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - ontology-endpoint
+      summary: Delete an ontology
+      operationId: delete
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted ontology successfully
+          content:
+            application/json: {}
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/pid/{id}:
+    put:
+      tags:
+      - persistence-endpoint
+      summary: Update some identifier
+      operationId: update_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/IdentifierSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Updated identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+        "405":
+          description: Updating identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Identifier data is not valid to the form
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Updating identifier not allowed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Identifier or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - persistence-endpoint
+      summary: Delete some identifier
+      operationId: delete_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted identifier
+        "405":
+          description: Deleting identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Identifier could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/maintenance/message/{id}:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find one maintenance message
+      operationId: find_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Get messages
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageDto'
+    put:
+      tags:
+      - maintenance-endpoint
+      summary: Update maintenance message
+      operationId: update_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/BannerMessageUpdateDto'
+        required: true
+      responses:
+        "404":
+          description: Could not find message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageNotFoundException'
+        "202":
+          description: Updated message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageBriefDto'
+    delete:
+      tags:
+      - maintenance-endpoint
+      summary: Delete maintenance message
+      operationId: delete_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Could not find message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageNotFoundException'
+        "202":
+          description: Deleted message
+          content:
+            application/json: {}
+  /api/image/{id}:
+    get:
+      tags:
+      - image-endpoint
+      summary: Find some image
+      operationId: findById
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found image
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+    put:
+      tags:
+      - image-endpoint
+      summary: Update some image
+      operationId: update_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImageChangeDto'
+        required: true
+      responses:
+        "202":
+          description: Updated image successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - image-endpoint
+      summary: Delete some image
+      operationId: delete_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "202":
+          description: Deleted image successfully
+        "404":
+          description: Image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/visibility:
+    put:
+      tags:
+      - database-endpoint
+      summary: Update database
+      operationId: visibility
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseModifyVisibilityDto'
+        required: true
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Visibility modification is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Visibility modified successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/transfer:
+    put:
+      tags:
+      - database-endpoint
+      summary: Transfer database
+      operationId: transfer
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseTransferDto'
+        required: true
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Transfer of ownership is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Transfer of ownership was successful
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/table/{tableId}/column/{columnId}:
+    put:
+      tags:
+      - table-column-endpoint
+      summary: Update a table column semantic mapping
+      operationId: update_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: columnId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Authorization
+        in: header
+        required: true
+        schema:
+          type: string
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ColumnSemanticsUpdateDto'
+        required: true
+      responses:
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Update semantic concept query is malformed or update unit of
+            measurement query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Updated column semantics successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ColumnDto'
+        "405":
+          description: Update column semantics not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ColumnDto'
+        "404":
+          description: "Table, database, semantic concept, unit of measurement or\
+            \ container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/access/{userId}:
+    put:
+      tags:
+      - access-endpoint
+      summary: Modify access to some database
+      operationId: update_5
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: userId
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseModifyAccessDto'
+        required: true
+      responses:
+        "400":
+          description: Modify access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Modify access not permitted when no access is granted in the
+            first place
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Modify access succeeded
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - access-endpoint
+      summary: Revoke access to some database
+      operationId: revoke
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: userId
+        in: path
+        required: true
+        schema:
+          type: string
+          format: uuid
+      responses:
+        "405":
+          description: Revoke of access not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Modify access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Revoke of access not permitted as no access was found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Revoked access successfully
+        "404":
+          description: User with access was not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}:
+    get:
+      tags:
+      - store-endpoint
+      summary: Find some query
+      operationId: find_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: List queries
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Find query is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to select query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, query or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    put:
+      tags:
+      - store-endpoint
+      summary: Persist some query
+      operationId: persist
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/QueryPersistDto'
+        required: true
+      responses:
+        "200":
+          description: Persist query successful
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Persist query is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Query is already persisted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, query or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to persist query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/user:
+    get:
+      tags:
+      - user-endpoint
+      summary: Find all users
+      operationId: findAll
+      responses:
+        "200":
+          description: List users
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/UserBriefDto'
+    post:
+      tags:
+      - user-endpoint
+      summary: Create user
+      operationId: create
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/SignupRequestDto'
+        required: true
+      responses:
+        "201":
+          description: Created user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UserBriefDto'
+        "400":
+          description: Parameters are not well-formed (likely email)
+          content:
+            application/json: {}
+        "409":
+          description: User with username already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: User with e-mail already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: default role not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+  /api/semantic/unit:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: List semantic units
+      operationId: findAllUnits
+      responses:
+        "200":
+          description: Find all semantic units
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/UnitDto'
+    post:
+      tags:
+      - semantics-endpoint
+      summary: Save a semantic unit
+      operationId: saveUnit
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/UnitSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Saved a semantic unit
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/UnitDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: List all ontologies
+      operationId: findAll_1
+      responses:
+        "200":
+          description: List all ontologies
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/OntologyDto'
+    post:
+      tags:
+      - ontology-endpoint
+      summary: Register a new ontology
+      operationId: create_1
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/OntologyCreateDto'
+        required: true
+      responses:
+        "201":
+          description: Could not find user
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/concept:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: List semantic concepts
+      operationId: findAllConcepts
+      responses:
+        "200":
+          description: Find all semantic concepts
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ConceptDto'
+    post:
+      tags:
+      - semantics-endpoint
+      summary: Create or update a semantic concept
+      operationId: saveUnit_1
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ConceptSaveDto'
+        required: true
+      responses:
+        "202":
+          description: Saved a semantic concept
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ConceptDto'
+      security:
+      - bearerAuth: []
+  /api/maintenance/message:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find maintenance messages
+      operationId: list
+      responses:
+        "200":
+          description: List messages
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/BannerMessageDto'
+    post:
+      tags:
+      - maintenance-endpoint
+      summary: Create maintenance message
+      operationId: create_2
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/BannerMessageCreateDto'
+        required: true
+      responses:
+        "201":
+          description: Created message
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/BannerMessageBriefDto'
+  /api/image:
+    get:
+      tags:
+      - image-endpoint
+      summary: Find all images
+      operationId: findAll_2
+      responses:
+        "200":
+          description: List images
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ContainerImage'
+    post:
+      tags:
+      - image-endpoint
+      summary: Create image
+      operationId: create_3
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImageCreateDto'
+        required: true
+      responses:
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Image already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Image specification is invalid
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: User could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created image
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ImageDto'
+      security:
+      - bearerAuth: []
+  /api/identifier:
+    get:
+      tags:
+      - identifier-endpoint
+      summary: Find identifiers
+      operationId: list_1
+      parameters:
+      - name: dbid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: qid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: vid
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: type
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+      responses:
+        "200":
+          description: List identifiers
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/IdentifierDto'
+    post:
+      tags:
+      - identifier-endpoint
+      summary: Create identifier
+      operationId: create_4
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/IdentifierSaveDto'
+        required: true
+      responses:
+        "403":
+          description: Insufficient access rights or authorities
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Query information could not be retrieved
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Creating identifier not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Creating identifier not allowed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+        "409":
+          description: Identifier for this resource already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Identifier form contains invalid request data
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database:
+    get:
+      tags:
+      - database-endpoint
+      summary: List databases
+      operationId: list_2
+      responses:
+        "200":
+          description: List of databases
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/DatabaseBriefDto'
+    post:
+      tags:
+      - database-endpoint
+      summary: Create database
+      operationId: create_5
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseCreateDto'
+        required: true
+      responses:
+        "400":
+          description: Database create query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database create permission is missing or grant permissions
+            at broker service failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Connection to the container failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "406":
+          description: Failed to create user at broker service or virtual host could
+            not be reached at broker service
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created a new database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseBriefDto'
+        "404":
+          description: "Container, user or database could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Container image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Database name already exist or query store could not be created
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/access:
+    get:
+      tags:
+      - access-endpoint
+      summary: Check access to some database
+      operationId: find_5
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: No access to this database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found database access
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseAccessDto'
+        "405":
+          description: Check access is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - access-endpoint
+      summary: Give access to some database
+      operationId: create_6
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/DatabaseGiveAccessDto'
+        required: true
+      responses:
+        "400":
+          description: Granting access query or database connection is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Granting access not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Granting access succeeded
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find all views
+      operationId: findAll_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find views successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ViewBriefDto'
+        "405":
+          description: Find views is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - view-endpoint
+      summary: Create a view
+      operationId: create_7
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ViewCreateDto'
+        required: true
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Create view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Create view successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ViewBriefDto'
+        "400":
+          description: Create view query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Create view resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table:
+    get:
+      tags:
+      - table-endpoint
+      summary: List all tables
+      operationId: list_3
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: List tables
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableBriefDto'
+        "405":
+          description: List tables not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Database could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - table-endpoint
+      summary: Create a table
+      operationId: create_8
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/TableCreateDto'
+        required: true
+      responses:
+        "405":
+          description: Create table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Created a new table
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableBriefDto'
+        "400":
+          description: Create table query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Create table conflicts with existing table name
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Broker service failed to create queue
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data/import:
+    post:
+      tags:
+      - table-data-endpoint
+      summary: Insert data from csv
+      operationId: importCsv
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ImportDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query:
+    get:
+      tags:
+      - store-endpoint
+      summary: Find queries
+      operationId: findAll_4
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: persisted
+        in: query
+        required: false
+        schema:
+          type: boolean
+      responses:
+        "200":
+          description: List queries
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/QueryBriefDto'
+        "405":
+          description: Find all queries is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Selection of time-versioned query resulted in an invalid query
+            statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to select query
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    post:
+      tags:
+      - query-endpoint
+      summary: Execute query
+      operationId: execute
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ExecuteStatementDto'
+        required: true
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/container:
+    get:
+      tags:
+      - container-endpoint
+      summary: Find all containers
+      operationId: findAll_5
+      parameters:
+      - name: limit
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int32
+      responses:
+        "200":
+          description: List containers
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/ContainerBriefDto'
+    post:
+      tags:
+      - container-endpoint
+      summary: Create container
+      operationId: create_9
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/ContainerCreateRequestDto'
+        required: true
+      responses:
+        "201":
+          description: Created a new container
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ContainerBriefDto'
+        "404":
+          description: Container image or user could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "409":
+          description: Container name already exists
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/ontology/{id}/entity:
+    get:
+      tags:
+      - ontology-endpoint
+      summary: Find entities
+      operationId: find_2
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: label
+        in: query
+        required: false
+        schema:
+          type: string
+      - name: uri
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Found entities
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/EntityDto'
+        "400":
+          description: Filter params are invalid
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: Could not find ontology
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Generated query or uri is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/database/{databaseId}/table/{tableId}:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: Suggest table semantics
+      operationId: analyseTable
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Suggested table semantics successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableColumnEntityDto'
+        "404":
+          description: Could not find the table
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Generated query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/semantic/database/{databaseId}/table/{tableId}/column/{columnId}:
+    get:
+      tags:
+      - semantics-endpoint
+      summary: Suggest table column semantics
+      operationId: analyseTableColumn
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: columnId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "404":
+          description: Could not find the table column
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Suggested table column semantics successfully
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/TableColumnEntityDto'
+        "417":
+          description: Generated query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/pid/{pid}:
+    get:
+      tags:
+      - persistence-endpoint
+      summary: Find some identifier
+      operationId: find_3
+      parameters:
+      - name: pid
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Accept
+        in: header
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Found identifier successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+            text/csv: {}
+            text/xml: {}
+            text/bibliography: {}
+            text/bibliography; style=apa: {}
+            text/bibliography; style=ieee: {}
+            text/bibliography; style=bibtex: {}
+        "404":
+          description: Identifier could not be exported from database as the resource
+            was not found
+          content:
+            text/csv:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Identifier could not exported from database as it is not reachable
+          content:
+            text/csv:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: "Identifier could not be exported, the requested style is not\
+            \ known"
+          content:
+            text/bibliography:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+  /api/oai:
+    get:
+      tags:
+      - metadata-endpoint
+      summary: Get the record
+      operationId: identify_1_1_1_1
+      parameters:
+      - name: verb
+        in: query
+      - name: parameters
+        in: query
+        required: true
+        schema:
+          $ref: '#/components/schemas/OaiListIdentifiersParameters'
+      responses:
+        "200":
+          description: List containers
+          content:
+            text/xml: {}
+  /api/maintenance/message/active:
+    get:
+      tags:
+      - maintenance-endpoint
+      summary: Find active maintenance messages
+      operationId: active
+      responses:
+        "200":
+          description: List messages
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/BannerMessageBriefDto'
+  /api/identifier/retrieve:
+    get:
+      tags:
+      - identifier-endpoint
+      summary: Retrieve metadata from identifier
+      operationId: create_10
+      parameters:
+      - name: url
+        in: query
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: Retrieved metadata from identifier
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/IdentifierDto'
+  /api/database/{id}:
+    get:
+      tags:
+      - database-endpoint
+      summary: Find some database
+      operationId: findById_1
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: Database found successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseDto'
+        "404":
+          description: Database or container could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database information is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - database-endpoint
+      summary: Delete some database
+      operationId: delete_4
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "406":
+          description: Failed to delete user at broker service or virtual host could
+            not be reached at broker service
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "502":
+          description: Connection to the container failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "201":
+          description: Deleted a database
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/DatabaseBriefDto'
+        "404":
+          description: Container or database could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Database delete query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Container image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Database delete permission is missing or revoke permissions
+            at broker service failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{id}/table/{tableId}/export:
+    get:
+      tags:
+      - export-endpoint
+      summary: Export table
+      operationId: export
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: string
+                format: binary
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find one view
+      operationId: find_6
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "405":
+          description: Find view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find view successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ViewDto'
+        "404":
+          description: "Database, view or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - view-endpoint
+      summary: Delete one view
+      operationId: delete_5
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, view or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Delete view is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Delete view successfully
+        "400":
+          description: Delete view query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Delete view resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}/data:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find view data
+      operationId: data
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Database, view, container or user could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "423":
+          description: Find data resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "401":
+          description: Credentials missing
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "504":
+          description: Query store failed to query view data
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find data successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+        "405":
+          description: Find data is not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "503":
+          description: Connection to the database failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Pagination not in valid range or find data query is malformed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "417":
+          description: Parsing of resulting columns failed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/view/{viewId}/data/count:
+    get:
+      tags:
+      - view-endpoint
+      summary: Find view data count
+      operationId: count
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: viewId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}:
+    get:
+      tags:
+      - table-endpoint
+      summary: Get information about table
+      operationId: findById_2
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "405":
+          description: Find table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Find table successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableDto'
+      security:
+      - bearerAuth: []
+    delete:
+      tags:
+      - table-endpoint
+      summary: Delete a table
+      operationId: delete_6
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "403":
+          description: Access to the database is forbidden
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "501":
+          description: Image is not supported
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "405":
+          description: Delete table not permitted
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "404":
+          description: "Table, database or container could not be found"
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "400":
+          description: Delete table query resulted in an invalid query statement
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Delete table successfully
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/TableDto'
+        "423":
+          description: Delete table resulted in an invalid state
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/table/{tableId}/data/count:
+    get:
+      tags:
+      - table-data-endpoint
+      summary: Find data
+      operationId: getCount
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: tableId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: timestamp
+        in: query
+        required: false
+        schema:
+          type: string
+          format: date-time
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/export:
+    get:
+      tags:
+      - query-endpoint
+      summary: Exports some query
+      operationId: export_1
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: Accept
+        in: header
+        required: true
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: object
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/data:
+    get:
+      tags:
+      - query-endpoint
+      summary: Re-execute some query
+      operationId: reExecute
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: page
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: size
+        in: query
+        required: false
+        schema:
+          type: integer
+          format: int64
+      - name: sortDirection
+        in: query
+        required: false
+        schema:
+          type: string
+          enum:
+          - asc
+          - desc
+      - name: sortColumn
+        in: query
+        required: false
+        schema:
+          type: string
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/QueryResultDto'
+      security:
+      - bearerAuth: []
+  /api/database/{databaseId}/query/{queryId}/data/count:
+    get:
+      tags:
+      - query-endpoint
+      summary: Re-execute some query
+      operationId: reExecuteCount
+      parameters:
+      - name: databaseId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      - name: queryId
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "200":
+          description: OK
+          content:
+            '*/*':
+              schema:
+                type: integer
+                format: int64
+      security:
+      - bearerAuth: []
+  /api/database/license:
+    get:
+      tags:
+      - license-endpoint
+      summary: Get all licenses
+      operationId: list_4
+      responses:
+        "200":
+          description: List of licenses
+          content:
+            application/json:
+              schema:
+                type: array
+                items:
+                  $ref: '#/components/schemas/LicenseDto'
+  /api/container/{id}:
+    get:
+      tags:
+      - container-endpoint
+      summary: Find some container
+      operationId: findById_3
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "502":
+          description: Failed to connect
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "200":
+          description: Found container
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ContainerDto'
+        "404":
+          description: Container image could not be found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+    delete:
+      tags:
+      - container-endpoint
+      summary: Delete some container
+      operationId: delete_8
+      parameters:
+      - name: id
+        in: path
+        required: true
+        schema:
+          type: integer
+          format: int64
+      responses:
+        "409":
+          description: Container is still running
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "410":
+          description: Container is already removed
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ApiErrorDto'
+        "202":
+          description: Deleted container successfully
+      security:
+      - bearerAuth: []
+components:
+  schemas:
+    ApiErrorDto:
+      required:
+      - code
+      - message
+      - status
+      type: object
+      properties:
+        status:
+          type: string
+          example: NOT_FOUND
+          enum:
+          - 100 CONTINUE
+          - 101 SWITCHING_PROTOCOLS
+          - 102 PROCESSING
+          - 103 EARLY_HINTS
+          - 103 CHECKPOINT
+          - 200 OK
+          - 201 CREATED
+          - 202 ACCEPTED
+          - 203 NON_AUTHORITATIVE_INFORMATION
+          - 204 NO_CONTENT
+          - 205 RESET_CONTENT
+          - 206 PARTIAL_CONTENT
+          - 207 MULTI_STATUS
+          - 208 ALREADY_REPORTED
+          - 226 IM_USED
+          - 300 MULTIPLE_CHOICES
+          - 301 MOVED_PERMANENTLY
+          - 302 FOUND
+          - 302 MOVED_TEMPORARILY
+          - 303 SEE_OTHER
+          - 304 NOT_MODIFIED
+          - 305 USE_PROXY
+          - 307 TEMPORARY_REDIRECT
+          - 308 PERMANENT_REDIRECT
+          - 400 BAD_REQUEST
+          - 401 UNAUTHORIZED
+          - 402 PAYMENT_REQUIRED
+          - 403 FORBIDDEN
+          - 404 NOT_FOUND
+          - 405 METHOD_NOT_ALLOWED
+          - 406 NOT_ACCEPTABLE
+          - 407 PROXY_AUTHENTICATION_REQUIRED
+          - 408 REQUEST_TIMEOUT
+          - 409 CONFLICT
+          - 410 GONE
+          - 411 LENGTH_REQUIRED
+          - 412 PRECONDITION_FAILED
+          - 413 PAYLOAD_TOO_LARGE
+          - 413 REQUEST_ENTITY_TOO_LARGE
+          - 414 URI_TOO_LONG
+          - 414 REQUEST_URI_TOO_LONG
+          - 415 UNSUPPORTED_MEDIA_TYPE
+          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
+          - 417 EXPECTATION_FAILED
+          - 418 I_AM_A_TEAPOT
+          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
+          - 420 METHOD_FAILURE
+          - 421 DESTINATION_LOCKED
+          - 422 UNPROCESSABLE_ENTITY
+          - 423 LOCKED
+          - 424 FAILED_DEPENDENCY
+          - 425 TOO_EARLY
+          - 426 UPGRADE_REQUIRED
+          - 428 PRECONDITION_REQUIRED
+          - 429 TOO_MANY_REQUESTS
+          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
+          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
+          - 500 INTERNAL_SERVER_ERROR
+          - 501 NOT_IMPLEMENTED
+          - 502 BAD_GATEWAY
+          - 503 SERVICE_UNAVAILABLE
+          - 504 GATEWAY_TIMEOUT
+          - 505 HTTP_VERSION_NOT_SUPPORTED
+          - 506 VARIANT_ALSO_NEGOTIATES
+          - 507 INSUFFICIENT_STORAGE
+          - 508 LOOP_DETECTED
+          - 509 BANDWIDTH_LIMIT_EXCEEDED
+          - 510 NOT_EXTENDED
+          - 511 NETWORK_AUTHENTICATION_REQUIRED
+        message:
+          type: string
+          example: Error message
+        code:
+          type: string
+          example: error.service.code
+    TableHistoryDto:
+      required:
+      - event
+      - timestamp
+      - total
+      type: object
+      properties:
+        timestamp:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        event:
+          type: string
+        total:
+          type: integer
+          format: int64
+          example: 1
+    QueryResultDto:
+      required:
+      - headers
+      - id
+      - result
+      type: object
+      properties:
+        result:
+          type: array
+          items:
+            type: object
+            additionalProperties:
+              type: object
+        headers:
+          type: array
+          items:
+            type: object
+            additionalProperties:
+              type: integer
+              format: int32
+        id:
+          type: integer
+          format: int64
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+    UserUpdateDto:
+      type: object
+      properties:
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Brown University
+        orcid:
+          type: string
+          example: 0000-0002-1825-0097
+    UserAttributesDto:
+      type: object
+      properties:
+        orcid:
+          type: string
+          example: https://orcid.org/0000-0002-1825-0097
+        affiliation:
+          type: string
+          example: Brown University
+    UserDto:
+      required:
+      - attributes
+      - email
+      - id
+      - username
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
+        username:
+          type: string
+          description: Only contains lowercase characters
+          example: jcarberry
+        name:
+          type: string
+          example: Josiah Carberry
+        attributes:
+          $ref: '#/components/schemas/UserAttributesDto'
+        email:
+          type: string
+          example: jcarberry@brown.edu
+        given_name:
+          type: string
+          example: Josiah
+        family_name:
+          type: string
+          example: Carberry
+    UserThemeSetDto:
+      required:
+      - theme_dark
+      type: object
+      properties:
+        theme_dark:
+          type: boolean
+          example: true
+    UserPasswordDto:
+      required:
+      - password
+      type: object
+      properties:
+        password:
+          type: string
+    OntologyModifyDto:
+      required:
+      - prefix
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: Ontology URI
+        prefix:
+          type: string
+          example: Ontology prefix
+        sparql_endpoint:
+          type: string
+          example: Ontology SPARQL endpoint
+    OntologyDto:
+      required:
+      - created
+      - id
+      - prefix
+      - rdf
+      - sparql
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+          example: http://www.wikidata.org/
+        prefix:
+          type: string
+          example: wd
+        sparql:
+          type: boolean
+          example: true
+        rdf:
+          type: boolean
+          example: false
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        uri_pattern:
+          type: string
+          example: http://www.wikidata.org/entity/.*
+        sparql_endpoint:
+          type: string
+          example: https://query.wikidata.org/sparql
+    UserBriefDto:
+      required:
+      - id
+      - username
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
+        username:
+          type: string
+          description: Only contains lowercase characters
+          example: jcarberry
+        name:
+          type: string
+          example: Josiah Carberry
+        orcid:
+          type: string
+          example: 0000-0002-1825-0097
+        given_name:
+          type: string
+          example: Josiah
+        family_name:
+          type: string
+          example: Carberry
+    CreatorSaveDto:
+      required:
+      - creator_name
+      - firstname
+      - lastname
+      - name_type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Wesleyan University
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        name_identifier:
+          type: string
+          example: 0000-0002-1825-0097
+        name_identifier_scheme:
+          type: string
+          example: ORCID
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        affiliation_identifier:
+          type: string
+          example: https://ror.org/04d836q62
+        affiliation_identifier_scheme:
+          type: string
+          example: ROR
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+    IdentifierFunderSaveDto:
+      required:
+      - funder_name
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funder_name:
+          type: string
+          example: European Commission
+        funder_identifier:
+          type: string
+          example: http://doi.org/10.13039/501100000780
+        funder_identifier_type:
+          type: string
+          example: Crossref Funder ID
+          enum:
+          - Crossref Funder ID
+          - ROR
+          - GND
+          - ISNI
+          - Other
+        scheme_uri:
+          type: string
+          example: http://doi.org/
+        award_number:
+          type: string
+          example: "824087"
+        award_title:
+          type: string
+          example: EOSC-Life
+    IdentifierSaveDescriptionDto:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+          example: "Air quality reports at Stephansplatz, Vienna"
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Abstract
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+    IdentifierSaveDto:
+      required:
+      - creators
+      - database_id
+      - publication_year
+      - type
+      - visibility
+      type: object
+      properties:
+        type:
+          type: string
+          example: database
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierSaveTitleDto'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierSaveDescriptionDto'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunderSaveDto'
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/LicenseDto'
+        visibility:
+          type: string
+          example: everyone
+          enum:
+          - everyone
+          - self
+        publisher:
+          type: string
+          example: TU Wien
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorSaveDto'
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+        view_id:
+          type: integer
+          format: int64
+        publication_day:
+          type: integer
+          format: int32
+          example: 15
+        publication_month:
+          type: integer
+          format: int32
+          example: 12
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+        related_identifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifierSaveDto'
+    IdentifierSaveTitleDto:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+          example: Airquality Demonstrator
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Subtitle
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+    LicenseDto:
+      required:
+      - identifier
+      - uri
+      type: object
+      properties:
+        identifier:
+          type: string
+          example: MIT
+        uri:
+          type: string
+          example: https://opensource.org/licenses/MIT
+    RelatedIdentifierSaveDto:
+      required:
+      - value
+      type: object
+      properties:
+        value:
+          type: string
+          example: 10.70124/dc4zh-9ce78
+        type:
+          type: string
+          example: DOI
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          example: Cites
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+    ColumnBriefDto:
+      required:
+      - column_type
+      - database_id
+      - id
+      - internal_name
+      - name
+      - table_id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: date
+        alias:
+          type: string
+        database_id:
+          type: integer
+          format: int64
+        table_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: mdb_date
+        column_type:
+          type: string
+          example: date
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+    ContainerDto:
+      required:
+      - created
+      - host
+      - id
+      - internal_name
+      - name
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        host:
+          type: string
+        port:
+          type: integer
+          format: int32
+        image:
+          $ref: '#/components/schemas/ImageBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        internal_name:
+          type: string
+          example: data-db
+    CreatorBriefDto:
+      required:
+      - creator_name
+      type: object
+      properties:
+        affiliation:
+          type: string
+          example: Wesleyan University
+        name_identifier:
+          type: string
+          example: https://orcid.org/0000-0002-1825-0097
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+    CreatorDto:
+      required:
+      - creator_name
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+          example: Josiah
+        lastname:
+          type: string
+          example: Carberry
+        affiliation:
+          type: string
+          example: Brown University
+        creator_name:
+          type: string
+          example: "Carberry, Josiah"
+        name_type:
+          type: string
+          example: Personal
+          enum:
+          - Personal
+          - Organizational
+        name_identifier:
+          type: string
+          example: 0000-0002-1825-0097
+        name_identifier_scheme:
+          type: string
+          example: ORCID
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        name_identifier_scheme_uri:
+          type: string
+          example: https://orcid.org/
+        affiliation_identifier:
+          type: string
+          example: https://ror.org/05gq02987
+        affiliation_identifier_scheme:
+          type: string
+          example: ROR
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+        affiliation_identifier_scheme_uri:
+          type: string
+          example: https://ror.org/
+    DatabaseAccessDto:
+      required:
+      - created
+      - type
+      - user
+      type: object
+      properties:
+        user:
+          $ref: '#/components/schemas/UserDto'
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    DatabaseDto:
+      required:
+      - created
+      - creator
+      - exchange_name
+      - id
+      - internal_name
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        description:
+          type: string
+          example: Air Quality
+        tables:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableBriefDto'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/ViewBriefDto'
+        image:
+          $ref: '#/components/schemas/ImageDto'
+        container:
+          $ref: '#/components/schemas/ContainerDto'
+        accesses:
+          type: array
+          items:
+            $ref: '#/components/schemas/DatabaseAccessDto'
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        exchange_name:
+          type: string
+          example: dbrepo.air_quality
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+    IdentifierBriefDto:
+      required:
+      - creators
+      - id
+      - publication_year
+      - type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitleDto'
+        doi:
+          type: string
+          example: 10.1038/nphys1170
+        publisher:
+          type: string
+          example: TU Wien
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorBriefDto'
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+          example: 1
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+    IdentifierDescriptionDto:
+      required:
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+          example: "Air quality reports at Stephansplatz, Vienna"
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          example: Abstract
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+    IdentifierDto:
+      required:
+      - created
+      - creators
+      - database
+      - execution
+      - id
+      - last_modified
+      - publication_year
+      - query
+      - query_hash
+      - query_normalized
+      - result_hash
+      - result_number
+      - type
+      - visibility
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - database
+          - subset
+          - view
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitleDto'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierDescriptionDto'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunderDto'
+        query:
+          type: string
+          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
+            \ = \"09:STEF\""
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        execution:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        visibility:
+          type: string
+          example: everyone
+          enum:
+          - everyone
+          - self
+        doi:
+          type: string
+          example: 10.1038/nphys1170
+        publisher:
+          type: string
+          example: TU Wien
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/LicenseDto'
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/CreatorDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        database_id:
+          type: integer
+          format: int64
+          example: 1
+        query_id:
+          type: integer
+          format: int64
+          example: 1
+        view_id:
+          type: integer
+          format: int64
+          example: 1
+        query_normalized:
+          type: string
+          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
+            \ = \"09:STEF\""
+        related_identifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifierDto'
+        query_hash:
+          type: string
+          description: query hash in sha512
+        result_hash:
+          type: string
+          example: 34fe82cda2c53f13f8d90cfd7a3469e3a939ff311add50dce30d9136397bf8e5
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        publication_day:
+          type: integer
+          format: int32
+          example: 15
+        publication_month:
+          type: integer
+          format: int32
+          example: 12
+        publication_year:
+          type: integer
+          format: int32
+          example: 2022
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    IdentifierFunderDto:
+      required:
+      - funder_name
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funder_name:
+          type: string
+          example: European Commission
+        funder_identifier:
+          type: string
+          example: http://doi.org/10.13039/501100000780
+        funder_identifier_type:
+          type: string
+          example: Crossref Funder ID
+          enum:
+          - Crossref Funder ID
+          - ROR
+          - GND
+          - ISNI
+          - Other
+        scheme_uri:
+          type: string
+          example: http://doi.org/
+        award_number:
+          type: string
+          example: "824087"
+        award_title:
+          type: string
+          example: EOSC-Life
+    IdentifierTitleDto:
+      required:
+      - id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+          example: Airquality Demonstrator
+        language:
+          type: string
+          example: en
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        type:
+          type: string
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+    ImageBriefDto:
+      required:
+      - id
+      - name
+      - version
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+          example: "10.5"
+    ImageDateDto:
+      required:
+      - created_at
+      - database_format
+      - example
+      - has_time
+      - id
+      - unix_format
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        example:
+          type: string
+          example: 30.01.2022
+        database_format:
+          type: string
+          example: '%d.%c.%Y'
+        unix_format:
+          type: string
+          example: dd.MM.YYYY
+        has_time:
+          type: boolean
+          example: false
+        created_at:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ImageDto:
+      required:
+      - default_port
+      - dialect
+      - driver_class
+      - id
+      - jdbc_method
+      - name
+      - registry
+      - version
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        registry:
+          type: string
+          example: docker.io/library
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+          example: "10.5"
+        dialect:
+          type: string
+          example: org.hibernate.dialect.MariaDBDialect
+        driver_class:
+          type: string
+          example: org.mariadb.jdbc.Driver
+        date_formats:
+          type: array
+          items:
+            $ref: '#/components/schemas/ImageDateDto'
+        jdbc_method:
+          type: string
+          example: mariadb
+        default_port:
+          type: integer
+          format: int32
+          example: 3306
+    RelatedIdentifierDto:
+      required:
+      - created
+      - id
+      - value
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        value:
+          type: string
+          example: 10.70124/dc4zh-9ce78
+        type:
+          type: string
+          example: DOI
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          example: Cites
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    TableBriefDto:
+      required:
+      - columns
+      - description
+      - id
+      - internal_name
+      - is_versioned
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_versioned:
+          type: boolean
+          example: true
+    ViewBriefDto:
+      required:
+      - created
+      - creator
+      - id
+      - internal_name
+      - name
+      - query
+      - query_hash
+      - vdbid
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        vdbid:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+        initial_view:
+          type: boolean
+          description: True if it is the default view for the database
+          example: true
+        query_hash:
+          type: string
+          example: 7de03e818900b6ea6d58ad0306d4a741d658c6df3d1964e89ed2395d8c7e7916
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    BannerMessageUpdateDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    BannerMessageNotFoundException:
+      type: object
+      properties:
+        cause:
+          type: object
+          properties:
+            stackTrace:
+              type: array
+              items:
+                type: object
+                properties:
+                  classLoaderName:
+                    type: string
+                  moduleName:
+                    type: string
+                  moduleVersion:
+                    type: string
+                  methodName:
+                    type: string
+                  fileName:
+                    type: string
+                  lineNumber:
+                    type: integer
+                    format: int32
+                  nativeMethod:
+                    type: boolean
+                  className:
+                    type: string
+            message:
+              type: string
+            suppressed:
+              type: array
+              items:
+                type: object
+                properties:
+                  stackTrace:
+                    type: array
+                    items:
+                      type: object
+                      properties:
+                        classLoaderName:
+                          type: string
+                        moduleName:
+                          type: string
+                        moduleVersion:
+                          type: string
+                        methodName:
+                          type: string
+                        fileName:
+                          type: string
+                        lineNumber:
+                          type: integer
+                          format: int32
+                        nativeMethod:
+                          type: boolean
+                        className:
+                          type: string
+                  message:
+                    type: string
+                  localizedMessage:
+                    type: string
+            localizedMessage:
+              type: string
+        stackTrace:
+          type: array
+          items:
+            type: object
+            properties:
+              classLoaderName:
+                type: string
+              moduleName:
+                type: string
+              moduleVersion:
+                type: string
+              methodName:
+                type: string
+              fileName:
+                type: string
+              lineNumber:
+                type: integer
+                format: int32
+              nativeMethod:
+                type: boolean
+              className:
+                type: string
+        message:
+          type: string
+        suppressed:
+          type: array
+          items:
+            type: object
+            properties:
+              stackTrace:
+                type: array
+                items:
+                  type: object
+                  properties:
+                    classLoaderName:
+                      type: string
+                    moduleName:
+                      type: string
+                    moduleVersion:
+                      type: string
+                    methodName:
+                      type: string
+                    fileName:
+                      type: string
+                    lineNumber:
+                      type: integer
+                      format: int32
+                    nativeMethod:
+                      type: boolean
+                    className:
+                      type: string
+              message:
+                type: string
+              localizedMessage:
+                type: string
+        localizedMessage:
+          type: string
+    BannerMessageBriefDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+    ImageChangeDto:
+      required:
+      - dialect
+      - driver_class
+      - jdbc_method
+      - registry
+      type: object
+      properties:
+        registry:
+          type: string
+          example: docker.io/library
+        defaultPort:
+          maximum: 65535
+          minimum: 1024
+          type: integer
+          format: int32
+          example: 5432
+        dialect:
+          type: string
+          example: Postgres
+        driver_class:
+          type: string
+          example: org.postgresql.Driver
+        jdbc_method:
+          type: string
+          example: postgresql
+    DatabaseModifyVisibilityDto:
+      required:
+      - is_public
+      type: object
+      properties:
+        is_public:
+          type: boolean
+          example: true
+    DatabaseTransferDto:
+      required:
+      - username
+      type: object
+      properties:
+        username:
+          type: string
+    ColumnSemanticsUpdateDto:
+      type: object
+      properties:
+        concept_uri:
+          type: string
+        unit_uri:
+          type: string
+    ColumnDto:
+      required:
+      - auto_generated
+      - column_type
+      - database_id
+      - id
+      - internal_name
+      - is_null_allowed
+      - is_primary_key
+      - is_public
+      - name
+      - table_id
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Date
+        alias:
+          type: string
+        size:
+          type: integer
+          format: int32
+          example: 255
+        d:
+          type: integer
+          format: int32
+          example: 0
+        concept:
+          $ref: '#/components/schemas/ConceptDto'
+        unit:
+          $ref: '#/components/schemas/UnitDto'
+        enums:
+          type: array
+          items:
+            type: string
+        sets:
+          type: array
+          items:
+            type: string
+        database_id:
+          type: integer
+          format: int64
+        table_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: mdb_date
+        date_format:
+          $ref: '#/components/schemas/ImageDateDto'
+        auto_generated:
+          type: boolean
+          example: false
+        is_primary_key:
+          type: boolean
+          example: true
+        index_length:
+          type: integer
+          format: int32
+        column_type:
+          type: string
+          example: string
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+        is_public:
+          type: boolean
+          example: true
+        is_null_allowed:
+          type: boolean
+          example: false
+    ConceptDto:
+      required:
+      - columns
+      - created
+      - id
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+    UnitDto:
+      required:
+      - columns
+      - created
+      - id
+      - uri
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnBriefDto'
+    DatabaseModifyAccessDto:
+      required:
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+    TableCsvUpdateDto:
+      required:
+      - data
+      - keys
+      type: object
+      properties:
+        data:
+          type: object
+          additionalProperties:
+            type: object
+        keys:
+          type: object
+          additionalProperties:
+            type: object
+    QueryPersistDto:
+      required:
+      - persist
+      type: object
+      properties:
+        persist:
+          type: boolean
+          example: true
+    QueryDto:
+      required:
+      - cid
+      - created
+      - creator
+      - dbid
+      - execution
+      - id
+      - is_persisted
+      - last_modified
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        cid:
+          type: integer
+          format: int64
+        dbid:
+          type: integer
+          format: int64
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        execution:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        type:
+          type: string
+          example: query
+          enum:
+          - query
+          - view
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query_normalized:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        query_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        is_persisted:
+          type: boolean
+          example: true
+        result_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    SignupRequestDto:
+      required:
+      - email
+      - password
+      - username
+      type: object
+      properties:
+        username:
+          pattern: "^[a-z0-9]{3,}$"
+          type: string
+          example: user
+        email:
+          type: string
+          example: user@example.com
+        password:
+          type: string
+    UnitSaveDto:
+      required:
+      - description
+      - name
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+    OntologyCreateDto:
+      required:
+      - prefix
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: Ontology URI
+        prefix:
+          type: string
+          example: Ontology prefix
+        sparql_endpoint:
+          type: string
+          example: Ontology SPARQL endpoint
+    ConceptSaveDto:
+      required:
+      - description
+      - name
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+    BannerMessageCreateDto:
+      required:
+      - message
+      - type
+      type: object
+      properties:
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ImageCreateDto:
+      required:
+      - default_port
+      - dialect
+      - driver_class
+      - jdbc_method
+      - name
+      - registry
+      - version
+      type: object
+      properties:
+        registry:
+          type: string
+          example: docker.io/library
+        name:
+          type: string
+          example: mariadb
+        version:
+          type: string
+        dialect:
+          type: string
+        driver_class:
+          type: string
+        jdbc_method:
+          type: string
+        default_port:
+          maximum: 65535
+          minimum: 1024
+          type: integer
+          format: int32
+    DatabaseCreateDto:
+      required:
+      - container_id
+      - is_public
+      - name
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        container_id:
+          type: integer
+          format: int64
+          example: 1
+        is_public:
+          type: boolean
+          example: true
+    ContainerBriefDto:
+      required:
+      - created
+      - hash
+      - id
+      - internal_name
+      - name
+      - running
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        hash:
+          type: string
+          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
+        name:
+          type: string
+          example: Air Quality
+        running:
+          type: boolean
+          example: true
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        internal_name:
+          type: string
+          example: air-quality
+    DatabaseBriefDto:
+      required:
+      - created
+      - id
+      - image
+      - internal_name
+      - name
+      - owner
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        engine:
+          type: string
+          example: mariadb:10.5
+        owner:
+          $ref: '#/components/schemas/UserBriefDto'
+        container:
+          $ref: '#/components/schemas/ContainerBriefDto'
+        creator:
+          $ref: '#/components/schemas/UserBriefDto'
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        image:
+          $ref: '#/components/schemas/ImageBriefDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+    DatabaseGiveAccessDto:
+      required:
+      - type
+      - userId
+      type: object
+      properties:
+        userId:
+          type: string
+          format: uuid
+        type:
+          type: string
+          enum:
+          - read
+          - write_own
+          - write_all
+    ViewCreateDto:
+      required:
+      - is_public
+      - name
+      - query
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        is_public:
+          type: boolean
+          example: true
+    ColumnCreateDto:
+      required:
+      - name
+      - null_allowed
+      - primary_key
+      - type
+      type: object
+      properties:
+        name:
+          type: string
+          example: Date
+        type:
+          type: string
+          example: string
+          enum:
+          - char
+          - varchar
+          - binary
+          - varbinary
+          - tinyblob
+          - tinytext
+          - text
+          - blob
+          - mediumtext
+          - mediumblob
+          - longtext
+          - longblob
+          - enum
+          - set
+          - bit
+          - tinyint
+          - bool
+          - smallint
+          - mediumint
+          - int
+          - bigint
+          - float
+          - double
+          - decimal
+          - date
+          - datetime
+          - timestamp
+          - time
+          - year
+        size:
+          type: integer
+          format: int32
+          example: 255
+        d:
+          type: integer
+          format: int32
+          example: 0
+        dfid:
+          type: integer
+          description: date format id
+          format: int64
+        enums:
+          type: array
+          description: "enum values, only considered when type = ENUM"
+          items:
+            type: string
+            description: "enum values, only considered when type = ENUM"
+        sets:
+          type: array
+          description: "set values, only considered when type = SET"
+          items:
+            type: string
+            description: "set values, only considered when type = SET"
+        primary_key:
+          type: boolean
+          example: false
+        index_length:
+          type: integer
+          format: int32
+        null_allowed:
+          type: boolean
+          example: true
+    ConstraintsCreateDto:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            type: array
+            items:
+              type: string
+        checks:
+          type: array
+          items:
+            type: string
+        foreign_keys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyCreateDto'
+    ForeignKeyCreateDto:
+      type: object
+      properties:
+        columns:
+          type: array
+          items:
+            type: string
+        referenced_table:
+          type: string
+        referenced_columns:
+          type: array
+          items:
+            type: string
+        on_update:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+        on_delete:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+    TableCreateDto:
+      required:
+      - columns
+      - name
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        description:
+          type: string
+          example: Air Quality in Austria
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnCreateDto'
+        constraints:
+          $ref: '#/components/schemas/ConstraintsCreateDto'
+    TableCsvDto:
+      required:
+      - data
+      type: object
+      properties:
+        data:
+          type: object
+          additionalProperties:
+            type: object
+    ImportDto:
+      required:
+      - location
+      - separator
+      type: object
+      properties:
+        location:
+          type: string
+          example: /tmp/file.csv
+        separator:
+          type: string
+          example: ","
+        quote:
+          type: string
+          example: '"'
+        skip_lines:
+          minimum: 0
+          type: integer
+          format: int64
+        false_element:
+          type: string
+        true_element:
+          type: string
+        null_element:
+          type: string
+          example: NA
+    ExecuteStatementDto:
+      required:
+      - statement
+      type: object
+      properties:
+        statement:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        timestamp:
+          type: string
+          description: Execute query for data at this timestamp
+          format: date-time
+    ContainerCreateRequestDto:
+      required:
+      - host
+      - imageId
+      - name
+      - privilegedPassword
+      - privilegedUsername
+      type: object
+      properties:
+        name:
+          type: string
+          example: Air Quality
+        imageId:
+          type: integer
+          description: Image ID
+          format: int64
+        host:
+          type: string
+          description: Hostname of container
+        port:
+          type: integer
+          description: Port of container
+          format: int32
+        privilegedUsername:
+          type: string
+          description: Username of privileged user
+          example: root
+        privilegedPassword:
+          type: string
+          description: Password of privileged user
+    EntityDto:
+      required:
+      - label
+      - uri
+      type: object
+      properties:
+        uri:
+          type: string
+          example: https://www.wikidata.org/entity/Q1686799
+        label:
+          type: string
+          example: Apache Jena
+        description:
+          type: string
+          example: open source semantic web framework for Java
+    TableColumnEntityDto:
+      required:
+      - columnId
+      - databaseId
+      - tableId
+      - uri
+      type: object
+      properties:
+        databaseId:
+          type: integer
+          format: int64
+          example: 1
+        tableId:
+          type: integer
+          format: int64
+          example: 1
+        columnId:
+          type: integer
+          format: int64
+          example: 1
+        uri:
+          type: string
+          example: https://www.wikidata.org/entity/Q1686799
+        label:
+          type: string
+          example: Apache Jena
+        description:
+          type: string
+          example: open source semantic web framework for Java
     OaiListIdentifiersParameters:
       type: object
       properties:
@@ -52,11 +6425,1575 @@ components:
           type: string
         resumptionToken:
           type: string
+        parametersString:
+          type: string
         fromDate:
           type: string
           format: date-time
         untilDate:
           type: string
           format: date-time
-        parametersString:
+    BannerMessageDto:
+      required:
+      - id
+      - message
+      - type
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        type:
+          type: string
+          enum:
+          - error
+          - warning
+          - info
+        message:
+          type: string
+          example: Maintenance starts on 8am on Monday
+        link:
+          type: string
+          example: https://example.com
+        link_text:
+          type: string
+          example: More
+        display_start:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        display_end:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    Constraints:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            $ref: '#/components/schemas/Unique'
+        foreignKeys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKey'
+        checks:
+          uniqueItems: true
+          type: array
+          items:
+            type: string
+    Container:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+        internalName:
+          type: string
+        imageId:
+          type: integer
+          format: int64
+        host:
+          type: string
+        port:
+          type: integer
+          format: int32
+        databases:
+          type: array
+          items:
+            $ref: '#/components/schemas/Database'
+        image:
+          $ref: '#/components/schemas/ContainerImage'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+        privilegedUsername:
+          type: string
+        privilegedPassword:
+          type: string
+    ContainerImage:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        name:
+          type: string
+        version:
+          type: string
+        driverClass:
+          type: string
+        dialect:
+          type: string
+        jdbcMethod:
+          type: string
+        defaultPort:
+          type: integer
+          format: int32
+        dateFormats:
+          type: array
+          items:
+            $ref: '#/components/schemas/ContainerImageDate'
+        containers:
+          type: array
+          items:
+            $ref: '#/components/schemas/Container'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ContainerImageDate:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        iid:
+          type: integer
+          format: int64
+        image:
+          $ref: '#/components/schemas/ContainerImage'
+        example:
+          type: string
+        hasTime:
+          type: boolean
+        databaseFormat:
+          type: string
+        unixFormat:
+          type: string
+        createdAt:
+          type: string
+          format: date-time
+    Creator:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        firstname:
+          type: string
+        lastname:
+          type: string
+        creatorName:
+          type: string
+        nameType:
+          type: string
+          enum:
+          - Personal
+          - Organizational
+        nameIdentifier:
+          type: string
+        nameIdentifierScheme:
+          type: string
+          enum:
+          - ORCID
+          - ROR
+          - ISNI
+          - GRID
+        nameIdentifierSchemeUri:
+          type: string
+        affiliation:
+          type: string
+        affiliationIdentifier:
+          type: string
+        affiliationIdentifierScheme:
+          type: string
+          enum:
+          - ROR
+          - GRID
+          - ISNI
+        affiliationIdentifierSchemeUri:
+          type: string
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        apaName:
+          type: string
+        bibtexName:
+          type: string
+        ieeeName:
+          type: string
+    Database:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        creator:
+          $ref: '#/components/schemas/User'
+        ownedBy:
+          type: string
+          format: uuid
+        owner:
+          $ref: '#/components/schemas/User'
+        cid:
+          type: integer
+          format: int64
+        container:
+          $ref: '#/components/schemas/Container'
+        name:
+          type: string
+        internalName:
+          type: string
+        exchangeName:
+          type: string
+        description:
+          type: string
+        contactPerson:
+          type: string
+          format: uuid
+        contact:
+          $ref: '#/components/schemas/User'
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        tables:
+          type: array
+          items:
+            $ref: '#/components/schemas/Table'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/View'
+        isPublic:
+          type: boolean
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ForeignKey:
+      type: object
+      properties:
+        fkid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/Table'
+        referencedTable:
+          $ref: '#/components/schemas/Table'
+        references:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyReference'
+        onUpdate:
+          type: string
+          enum:
+          - ReferenceType.RESTRICT
+          - ReferenceType.CASCADE
+          - ReferenceType.SET_NULL
+          - ReferenceType.NO_ACTION
+          - ReferenceType.SET_DEFAULT
+        onDelete:
+          type: string
+          enum:
+          - ReferenceType.RESTRICT
+          - ReferenceType.CASCADE
+          - ReferenceType.SET_NULL
+          - ReferenceType.NO_ACTION
+          - ReferenceType.SET_DEFAULT
+    ForeignKeyReference:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        foreignKey:
+          $ref: '#/components/schemas/ForeignKey'
+        column:
+          $ref: '#/components/schemas/TableColumn'
+        referencedColumn:
+          $ref: '#/components/schemas/TableColumn'
+    Identifier:
+      required:
+      - publisher
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        databaseId:
+          type: integer
+          format: int64
+        queryId:
+          type: integer
+          format: int64
+        viewId:
+          type: integer
+          format: int64
+        creators:
+          type: array
+          items:
+            $ref: '#/components/schemas/Creator'
+        publisher:
+          type: string
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        titles:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierTitle'
+        descriptions:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierDescription'
+        funders:
+          type: array
+          items:
+            $ref: '#/components/schemas/IdentifierFunder'
+        licenses:
+          type: array
+          items:
+            $ref: '#/components/schemas/License'
+        type:
+          type: string
+          enum:
+          - DATABASE
+          - SUBSET
+          - VIEW
+        query:
+          type: string
+        queryNormalized:
+          type: string
+        queryHash:
+          type: string
+        resultHash:
+          type: string
+        execution:
+          type: string
+          format: date-time
+        resultNumber:
+          type: integer
+          format: int64
+        publicationYear:
+          type: integer
+          format: int32
+        publicationMonth:
+          type: integer
+          format: int32
+        publicationDay:
+          type: integer
+          format: int32
+        visibility:
+          type: string
+          enum:
+          - VisibilityType.EVERYONE
+          - VisibilityType.SELF
+        database:
+          $ref: '#/components/schemas/Database'
+        relatedIdentifiers:
+          type: array
+          items:
+            $ref: '#/components/schemas/RelatedIdentifier'
+        doi:
+          type: string
+        createdBy:
+          type: string
+          format: uuid
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    IdentifierDescription:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        description:
+          type: string
+        descriptionType:
+          type: string
+          enum:
+          - Abstract
+          - Methods
+          - SeriesInformation
+          - TableOfContents
+          - TechnicalInfo
+          - Other
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    IdentifierFunder:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        funderName:
+          type: string
+        funderIdentifier:
+          type: string
+        funderIdentifierType:
+          type: string
+          enum:
+          - CROSSREF_FUNDER_ID
+          - ROR
+          - GND
+          - ISNI
+          - OTHER
+        schemeUri:
+          type: string
+        awardNumber:
+          type: string
+        awardTitle:
+          type: string
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    IdentifierTitle:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        title:
+          type: string
+        titleType:
+          type: string
+          enum:
+          - AlternativeTitle
+          - Subtitle
+          - TranslatedTitle
+          - Other
+        language:
+          type: string
+          enum:
+          - ab
+          - aa
+          - af
+          - ak
+          - sq
+          - am
+          - ar
+          - an
+          - hy
+          - as
+          - av
+          - ae
+          - ay
+          - az
+          - bm
+          - ba
+          - eu
+          - be
+          - bn
+          - bh
+          - bi
+          - bs
+          - br
+          - bg
+          - my
+          - ca
+          - km
+          - ch
+          - ce
+          - ny
+          - zh
+          - cu
+          - cv
+          - kw
+          - co
+          - cr
+          - hr
+          - cs
+          - da
+          - dv
+          - nl
+          - dz
+          - en
+          - eo
+          - et
+          - ee
+          - fo
+          - fj
+          - fi
+          - fr
+          - ff
+          - gd
+          - gl
+          - lg
+          - ka
+          - de
+          - ki
+          - el
+          - kl
+          - gn
+          - gu
+          - ht
+          - ha
+          - he
+          - hz
+          - hi
+          - ho
+          - hu
+          - is
+          - io
+          - ig
+          - id
+          - ia
+          - ie
+          - iu
+          - ik
+          - ga
+          - it
+          - ja
+          - jv
+          - kn
+          - kr
+          - ks
+          - kk
+          - rw
+          - kv
+          - kg
+          - ko
+          - kj
+          - ku
+          - ky
+          - lo
+          - la
+          - lv
+          - lb
+          - li
+          - ln
+          - lt
+          - lu
+          - mk
+          - mg
+          - ms
+          - ml
+          - mt
+          - gv
+          - mi
+          - mr
+          - mh
+          - ro
+          - mn
+          - na
+          - nv
+          - nd
+          - ng
+          - ne
+          - se
+          - "no"
+          - nb
+          - nn
+          - ii
+          - oc
+          - oj
+          - or
+          - om
+          - os
+          - pi
+          - pa
+          - ps
+          - fa
+          - pl
+          - pt
+          - qu
+          - rm
+          - rn
+          - ru
+          - sm
+          - sg
+          - sa
+          - sc
+          - sr
+          - sn
+          - sd
+          - si
+          - sk
+          - sl
+          - so
+          - st
+          - nr
+          - es
+          - su
+          - sw
+          - ss
+          - sv
+          - tl
+          - ty
+          - tg
+          - ta
+          - tt
+          - te
+          - th
+          - bo
+          - ti
+          - to
+          - ts
+          - tn
+          - tr
+          - tk
+          - tw
+          - ug
+          - uk
+          - ur
+          - uz
+          - ve
+          - vi
+          - vo
+          - wa
+          - cy
+          - fy
+          - wo
+          - xh
+          - yi
+          - yo
+          - za
+          - zu
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    License:
+      type: object
+      properties:
+        identifier:
+          type: string
+        uri:
+          type: string
+    RelatedIdentifier:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        value:
+          type: string
+        type:
+          type: string
+          enum:
+          - DOI
+          - URL
+          - URN
+          - ARK
+          - arXiv
+          - bibcode
+          - EAN13
+          - EISSN
+          - Handle
+          - IGSN
+          - ISBN
+          - ISTC
+          - LISSN
+          - LSID
+          - PMID
+          - PURL
+          - UPC
+          - w3id
+        relation:
+          type: string
+          enum:
+          - IsCitedBy
+          - Cites
+          - IsSupplementTo
+          - IsSupplementedBy
+          - IsContinuedBy
+          - Continues
+          - IsDescribedBy
+          - Describes
+          - HasMetadata
+          - IsMetadataFor
+          - HasVersion
+          - IsVersionOf
+          - IsNewVersionOf
+          - IsPreviousVersionOf
+          - IsPartOf
+          - HasPart
+          - IsPublishedIn
+          - IsReferencedBy
+          - References
+          - IsDocumentedBy
+          - Documents
+          - IsCompiledBy
+          - Compiles
+          - IsVariantFormOf
+          - IsOriginalFormOf
+          - IsIdenticalTo
+          - IsReviewedBy
+          - Reviews
+          - IsDerivedFrom
+          - IsSourceOf
+          - IsRequiredBy
+          - Requires
+          - IsObsoletedBy
+          - Obsoletes
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+    Table:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        tdbid:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        creator:
+          $ref: '#/components/schemas/User'
+        ownedBy:
+          type: string
+          format: uuid
+        owner:
+          $ref: '#/components/schemas/User'
+        name:
+          type: string
+        internalName:
+          type: string
+        queueName:
+          type: string
+        routingKey:
+          type: string
+        description:
+          type: string
+        database:
+          $ref: '#/components/schemas/Database'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+        constraints:
+          $ref: '#/components/schemas/Constraints'
+        isVersioned:
+          type: boolean
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    TableColumn:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        dateFormat:
+          $ref: '#/components/schemas/ContainerImageDate'
+        table:
+          $ref: '#/components/schemas/Table'
+        views:
+          type: array
+          items:
+            $ref: '#/components/schemas/View'
+        name:
+          type: string
+        autoGenerated:
+          type: boolean
+        internalName:
+          type: string
+        isPrimaryKey:
+          type: boolean
+        indexLength:
+          type: integer
+          format: int32
+        alias:
+          type: string
+        columnType:
+          type: string
+          enum:
+          - TableColumnType.CHAR
+          - TableColumnType.VARCHAR
+          - TableColumnType.BINARY
+          - TableColumnType.VARBINARY
+          - TableColumnType.TINYBLOB
+          - TableColumnType.TINYTEXT
+          - TableColumnType.TEXT
+          - TableColumnType.BLOB
+          - TableColumnType.MEDIUMTEXT
+          - TableColumnType.MEDIUMBLOB
+          - TableColumnType.LONGTEXT
+          - TableColumnType.LONGBLOB
+          - TableColumnType.ENUM
+          - TableColumnType.SET
+          - TableColumnType.BIT
+          - TableColumnType.TINYINT
+          - TableColumnType.BOOL
+          - TableColumnType.SMALLINT
+          - TableColumnType.MEDIUMINT
+          - TableColumnType.INT
+          - TableColumnType.BIGINT
+          - TableColumnType.FLOAT
+          - TableColumnType.DOUBLE
+          - TableColumnType.DECIMAL
+          - TableColumnType.DATE
+          - TableColumnType.DATETIME
+          - TableColumnType.TIMESTAMP
+          - TableColumnType.TIME
+          - TableColumnType.YEAR
+        length:
+          type: integer
+          format: int32
+        isNullAllowed:
+          type: boolean
+        ordinalPosition:
+          type: integer
+          format: int32
+        created:
+          type: string
+          format: date-time
+        concept:
+          $ref: '#/components/schemas/TableColumnConcept'
+        unit:
+          $ref: '#/components/schemas/TableColumnUnit'
+        enums:
+          type: array
+          items:
+            type: string
+        sets:
+          type: array
+          items:
+            type: string
+        size:
+          type: integer
+          format: int32
+        d:
+          type: integer
+          format: int32
+        lastModified:
+          type: string
+          format: date-time
+    TableColumnConcept:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    TableColumnUnit:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        uri:
+          type: string
+        name:
+          type: string
+        description:
+          type: string
+        created:
+          type: string
+          format: date-time
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    Unique:
+      type: object
+      properties:
+        uid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/Table'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+    User:
+      type: object
+      properties:
+        id:
+          type: string
+          format: uuid
+        username:
+          type: string
+        firstname:
+          type: string
+        lastname:
+          type: string
+        email:
+          type: string
+        orcid:
+          type: string
+        affiliation:
+          type: string
+        themeDark:
+          type: boolean
+        mariadbPassword:
+          type: string
+    View:
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        vdbid:
+          type: integer
+          format: int64
+        createdBy:
+          type: string
+          format: uuid
+        name:
+          type: string
+        internalName:
+          type: string
+        isPublic:
+          type: boolean
+        isInitialView:
+          type: boolean
+        query:
+          type: string
+        queryHash:
+          type: string
+        database:
+          $ref: '#/components/schemas/Database'
+        identifier:
+          $ref: '#/components/schemas/Identifier'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/TableColumn'
+        created:
+          type: string
+          format: date-time
+        lastModified:
+          type: string
+          format: date-time
+    ViewDto:
+      required:
+      - columns
+      - created
+      - creator
+      - database
+      - database_id
+      - id
+      - internal_name
+      - name
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        name:
+          type: string
+          example: Air Quality
+        identifier:
+          $ref: '#/components/schemas/IdentifierDto'
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        database_id:
+          type: integer
+          format: int64
+        internal_name:
+          type: string
+          example: air_quality
+        is_public:
+          type: boolean
+          example: true
+        initial_view:
+          type: boolean
+          description: True if it is the default view for the database
+          example: true
+        query_hash:
+          type: string
+          example: 7de03e818900b6ea6d58ad0306d4a741d658c6df3d1964e89ed2395d8c7e7916
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    ConstraintsDto:
+      type: object
+      properties:
+        uniques:
+          type: array
+          items:
+            $ref: '#/components/schemas/UniqueDto'
+        checks:
+          type: array
+          items:
+            type: string
+        foreign_keys:
+          type: array
+          items:
+            $ref: '#/components/schemas/ForeignKeyDto'
+    ForeignKeyDto:
+      type: object
+      properties:
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        referenced_table:
+          $ref: '#/components/schemas/TableBriefDto'
+        referenced_columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        on_update:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+        on_delete:
+          type: string
+          enum:
+          - restrict
+          - cascade
+          - set_null
+          - no_action
+          - set_default
+    TableDto:
+      required:
+      - columns
+      - created
+      - created_by
+      - creator
+      - database
+      - id
+      - internal_name
+      - is_public
+      - is_versioned
+      - name
+      - owner
+      - queue_name
+      - routing_key
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        database:
+          $ref: '#/components/schemas/DatabaseDto'
+        name:
+          type: string
+          example: Air Quality
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        owner:
+          $ref: '#/components/schemas/UserDto'
+        description:
+          type: string
+          example: Air Quality in Austria
+        created:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+        constraints:
+          $ref: '#/components/schemas/ConstraintsDto'
+        internal_name:
+          type: string
+          example: air_quality
+        is_versioned:
+          type: boolean
+          example: true
+        created_by:
+          type: string
+          format: uuid
+        queue_name:
+          type: string
+          example: dbrepo.air_quality
+        routing_key:
+          type: string
+          example: dbrepo.air_quality
+        is_public:
+          type: boolean
+          example: true
+    UniqueDto:
+      required:
+      - columns
+      - table
+      - uid
+      type: object
+      properties:
+        uid:
+          type: integer
+          format: int64
+        table:
+          $ref: '#/components/schemas/TableDto'
+        columns:
+          type: array
+          items:
+            $ref: '#/components/schemas/ColumnDto'
+    QueryBriefDto:
+      required:
+      - cid
+      - created
+      - creator
+      - dbid
+      - execution
+      - id
+      - last_modified
+      - query
+      - query_hash
+      type: object
+      properties:
+        id:
+          type: integer
+          format: int64
+        cid:
+          type: integer
+          format: int64
+        dbid:
+          type: integer
+          format: int64
+        creator:
+          $ref: '#/components/schemas/UserDto'
+        execution:
+          type: string
+          format: date-time
+        query:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        type:
+          type: string
+          example: query
+          enum:
+          - query
+          - view
+        identifier:
+          $ref: '#/components/schemas/IdentifierBriefDto'
+        created:
           type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+        query_normalized:
+          type: string
+          example: SELECT `id` FROM `air_quality`
+        query_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_hash:
+          type: string
+          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
+        result_number:
+          type: integer
+          format: int64
+          example: 1
+        last_modified:
+          type: string
+          format: date-time
+          example: 2021-03-12T15:26:21Z
+    TableCsvDeleteDto:
+      required:
+      - keys
+      type: object
+      properties:
+        keys:
+          type: object
+          additionalProperties:
+            type: object
+  securitySchemes:
+    bearerAuth:
+      type: http
+      scheme: bearer
+      bearerFormat: JWT
diff --git a/swagger/query/api.yaml b/swagger/query/api.yaml
index 16168d93b08fc5f2d3b79131526ad2c8a027b0eb..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/query/api.yaml
+++ b/swagger/query/api.yaml
@@ -1,2520 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Query Service API
-  description: Service that manages the queries
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9093
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/table/{tableId}/history:
-    get:
-      tags:
-      - table-history-endpoint
-      summary: Find all history
-      operationId: getAll
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table history is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table history successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableHistoryDto'
-        "404":
-          description: "Table, database or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query table history
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Table history query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    head:
-      tags:
-      - table-history-endpoint
-      summary: Find all history
-      operationId: getAll_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table history is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table history successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableHistoryDto'
-        "404":
-          description: "Table, database or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query table history
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Table history query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data:
-    get:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getAll_2
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - table-data-endpoint
-      summary: Update data
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvUpdateDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      deprecated: true
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - table-data-endpoint
-      summary: Insert data
-      operationId: insert
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - table-data-endpoint
-      summary: Delete data
-      operationId: delete_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCsvDeleteDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-    head:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getAll_3
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}:
-    get:
-      tags:
-      - store-endpoint
-      summary: Find some query
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: List queries
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryDto'
-        "404":
-          description: "Database, query or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find query is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to select query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - store-endpoint
-      summary: Persist some query
-      operationId: persist
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: "Database, query or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Persist query successful
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryDto'
-        "405":
-          description: Persist query is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to persist query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Query is already persisted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find all views
-      operationId: findAll
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find views is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find views successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ViewBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - view-endpoint
-      summary: Create a view
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ViewCreateDto'
-        required: true
-      responses:
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Database or user could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Create view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Create view successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ViewBriefDto'
-        "423":
-          description: Create view resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Create view query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data/import:
-    post:
-      tags:
-      - table-data-endpoint
-      summary: Insert data from csv
-      operationId: importCsv
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ImportDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query:
-    get:
-      tags:
-      - store-endpoint
-      summary: Find queries
-      operationId: findAll_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: persisted
-        in: query
-        required: false
-        schema:
-          type: boolean
-      responses:
-        "405":
-          description: Find all queries is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to select query
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Selection of time-versioned query resulted in an invalid query
-            statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: List queries
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/QueryBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - query-endpoint
-      summary: Execute query
-      operationId: execute
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ExecuteStatementDto'
-        required: true
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find one view
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find view successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ViewDto'
-        "404":
-          description: "Database, view or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - view-endpoint
-      summary: Delete one view
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, view or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Delete view query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Delete view successfully
-        "423":
-          description: Delete view resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Delete view is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}/data:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find view data
-      operationId: data
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find data successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-        "401":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Find data resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Credentials missing
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "417":
-          description: Parsing of resulting columns failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Query store failed to query view data
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, view, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Pagination not in valid range or find data query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find data is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "503":
-          description: Connection to the database failed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/view/{viewId}/data/count:
-    get:
-      tags:
-      - view-endpoint
-      summary: Find view data count
-      operationId: count
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: viewId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/export:
-    get:
-      tags:
-      - export-endpoint
-      summary: Export table
-      operationId: export
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: string
-                format: binary
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}/data/count:
-    get:
-      tags:
-      - table-data-endpoint
-      summary: Find data
-      operationId: getCount
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: timestamp
-        in: query
-        required: false
-        schema:
-          type: string
-          format: date-time
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/export:
-    get:
-      tags:
-      - query-endpoint
-      summary: Exports some query
-      operationId: export_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Accept
-        in: header
-        required: true
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: object
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/data:
-    get:
-      tags:
-      - query-endpoint
-      summary: Re-execute some query
-      operationId: reExecute
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: page
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: size
-        in: query
-        required: false
-        schema:
-          type: integer
-          format: int64
-      - name: sortDirection
-        in: query
-        required: false
-        schema:
-          type: string
-          enum:
-          - asc
-          - desc
-      - name: sortColumn
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/QueryResultDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/query/{queryId}/data/count:
-    get:
-      tags:
-      - query-endpoint
-      summary: Re-execute some query
-      operationId: reExecuteCount
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: queryId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: integer
-                format: int64
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    TableHistoryDto:
-      required:
-      - event
-      - timestamp
-      - total
-      type: object
-      properties:
-        timestamp:
-          type: string
-          format: date-time
-        event:
-          type: string
-        total:
-          type: integer
-          format: int64
-          example: 1
-    QueryResultDto:
-      required:
-      - id
-      - result
-      type: object
-      properties:
-        result:
-          type: array
-          items:
-            type: object
-            additionalProperties:
-              type: object
-        id:
-          type: integer
-          format: int64
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-    TableCsvUpdateDto:
-      required:
-      - data
-      - keys
-      type: object
-      properties:
-        data:
-          type: object
-          additionalProperties:
-            type: object
-        keys:
-          type: object
-          additionalProperties:
-            type: object
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    QueryDto:
-      required:
-      - cid
-      - created
-      - creator
-      - dbid
-      - id
-      - is_persisted
-      - query
-      - query_hash
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        execution:
-          type: string
-          format: date-time
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        type:
-          type: string
-          example: query
-          enum:
-          - query
-          - view
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        created:
-          type: string
-          format: date-time
-        query_normalized:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        query_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        is_persisted:
-          type: boolean
-          example: true
-        result_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        last_modified:
-          type: string
-          format: date-time
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    ViewCreateDto:
-      required:
-      - is_public
-      - name
-      - query
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        is_public:
-          type: boolean
-          example: true
-    TableCsvDto:
-      required:
-      - data
-      type: object
-      properties:
-        data:
-          type: object
-          additionalProperties:
-            type: object
-    ImportDto:
-      required:
-      - location
-      - separator
-      type: object
-      properties:
-        location:
-          type: string
-          example: /tmp/file.csv
-        separator:
-          type: string
-          example: ","
-        quote:
-          type: string
-          example: '"'
-        skip_lines:
-          minimum: 0
-          type: integer
-          format: int64
-        false_element:
-          type: string
-        true_element:
-          type: string
-        null_element:
-          type: string
-          example: NA
-    ExecuteStatementDto:
-      required:
-      - statement
-      type: object
-      properties:
-        statement:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        timestamp:
-          type: string
-          description: Execute query for data at this timestamp
-          format: date-time
-    ViewDto:
-      required:
-      - created
-      - creator
-      - database
-      - id
-      - internalName
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        name:
-          type: string
-          example: Air Quality
-        internalName:
-          type: string
-          example: air_quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    CreatorBriefDto:
-      required:
-      - firstname
-      - lastname
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-    IdentifierBriefDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - id
-      - publication_year
-      - title
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorBriefDto'
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-    QueryBriefDto:
-      required:
-      - cid
-      - created
-      - creator
-      - dbid
-      - id
-      - query
-      - query_hash
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        cid:
-          type: integer
-          format: int64
-        dbid:
-          type: integer
-          format: int64
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        execution:
-          type: string
-          format: date-time
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        type:
-          type: string
-          example: query
-          enum:
-          - query
-          - view
-        identifier:
-          $ref: '#/components/schemas/IdentifierBriefDto'
-        created:
-          type: string
-          format: date-time
-        query_normalized:
-          type: string
-          example: SELECT `id` FROM `air_quality`
-        query_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_hash:
-          type: string
-          example: 17e682f060b5f8e47ea04c5c4855908b0a5ad612022260fe50e11ecb0cc0ab76
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        last_modified:
-          type: string
-          format: date-time
-    TableCsvDeleteDto:
-      required:
-      - keys
-      type: object
-      properties:
-        keys:
-          type: object
-          additionalProperties:
-            type: object
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/semantics/api.yaml b/swagger/semantics/api.yaml
index c001c6d7bb3539f64f83b76b093d90ac679ce30b..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/semantics/api.yaml
+++ b/swagger/semantics/api.yaml
@@ -1,685 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Semantic Service API
-  description: Service that manages the tables
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9097
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/semantic/ontology/{id}:
-    get:
-      tags:
-      - ontology-endpoint
-      summary: Find one ontology
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Find one ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-    put:
-      tags:
-      - ontology-endpoint
-      summary: Update an ontology
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/OntologyModifyDto'
-        required: true
-      responses:
-        "202":
-          description: Updated ontology successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - ontology-endpoint
-      summary: Delete an ontology
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted ontology successfully
-          content:
-            application/json: {}
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/unit:
-    get:
-      tags:
-      - semantics-endpoint
-      summary: List semantic units
-      operationId: findAllUnits
-      responses:
-        "200":
-          description: Find all semantic units
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/UnitDto'
-    post:
-      tags:
-      - semantics-endpoint
-      summary: Save a semantic unit
-      operationId: saveUnit
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UnitSaveDto'
-        required: true
-      responses:
-        "202":
-          description: Saved a semantic unit
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UnitDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/ontology:
-    get:
-      tags:
-      - ontology-endpoint
-      summary: List all ontologies
-      operationId: findAll
-      responses:
-        "200":
-          description: List all ontologies
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/OntologyDto'
-    post:
-      tags:
-      - ontology-endpoint
-      summary: Register a new ontology
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/OntologyCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Registered ontology successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/OntologyDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/concept:
-    get:
-      tags:
-      - semantics-endpoint
-      summary: List semantic concepts
-      operationId: findAllConcepts
-      responses:
-        "200":
-          description: Find all semantic concepts
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ConceptDto'
-    post:
-      tags:
-      - semantics-endpoint
-      summary: Create or update a semantic concept
-      operationId: saveUnit_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ConceptSaveDto'
-        required: true
-      responses:
-        "202":
-          description: Saved a semantic concept
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ConceptDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/ontology/{id}/entity:
-    get:
-      tags:
-      - query-endpoint
-      summary: Find entities
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: label
-        in: query
-        required: false
-        schema:
-          type: string
-      - name: uri
-        in: query
-        required: false
-        schema:
-          type: string
-      responses:
-        "200":
-          description: Found entities
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/EntityDto'
-        "417":
-          description: Generated query or uri is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Could not find ontology
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Filter params are invalid
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/database/{databaseId}/table/{tableId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Suggest table semantics
-      operationId: analyseTable
-      parameters:
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "417":
-          description: Generated query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Could not find the table
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Suggested table semantics successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableColumnEntityDto'
-      security:
-      - bearerAuth: []
-  /api/semantic/database/{databaseId}/table/{tableId}/column/{columnId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Suggest table column semantics
-      operationId: analyseTableColumn
-      parameters:
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: columnId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "417":
-          description: Generated query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Suggested table column semantics successfully
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableColumnEntityDto'
-        "404":
-          description: Could not find the table column
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    OntologyModifyDto:
-      required:
-      - prefix
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    OntologyDto:
-      required:
-      - created
-      - id
-      - prefix
-      - rdf
-      - sparql
-      - uri
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql:
-          type: boolean
-          example: true
-        rdf:
-          type: boolean
-          example: true
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    UnitSaveDto:
-      required:
-      - description
-      - name
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    UnitDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    OntologyCreateDto:
-      required:
-      - prefix
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: Ontology URI
-        prefix:
-          type: string
-          example: Ontology prefix
-        sparql_endpoint:
-          type: string
-          example: Ontology SPARQL endpoint
-    ConceptSaveDto:
-      required:
-      - description
-      - name
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-    ConceptDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    EntityDto:
-      required:
-      - label
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-          example: https://www.wikidata.org/entity/Q1686799
-        label:
-          type: string
-          example: Apache Jena
-        description:
-          type: string
-          example: open source semantic web framework for Java
-    TableColumnEntityDto:
-      required:
-      - columnId
-      - databaseId
-      - tableId
-      - uri
-      type: object
-      properties:
-        databaseId:
-          type: integer
-          format: int64
-          example: 1
-        tableId:
-          type: integer
-          format: int64
-          example: 1
-        columnId:
-          type: integer
-          format: int64
-          example: 1
-        uri:
-          type: string
-          example: https://www.wikidata.org/entity/Q1686799
-        label:
-          type: string
-          example: Apache Jena
-        description:
-          type: string
-          example: open source semantic web framework for Java
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/table/api.yaml b/swagger/table/api.yaml
index 9639c5fc4e24d730136b88d16a7b5a526dc469d4..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/table/api.yaml
+++ b/swagger/table/api.yaml
@@ -1,860 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository Table Service API
-  description: Service that manages the tables
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Sourcecode Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services
-servers:
-- url: http://localhost:9094
-  description: Generated server url
-- url: https://dbrepo2.tuwien.ac.at
-  description: Sandbox
-paths:
-  /api/container/{id}/database/{databaseId}/table/{tableId}/column/{columnId}:
-    put:
-      tags:
-      - table-column-endpoint
-      summary: Update a table column semantic mapping
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: columnId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: Authorization
-        in: header
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/ColumnSemanticsUpdateDto'
-        required: true
-      responses:
-        "404":
-          description: "Table, database, semantic concept, unit of measurement or\
-            \ container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Updated column semantics successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ColumnDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Update semantic concept query is malformed or update unit of
-            measurement query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Update column semantics not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ColumnDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table:
-    get:
-      tags:
-      - table-endpoint
-      summary: List all tables
-      operationId: list
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "404":
-          description: Database could not be found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: List tables not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: List tables
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/TableBriefDto'
-      security:
-      - bearerAuth: []
-    post:
-      tags:
-      - table-endpoint
-      summary: Create a table
-      operationId: create
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/TableCreateDto'
-        required: true
-      responses:
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "504":
-          description: Broker service failed to create queue
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Database, container or user could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "409":
-          description: Create table conflicts with existing table name
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Create table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created a new table
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableBriefDto'
-        "400":
-          description: Create table query is malformed
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/container/{id}/database/{databaseId}/table/{tableId}:
-    get:
-      tags:
-      - table-endpoint
-      summary: Get information about table
-      operationId: findById
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "405":
-          description: Find table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Find table successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Table, database or container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-    delete:
-      tags:
-      - table-endpoint
-      summary: Delete a table
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: databaseId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      - name: tableId
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "501":
-          description: Image is not supported
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Delete table successfully
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/TableDto'
-        "405":
-          description: Delete table not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "423":
-          description: Delete table resulted in an invalid state
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "400":
-          description: Delete table query resulted in an invalid query statement
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "403":
-          description: Access to the database is forbidden
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: "Table, database or container could not be found"
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-components:
-  schemas:
-    ColumnSemanticsUpdateDto:
-      type: object
-      properties:
-        concept_uri:
-          type: string
-        unit_uri:
-          type: string
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ColumnDto:
-      required:
-      - auto_generated
-      - column_type
-      - id
-      - internal_name
-      - is_null_allowed
-      - is_primary_key
-      - is_public
-      - name
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Date
-        length:
-          type: integer
-          format: int32
-          example: 255
-        concept:
-          $ref: '#/components/schemas/ConceptDto'
-        unit:
-          $ref: '#/components/schemas/UnitDto'
-        internal_name:
-          type: string
-          example: mdb_date
-        date_format:
-          $ref: '#/components/schemas/ImageDateDto'
-        auto_generated:
-          type: boolean
-          example: false
-        is_primary_key:
-          type: boolean
-          example: true
-        index_length:
-          type: integer
-          format: int32
-        column_type:
-          type: string
-          example: string
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-        is_public:
-          type: boolean
-          example: true
-        is_null_allowed:
-          type: boolean
-          example: false
-        enum_values:
-          type: array
-          items:
-            type: string
-    ConceptDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    UnitDto:
-      required:
-      - columns
-      - created
-      - uri
-      type: object
-      properties:
-        uri:
-          type: string
-        name:
-          type: string
-        description:
-          type: string
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-    ColumnCreateDto:
-      required:
-      - name
-      - null_allowed
-      - primary_key
-      - type
-      type: object
-      properties:
-        name:
-          type: string
-          example: Date
-        type:
-          type: string
-          example: string
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-        length:
-          type: integer
-          format: int32
-          example: 255
-        dfid:
-          type: integer
-          description: date format id
-          format: int64
-        primary_key:
-          type: boolean
-          example: false
-        index_length:
-          type: integer
-          format: int32
-        null_allowed:
-          type: boolean
-          example: true
-        enum_values:
-          type: array
-          description: "enum values, only considered when type = ENUM"
-          items:
-            type: string
-            description: "enum values, only considered when type = ENUM"
-    ConstraintsCreateDto:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            type: array
-            items:
-              type: string
-        checks:
-          type: array
-          items:
-            type: string
-        foreign_keys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyCreateDto'
-    ForeignKeyCreateDto:
-      type: object
-      properties:
-        columns:
-          type: array
-          items:
-            type: string
-        referenced_table:
-          type: string
-        referenced_columns:
-          type: array
-          items:
-            type: string
-        on_update:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-        on_delete:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-    TableCreateDto:
-      required:
-      - columns
-      - description
-      - name
-      type: object
-      properties:
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnCreateDto'
-        constraints:
-          $ref: '#/components/schemas/ConstraintsCreateDto'
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ConstraintsDto:
-      type: object
-      properties:
-        uniques:
-          type: array
-          items:
-            type: array
-            items:
-              $ref: '#/components/schemas/ColumnDto'
-        checks:
-          type: array
-          items:
-            type: string
-        foreign_keys:
-          type: array
-          items:
-            $ref: '#/components/schemas/ForeignKeyDto'
-    ForeignKeyDto:
-      type: object
-      properties:
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        referenced_table:
-          $ref: '#/components/schemas/TableBriefDto'
-        referenced_columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        on_update:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-        on_delete:
-          type: string
-          enum:
-          - restrict
-          - cascade
-          - set_null
-          - no_action
-          - set_default
-    TableDto:
-      required:
-      - columns
-      - creator
-      - description
-      - id
-      - internal_name
-      - is_public
-      - name
-      - owner
-      - queue_name
-      - routing_key
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        description:
-          type: string
-          example: Air Quality in Austria
-        created:
-          type: string
-          format: date-time
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnDto'
-        constraints:
-          $ref: '#/components/schemas/ConstraintsDto'
-        internal_name:
-          type: string
-          example: air_quality
-        queue_name:
-          type: string
-          example: dbrepo/air_quality/air_quality
-        routing_key:
-          type: string
-          example: dbrepo/air_quality/air_quality/1
-        is_public:
-          type: boolean
-          example: true
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT
diff --git a/swagger/user/api.yaml b/swagger/user/api.yaml
index 56bd25f5380528b7f08b44b29c83363103d9bd93..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644
--- a/swagger/user/api.yaml
+++ b/swagger/user/api.yaml
@@ -1,1521 +0,0 @@
-openapi: 3.0.1
-info:
-  title: Database Repository User Service API
-  description: Service that manages the users
-  contact:
-    name: Prof. Andreas Rauber
-    email: andreas.rauber@tuwien.ac.at
-  license:
-    name: Apache 2.0
-    url: https://www.apache.org/licenses/LICENSE-2.0
-  version: 1.2.0
-externalDocs:
-  description: Wiki Documentation
-  url: https://gitlab.phaidra.org/fair-data-austria-db-repository/fda-services/-/wikis
-servers:
-- url: http://localhost:9098
-  description: Generated server url
-paths:
-  /api/user/{id}:
-    get:
-      tags:
-      - user-endpoint
-      summary: Get a user info
-      operationId: find
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      responses:
-        "404":
-          description: User was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Find user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "200":
-          description: Found user
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user information
-      operationId: modify
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserUpdateDto'
-        required: true
-      responses:
-        "202":
-          description: Modified user information
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: User attribute was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-      security:
-      - bearerAuth: []
-  /api/user/{id}/theme:
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user theme
-      operationId: theme
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserThemeSetDto'
-        required: true
-      responses:
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: User or user attribute was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modified user theme
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-  /api/user/{id}/password:
-    put:
-      tags:
-      - user-endpoint
-      summary: Modify user password
-      operationId: password
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: string
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/UserPasswordDto'
-        required: true
-      responses:
-        "404":
-          description: User was not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "405":
-          description: Modify user is not permitted
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "202":
-          description: Modified user password
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserDto'
-      security:
-      - bearerAuth: []
-  /api/maintenance/message/{id}:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find one maintenance message
-      operationId: find_1
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "200":
-          description: Get messages
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageDto'
-    put:
-      tags:
-      - maintenance-endpoint
-      summary: Update maintenance message
-      operationId: update
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/BannerMessageUpdateDto'
-        required: true
-      responses:
-        "404":
-          description: Could not find message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageNotFoundException'
-        "202":
-          description: Updated message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageBriefDto'
-    delete:
-      tags:
-      - maintenance-endpoint
-      summary: Delete maintenance message
-      operationId: delete
-      parameters:
-      - name: id
-        in: path
-        required: true
-        schema:
-          type: integer
-          format: int64
-      responses:
-        "202":
-          description: Deleted message
-          content:
-            application/json: {}
-        "404":
-          description: Could not find message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageNotFoundException'
-  /api/user:
-    get:
-      tags:
-      - user-endpoint
-      summary: Find all users
-      operationId: findAll
-      responses:
-        "200":
-          description: List users
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/UserBriefDto'
-    post:
-      tags:
-      - user-endpoint
-      summary: Create user
-      operationId: create
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/SignupRequestDto'
-        required: true
-      responses:
-        "409":
-          description: User with username already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "404":
-          description: Realm or default role not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-        "201":
-          description: Created user
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/UserBriefDto'
-        "417":
-          description: User with e-mail already exists
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ApiErrorDto'
-  /api/maintenance/message:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find maintenance messages
-      operationId: list
-      responses:
-        "200":
-          description: List messages
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/BannerMessageDto'
-    post:
-      tags:
-      - maintenance-endpoint
-      summary: Create maintenance message
-      operationId: create_1
-      requestBody:
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/BannerMessageCreateDto'
-        required: true
-      responses:
-        "201":
-          description: Created message
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/BannerMessageBriefDto'
-  /api/maintenance/message/active:
-    get:
-      tags:
-      - maintenance-endpoint
-      summary: Find active maintenance messages
-      operationId: active
-      responses:
-        "200":
-          description: List messages
-          content:
-            application/json:
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/BannerMessageBriefDto'
-components:
-  schemas:
-    UserUpdateDto:
-      type: object
-      properties:
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Brown University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    ColumnBriefDto:
-      required:
-      - column_type
-      - database_id
-      - id
-      - internal_name
-      - name
-      - table_id
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: date
-        database_id:
-          type: integer
-          format: int64
-        table_id:
-          type: integer
-          format: int64
-        internal_name:
-          type: string
-          example: mdb_date
-        column_type:
-          type: string
-          example: date
-          enum:
-          - enum
-          - number
-          - decimal
-          - string
-          - text
-          - boolean
-          - date
-          - timestamp
-          - blob
-    ContainerDto:
-      required:
-      - created
-      - hash
-      - id
-      - internal_name
-      - name
-      - running
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        hash:
-          type: string
-          example: f829dd8a884182d0da846f365dee1221fd16610a14c81b8f9f295ff162749e50
-        name:
-          type: string
-          example: Air Quality
-        state:
-          type: string
-          example: running
-          enum:
-          - created
-          - restarting
-          - running
-          - paused
-          - exited
-          - dead
-        database:
-          $ref: '#/components/schemas/DatabaseDto'
-        running:
-          type: boolean
-          example: true
-        image:
-          $ref: '#/components/schemas/ImageBriefDto'
-        port:
-          type: integer
-          format: int32
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        internal_name:
-          type: string
-          example: air-quality
-        ip_address:
-          type: string
-    CreatorDto:
-      required:
-      - firstname
-      - id
-      - lastname
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        firstname:
-          type: string
-          example: Josiah
-        lastname:
-          type: string
-          example: Carberry
-        affiliation:
-          type: string
-          example: Wesleyan University
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-    DatabaseAccessDto:
-      required:
-      - type
-      - user
-      type: object
-      properties:
-        user:
-          $ref: '#/components/schemas/UserDto'
-        type:
-          type: string
-          enum:
-          - read
-          - write_own
-          - write_all
-        created:
-          type: string
-          format: date-time
-    DatabaseDto:
-      required:
-      - creator
-      - exchange_name
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        identifier:
-          $ref: '#/components/schemas/IdentifierDto'
-        description:
-          type: string
-          example: Weather Australia 2009-2021
-        tables:
-          type: array
-          items:
-            $ref: '#/components/schemas/TableBriefDto'
-        views:
-          type: array
-          items:
-            $ref: '#/components/schemas/ViewBriefDto'
-        image:
-          $ref: '#/components/schemas/ImageDto'
-        container:
-          $ref: '#/components/schemas/ContainerDto'
-        accesses:
-          type: array
-          items:
-            $ref: '#/components/schemas/DatabaseAccessDto'
-        creator:
-          $ref: '#/components/schemas/UserBriefDto'
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        created:
-          type: string
-          format: date-time
-        exchange_name:
-          type: string
-          example: dbrepo/air_quality
-        internal_name:
-          type: string
-          example: weather_australia
-        is_public:
-          type: boolean
-          example: true
-    IdentifierDto:
-      required:
-      - container id
-      - creators
-      - database id
-      - execution
-      - publication_year
-      - query
-      - query_hash
-      - query_normalized
-      - result_hash
-      - result_number
-      - title
-      - type
-      - visibility
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - database
-          - subset
-        title:
-          type: string
-          example: "Airquality Stephansplatz, Vienna, Austria"
-        description:
-          type: string
-          example: "Air quality reports at Stephansplatz, Vienna"
-        query:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        execution:
-          type: string
-          format: date-time
-        visibility:
-          type: string
-          example: everyone
-          enum:
-          - everyone
-          - self
-        doi:
-          type: string
-          example: 10.1038/nphys1170
-        publisher:
-          type: string
-          example: TU Wien
-        language:
-          type: string
-          enum:
-          - ab
-          - aa
-          - af
-          - ak
-          - sq
-          - am
-          - ar
-          - an
-          - hy
-          - as
-          - av
-          - ae
-          - ay
-          - az
-          - bm
-          - ba
-          - eu
-          - be
-          - bn
-          - bh
-          - bi
-          - bs
-          - br
-          - bg
-          - my
-          - ca
-          - km
-          - ch
-          - ce
-          - ny
-          - zh
-          - cu
-          - cv
-          - kw
-          - co
-          - cr
-          - hr
-          - cs
-          - da
-          - dv
-          - nl
-          - dz
-          - en
-          - eo
-          - et
-          - ee
-          - fo
-          - fj
-          - fi
-          - fr
-          - ff
-          - gd
-          - gl
-          - lg
-          - ka
-          - de
-          - ki
-          - el
-          - kl
-          - gn
-          - gu
-          - ht
-          - ha
-          - he
-          - hz
-          - hi
-          - ho
-          - hu
-          - is
-          - io
-          - ig
-          - id
-          - ia
-          - ie
-          - iu
-          - ik
-          - ga
-          - it
-          - ja
-          - jv
-          - kn
-          - kr
-          - ks
-          - kk
-          - rw
-          - kv
-          - kg
-          - ko
-          - kj
-          - ku
-          - ky
-          - lo
-          - la
-          - lv
-          - lb
-          - li
-          - ln
-          - lt
-          - lu
-          - mk
-          - mg
-          - ms
-          - ml
-          - mt
-          - gv
-          - mi
-          - mr
-          - mh
-          - ro
-          - mn
-          - na
-          - nv
-          - nd
-          - ng
-          - ne
-          - se
-          - "no"
-          - nb
-          - nn
-          - ii
-          - oc
-          - oj
-          - or
-          - om
-          - os
-          - pi
-          - pa
-          - ps
-          - fa
-          - pl
-          - pt
-          - qu
-          - rm
-          - rn
-          - ru
-          - sm
-          - sg
-          - sa
-          - sc
-          - sr
-          - sn
-          - sd
-          - si
-          - sk
-          - sl
-          - so
-          - st
-          - nr
-          - es
-          - su
-          - sw
-          - ss
-          - sv
-          - tl
-          - ty
-          - tg
-          - ta
-          - tt
-          - te
-          - th
-          - bo
-          - ti
-          - to
-          - ts
-          - tn
-          - tr
-          - tk
-          - tw
-          - ug
-          - uk
-          - ur
-          - uz
-          - ve
-          - vi
-          - vo
-          - wa
-          - cy
-          - fy
-          - wo
-          - xh
-          - yi
-          - yo
-          - za
-          - zu
-        license:
-          $ref: '#/components/schemas/LicenseDto'
-        creators:
-          type: array
-          items:
-            $ref: '#/components/schemas/CreatorDto'
-        created:
-          type: string
-          format: date-time
-        container id:
-          type: integer
-          format: int64
-          example: 1
-        database id:
-          type: integer
-          format: int64
-          example: 1
-        query id:
-          type: integer
-          format: int64
-          example: 1
-        query_normalized:
-          type: string
-          example: "SELECT `id`, `value`, `location` FROM `air_quality` WHERE `location`\
-            \ = \"09:STEF\""
-        related:
-          type: array
-          items:
-            $ref: '#/components/schemas/RelatedIdentifierDto'
-        query_hash:
-          type: string
-          description: query hash in sha512
-        result_hash:
-          type: string
-        result_number:
-          type: integer
-          format: int64
-          example: 1
-        publication_day:
-          type: integer
-          format: int32
-          example: 15
-        publication_month:
-          type: integer
-          format: int32
-          example: 12
-        publication_year:
-          type: integer
-          format: int32
-          example: 2022
-        last_modified:
-          type: string
-          format: date-time
-    ImageBriefDto:
-      required:
-      - id
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-    ImageDateDto:
-      required:
-      - database_format
-      - example
-      - has_time
-      - id
-      - unix_format
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        example:
-          type: string
-          example: 30.01.2022
-        database_format:
-          type: string
-          example: '%d.%c.%Y'
-        unix_format:
-          type: string
-          example: dd.MM.YYYY
-        has_time:
-          type: boolean
-          example: false
-        created_at:
-          type: string
-          format: date-time
-    ImageDto:
-      required:
-      - default_port
-      - dialect
-      - driver_class
-      - id
-      - jdbc_method
-      - registry
-      - repository
-      - tag
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        registry:
-          type: string
-          example: docker.io/library
-        repository:
-          type: string
-          example: mariadb
-        tag:
-          type: string
-          example: "10.5"
-        dialect:
-          type: string
-          example: org.hibernate.dialect.MariaDBDialect
-        hash:
-          type: string
-          example: sha256:c5ec7353d87dfc35067e7bffeb25d6a0d52dad41e8b7357213e3b12d6e7ff78e
-        compiled:
-          type: string
-          format: date-time
-          example: 2021-03-12T15:26:21.678396092Z
-        size:
-          type: integer
-          example: 314295447
-        driver_class:
-          type: string
-          example: org.mariadb.jdbc.Driver
-        date_formats:
-          type: array
-          items:
-            $ref: '#/components/schemas/ImageDateDto'
-        jdbc_method:
-          type: string
-          example: mariadb
-        default_port:
-          type: integer
-          format: int32
-          example: 3306
-    LicenseDto:
-      required:
-      - identifier
-      - uri
-      type: object
-      properties:
-        identifier:
-          type: string
-          example: MIT
-        uri:
-          type: string
-          example: https://opensource.org/licenses/MIT
-    RelatedIdentifierDto:
-      required:
-      - created
-      - id
-      - value
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        value:
-          type: string
-          example: 10.70124/dc4zh-9ce78
-        type:
-          type: string
-          example: DOI
-          enum:
-          - DOI
-          - URL
-          - URN
-          - ARK
-          - arXiv
-          - bibcode
-          - EAN13
-          - EISSN
-          - Handle
-          - IGSN
-          - ISBN
-          - ISTC
-          - LISSN
-          - LSID
-          - PMID
-          - PURL
-          - UPC
-          - w3id
-        relation:
-          type: string
-          example: Cites
-          enum:
-          - IsCitedBy
-          - Cites
-          - IsSupplementTo
-          - IsSupplementedBy
-          - IsContinuedBy
-          - Continues
-          - IsDescribedBy
-          - Describes
-          - HasMetadata
-          - IsMetadataFor
-          - HasVersion
-          - IsVersionOf
-          - IsNewVersionOf
-          - IsPreviousVersionOf
-          - IsPartOf
-          - HasPart
-          - IsPublishedIn
-          - IsReferencedBy
-          - References
-          - IsDocumentedBy
-          - Documents
-          - IsCompiledBy
-          - Compiles
-          - IsVariantFormOf
-          - IsOriginalFormOf
-          - IsIdenticalTo
-          - IsReviewedBy
-          - Reviews
-          - IsDerivedFrom
-          - IsSourceOf
-          - IsRequiredBy
-          - Requires
-          - IsObsoletedBy
-          - Obsoletes
-        created:
-          type: string
-          format: date-time
-        last_modified:
-          type: string
-          format: date-time
-    TableBriefDto:
-      required:
-      - columns
-      - description
-      - id
-      - internal_name
-      - name
-      - owner
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        description:
-          type: string
-          example: Air Quality in Austria
-        owner:
-          $ref: '#/components/schemas/UserBriefDto'
-        columns:
-          type: array
-          items:
-            $ref: '#/components/schemas/ColumnBriefDto'
-        internal_name:
-          type: string
-          example: air_quality
-    UserAttributeDto:
-      type: object
-      properties:
-        name:
-          type: string
-          example: theme_dark
-        value:
-          type: string
-          example: "true"
-    UserBriefDto:
-      required:
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    UserDto:
-      required:
-      - email
-      - email_verified
-      - id
-      - username
-      type: object
-      properties:
-        id:
-          type: string
-          format: uuid
-          example: 1ffc7b0e-9aeb-4e8b-b8f1-68f3936155b4
-        username:
-          type: string
-          description: Only contains lowercase characters
-          example: jcarberry
-        name:
-          type: string
-          example: Josiah Carberry
-        orcid:
-          type: string
-          example: 0000-0002-1825-0097
-        attributes:
-          type: array
-          items:
-            $ref: '#/components/schemas/UserAttributeDto'
-        containers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        databases:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        identifiers:
-          type: array
-          items:
-            $ref: '#/components/schemas/ContainerDto'
-        email:
-          type: string
-          example: jcarberry@brown.edu
-        given_name:
-          type: string
-          example: Josiah
-        family_name:
-          type: string
-          example: Carberry
-        email_verified:
-          type: boolean
-          example: true
-    ViewBriefDto:
-      required:
-      - created
-      - creator
-      - id
-      - internal_name
-      - name
-      - query
-      - vdbid
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        vdbid:
-          type: integer
-          format: int64
-        name:
-          type: string
-          example: Air Quality
-        query:
-          type: string
-          example: SELECT `id` FROM `air_quality` ORDER BY `value` DESC
-        created:
-          type: string
-          format: date-time
-        creator:
-          $ref: '#/components/schemas/UserDto'
-        internal_name:
-          type: string
-          example: air_quality
-        is_public:
-          type: boolean
-          example: true
-        initial_view:
-          type: boolean
-          description: True if it is the default view for the database
-          example: true
-        last_modified:
-          type: string
-          format: date-time
-    ApiErrorDto:
-      required:
-      - code
-      - message
-      - status
-      type: object
-      properties:
-        status:
-          type: string
-          example: STATUS
-          enum:
-          - 100 CONTINUE
-          - 101 SWITCHING_PROTOCOLS
-          - 102 PROCESSING
-          - 103 EARLY_HINTS
-          - 103 CHECKPOINT
-          - 200 OK
-          - 201 CREATED
-          - 202 ACCEPTED
-          - 203 NON_AUTHORITATIVE_INFORMATION
-          - 204 NO_CONTENT
-          - 205 RESET_CONTENT
-          - 206 PARTIAL_CONTENT
-          - 207 MULTI_STATUS
-          - 208 ALREADY_REPORTED
-          - 226 IM_USED
-          - 300 MULTIPLE_CHOICES
-          - 301 MOVED_PERMANENTLY
-          - 302 FOUND
-          - 302 MOVED_TEMPORARILY
-          - 303 SEE_OTHER
-          - 304 NOT_MODIFIED
-          - 305 USE_PROXY
-          - 307 TEMPORARY_REDIRECT
-          - 308 PERMANENT_REDIRECT
-          - 400 BAD_REQUEST
-          - 401 UNAUTHORIZED
-          - 402 PAYMENT_REQUIRED
-          - 403 FORBIDDEN
-          - 404 NOT_FOUND
-          - 405 METHOD_NOT_ALLOWED
-          - 406 NOT_ACCEPTABLE
-          - 407 PROXY_AUTHENTICATION_REQUIRED
-          - 408 REQUEST_TIMEOUT
-          - 409 CONFLICT
-          - 410 GONE
-          - 411 LENGTH_REQUIRED
-          - 412 PRECONDITION_FAILED
-          - 413 PAYLOAD_TOO_LARGE
-          - 413 REQUEST_ENTITY_TOO_LARGE
-          - 414 URI_TOO_LONG
-          - 414 REQUEST_URI_TOO_LONG
-          - 415 UNSUPPORTED_MEDIA_TYPE
-          - 416 REQUESTED_RANGE_NOT_SATISFIABLE
-          - 417 EXPECTATION_FAILED
-          - 418 I_AM_A_TEAPOT
-          - 419 INSUFFICIENT_SPACE_ON_RESOURCE
-          - 420 METHOD_FAILURE
-          - 421 DESTINATION_LOCKED
-          - 422 UNPROCESSABLE_ENTITY
-          - 423 LOCKED
-          - 424 FAILED_DEPENDENCY
-          - 425 TOO_EARLY
-          - 426 UPGRADE_REQUIRED
-          - 428 PRECONDITION_REQUIRED
-          - 429 TOO_MANY_REQUESTS
-          - 431 REQUEST_HEADER_FIELDS_TOO_LARGE
-          - 451 UNAVAILABLE_FOR_LEGAL_REASONS
-          - 500 INTERNAL_SERVER_ERROR
-          - 501 NOT_IMPLEMENTED
-          - 502 BAD_GATEWAY
-          - 503 SERVICE_UNAVAILABLE
-          - 504 GATEWAY_TIMEOUT
-          - 505 HTTP_VERSION_NOT_SUPPORTED
-          - 506 VARIANT_ALSO_NEGOTIATES
-          - 507 INSUFFICIENT_STORAGE
-          - 508 LOOP_DETECTED
-          - 509 BANDWIDTH_LIMIT_EXCEEDED
-          - 510 NOT_EXTENDED
-          - 511 NETWORK_AUTHENTICATION_REQUIRED
-        message:
-          type: string
-          example: Error message
-        code:
-          type: string
-          example: error.service.code
-    UserThemeSetDto:
-      required:
-      - theme_dark
-      type: object
-      properties:
-        theme_dark:
-          type: boolean
-          example: true
-    UserPasswordDto:
-      required:
-      - password
-      type: object
-      properties:
-        password:
-          type: string
-    BannerMessageUpdateDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-    BannerMessageNotFoundException:
-      type: object
-      properties:
-        cause:
-          type: object
-          properties:
-            stackTrace:
-              type: array
-              items:
-                type: object
-                properties:
-                  classLoaderName:
-                    type: string
-                  moduleName:
-                    type: string
-                  moduleVersion:
-                    type: string
-                  methodName:
-                    type: string
-                  fileName:
-                    type: string
-                  lineNumber:
-                    type: integer
-                    format: int32
-                  nativeMethod:
-                    type: boolean
-                  className:
-                    type: string
-            message:
-              type: string
-            suppressed:
-              type: array
-              items:
-                type: object
-                properties:
-                  stackTrace:
-                    type: array
-                    items:
-                      type: object
-                      properties:
-                        classLoaderName:
-                          type: string
-                        moduleName:
-                          type: string
-                        moduleVersion:
-                          type: string
-                        methodName:
-                          type: string
-                        fileName:
-                          type: string
-                        lineNumber:
-                          type: integer
-                          format: int32
-                        nativeMethod:
-                          type: boolean
-                        className:
-                          type: string
-                  message:
-                    type: string
-                  localizedMessage:
-                    type: string
-            localizedMessage:
-              type: string
-        stackTrace:
-          type: array
-          items:
-            type: object
-            properties:
-              classLoaderName:
-                type: string
-              moduleName:
-                type: string
-              moduleVersion:
-                type: string
-              methodName:
-                type: string
-              fileName:
-                type: string
-              lineNumber:
-                type: integer
-                format: int32
-              nativeMethod:
-                type: boolean
-              className:
-                type: string
-        message:
-          type: string
-        suppressed:
-          type: array
-          items:
-            type: object
-            properties:
-              stackTrace:
-                type: array
-                items:
-                  type: object
-                  properties:
-                    classLoaderName:
-                      type: string
-                    moduleName:
-                      type: string
-                    moduleVersion:
-                      type: string
-                    methodName:
-                      type: string
-                    fileName:
-                      type: string
-                    lineNumber:
-                      type: integer
-                      format: int32
-                    nativeMethod:
-                      type: boolean
-                    className:
-                      type: string
-              message:
-                type: string
-              localizedMessage:
-                type: string
-        localizedMessage:
-          type: string
-    BannerMessageBriefDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-    SignupRequestDto:
-      required:
-      - email
-      - password
-      - username
-      type: object
-      properties:
-        username:
-          pattern: "^[a-z0-9]{3,}$"
-          type: string
-          example: user
-        email:
-          type: string
-          example: user@example.com
-        password:
-          type: string
-    BannerMessageCreateDto:
-      required:
-      - message
-      - type
-      type: object
-      properties:
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-    BannerMessageDto:
-      required:
-      - id
-      - message
-      - type
-      type: object
-      properties:
-        id:
-          type: integer
-          format: int64
-        type:
-          type: string
-          enum:
-          - error
-          - warning
-          - info
-        message:
-          type: string
-          example: Maintenance starts on 8am on Monday
-        link:
-          type: string
-          example: https://example.com
-        link_text:
-          type: string
-          example: More
-        display_start:
-          type: string
-          format: date-time
-        display_end:
-          type: string
-          format: date-time
-  securitySchemes:
-    bearerAuth:
-      type: http
-      scheme: bearer
-      bearerFormat: JWT