openapi: 3.0.0
servers:
  - url: //backend.id4i.de
info:
  contact:
    email: info@bluerain.de
    name: BlueRain Software GmbH & Co. KG
    url: http://bluerain.de
  description: ID4i HTTP API
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  termsOfService: http://id4i.de
  title: ID4i API
  version: 1.0.2
  x-apisguru-categories:
    - enterprise
  x-logo:
    backgroundColor: "#FAFAFA"
    url: https://id4i.de/wp-content/uploads/2017/11/id4d_logo_h87.png
  x-origin:
    - format: openapi
      url: https://backend.id4i.de/docs/swagger.json
      version: "3.0"
  x-providerName: id4i.de
tags:
  - description: User accounts allows people to register for ID4i and login. All permissions and roles for interactive ID4i usage (as opposed to machine-to-machine interactions) are attached to Organizations and User Accounts. The API allows users to register, verify their registration, login and reset their passwords.
    name: Accounts
  - description: Guid Alias Controller
    name: Alias
  - description: Api Key Controller
    name: Api Keys
  - description: Auditing services allow to review changes made by users or api keys. Changelog messages can be resolved as plain text or formatted message with parameters.
    name: Auditing
  - description: Billing Controller
    name: Billing
  - description: Collection Controller
    name: Collections
  - description: Guid Alias Controller
    name: Guids
  - description: Allows to retrieve a GUID's history and to publish new history items.
    name: History
  - description: Services can use images stored with public visibility. This API allows you to retrieve the stored image by ID.
    name: Images
  - description: Organization Messaging Controller
    name: Messaging
  - description: App Info Controller
    name: Meta Information
  - description: Country Controller
    name: Organizations
  - description: Go Controller
    name: Public Services
  - description: Routing Controller
    name: Routing
  - description: Document Storage Controller
    name: Storage
  - description: Id 4n Transfer Controller
    name: Transfer
  - description: Who Is Controller
    name: WhoIs
paths:
  /account/password:
    post:
      description: "Requesting a reset for a new password. "
      operationId: requestPasswordReset
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PasswordResetRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/PasswordResetRequest"
        description: Contains the required information to request a new password.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SimpleMessageResponse"
            application/xml:
              schema:
                $ref: "#/components/schemas/SimpleMessageResponse"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Request password reset
      tags:
        - Accounts
    put:
      description: Setting a new password and verifying the request to set the password.
      operationId: verifyPasswordReset
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PasswordResetVerificationRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/PasswordResetVerificationRequest"
        description: Contains the new password and the verification token to set the new password.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SimpleMessageResponse"
            application/xml:
              schema:
                $ref: "#/components/schemas/SimpleMessageResponse"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Verify password reset
      tags:
        - Accounts
  /account/registration:
    post:
      description: Registering a new user.
      operationId: registerUser
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UserRegistrationRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/UserRegistrationRequest"
        description: The user information about the new created user.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserRegistrationResponse"
            application/xml:
              schema:
                $ref: "#/components/schemas/UserRegistrationResponse"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Register user
      tags:
        - Accounts
    put:
      description: Completing a registration e.g. for invited users. Finish registration with a username and a password.
      operationId: completeRegistration
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CompleteUserRegistrationRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/CompleteUserRegistrationRequest"
        description: Contains the verification token, the username and the initial password.
        required: true
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Complete registration
      tags:
        - Accounts
  /account/verification:
    post:
      description: Verifies a new user registration.
      operationId: verifyUserRegistration
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RegistrationVerificationTokenPresentation"
          application/xml:
            schema:
              $ref: "#/components/schemas/RegistrationVerificationTokenPresentation"
        description: The token for user verification.
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Verify registration
      tags:
        - Accounts
  /api/v1/apikeys:
    get:
      description: Finding all API key assigned to the specified organization in a paginated manner.
      operationId: listAllApiKeysOfOrganization
      parameters:
        - description: The namespace of the organization to search in.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find API key by organization
      tags:
        - Api Keys
    post:
      description: Creation of a new API key.
      operationId: createNewApiKey
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ApiKeyCreationRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/ApiKeyCreationRequest"
        description: API key to be created.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiKeyPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiKeyPresentation"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Create API key
      tags:
        - Api Keys
  /api/v1/apikeys/privileges:
    get:
      description: Listing all possible API key privileges.
      operationId: listAllApiKeyPrivileges
      parameters:
        - description: id4nConcerning
          in: query
          name: id4nConcerning
          required: false
          schema:
            type: boolean
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPrivilegeInfo"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPrivilegeInfo"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List all privileges
      tags:
        - Api Keys
  "/api/v1/apikeys/{key}":
    delete:
      description: Deletion of an API key.
      operationId: deleteApiKey
      parameters:
        - description: The API key to delete.
          in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete API key
      tags:
        - Api Keys
    get:
      description: Showing the details of an API key.
      operationId: getApiKey
      parameters:
        - description: The API key to show.
          in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiKeyPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiKeyPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Show API key
      tags:
        - Api Keys
    put:
      description: API keys can be updated with new labels, and be activated and deactivated. The secret or UUID cannot be changed.
      operationId: updateApiKey
      parameters:
        - description: The API key to be updated.
          in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ApiKeyChangeRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/ApiKeyChangeRequest"
        description: The new values to apply.
        required: true
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Update API keys
      tags:
        - Api Keys
  "/api/v1/apikeys/{key}/privileges":
    delete:
      operationId: removeApiKeyPrivilege
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RemoveApiKeyPrivilegeRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/RemoveApiKeyPrivilegeRequest"
        description: removeApiKeyPrivilegeRequest
        required: true
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove privilege
      tags:
        - Api Keys
    get:
      operationId: listApiKeyPrivileges
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPrivilege"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfApiKeyPrivilege"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List privileges
      tags:
        - Api Keys
    post:
      operationId: addApiKeyPrivilege
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddApiKeyPrivilegeRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/AddApiKeyPrivilegeRequest"
        description: addApiKeyPrivilegeRequest
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add privilege
      tags:
        - Api Keys
  "/api/v1/apikeys/{key}/privileges/{privilege}/id4ns":
    delete:
      operationId: removeApiKeyPrivilegeForId4ns
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
        - description: privilege
          in: path
          name: privilege
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ListOfId4ns"
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove id4ns of a privilege
      tags:
        - Api Keys
    get:
      description: Listing ID4ns of a id4n concerning privilege
      operationId: listId4ns
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
        - description: privilege
          in: path
          name: privilege
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfId4nPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfId4nPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: ID4ns of a privilege
      tags:
        - Api Keys
    post:
      operationId: addApiKeyPrivilegeForId4ns
      parameters:
        - description: key
          in: path
          name: key
          required: true
          schema:
            type: string
        - description: privilege
          in: path
          name: privilege
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ListOfId4ns"
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add ID4ns of a privilege
      tags:
        - Api Keys
  "/api/v1/billing/{organizationId}":
    get:
      operationId: getSumForOrganization
      parameters:
        - description: The organization to compute the billing information for
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Billing start date
          in: query
          name: fromDate
          required: false
          schema:
            format: date-time
            type: string
        - description: Billing end date
          in: query
          name: toDate
          required: false
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServiceCosts"
            application/xml:
              schema:
                $ref: "#/components/schemas/ServiceCosts"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get billing amount of services for a given organization
      tags:
        - Billing
  "/api/v1/billing/{organizationId}/positions":
    get:
      operationId: getPositionsForOrganization
      parameters:
        - description: The organization to compute the billing information for
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Billing start date
          in: query
          name: fromDate
          required: false
          schema:
            format: date-time
            type: string
        - description: Billing end date
          in: query
          name: toDate
          required: false
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/BillingPosition"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/BillingPosition"
                type: array
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get billing positions for a given organization
      tags:
        - Billing
  "/api/v1/changelog/organization/{organizationId}/":
    get:
      description: Listing change log entries of the specified organization id.
      operationId: listOrganizationChangeLog
      parameters:
        - description: The namespace identifying the organization whose change log entries are to be listed
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: "The Mime-type for the message format that should be returned. e.g. 'text/plain' or 'text/mustache' "
          in: query
          name: messageMimeType
          required: false
          schema:
            default: text/mustache
            type: string
        - description: From date time as UTC Date-Time format
          in: query
          name: fromDate
          required: false
          schema:
            format: date-time
            type: string
        - description: To date time as UTC Date-Time format
          in: query
          name: toDate
          required: false
          schema:
            format: date-time
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfChangeLogEntry"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfChangeLogEntry"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List change log entries of an organization
      tags:
        - Auditing
  /api/v1/collections:
    post:
      operationId: createCollection
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCollectionRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/CreateCollectionRequest"
        description: createInfo
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Id4n"
            application/xml:
              schema:
                $ref: "#/components/schemas/Id4n"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Create collection
      tags:
        - Collections
  "/api/v1/collections/{id4n}":
    delete:
      operationId: deleteCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete collection
      tags:
        - Collections
    get:
      operationId: findCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GuidCollection"
            application/xml:
              schema:
                $ref: "#/components/schemas/GuidCollection"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find collection
      tags:
        - Collections
    patch:
      description: Update collection changing only the given values
      operationId: updateCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GuidCollection"
          application/xml:
            schema:
              $ref: "#/components/schemas/GuidCollection"
        description: request
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
            application/xml:
              schema:
                type: object
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      summary: Update collection
      tags:
        - Collections
  "/api/v1/collections/{id4n}/elements":
    delete:
      operationId: removeElementsFromCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ListOfId4ns2"
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove elements from collection
      tags:
        - Collections
    get:
      operationId: listElementsOfCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
        - description: The organization namespace.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List contents of the collection
      tags:
        - Collections
    post:
      operationId: addElementsToCollection
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ListOfId4ns2"
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add elements to collection
      tags:
        - Collections
  /api/v1/countries:
    get:
      operationId: listCountries
      parameters:
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfCountry"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfCountry"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List countries
      tags:
        - Organizations
  "/api/v1/documents/{id4n}":
    get:
      description: Listing all documents of an id4n
      operationId: listAllDocuments
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Filter by owner organization
          in: query
          name: owner
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List documents
      tags:
        - Storage
  "/api/v1/documents/{id4n}/{organizationId}":
    get:
      description: Listing documents of an id4n seen by a specified organization
      operationId: listDocuments
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Filter by owner organization
          in: query
          name: owner
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List organization specific documents
      tags:
        - Storage
    post:
      description: The documents' mime type is suggested on octet-stream data. Otherwise the specified content mime type is used.
      operationId: createDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/createDocument"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
            application/xml:
              schema:
                $ref: "#/components/schemas/Document"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Create an document for an id4n
      tags:
        - Storage
    put:
      description: "Creating or overwriting an existing document "
      operationId: putDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/createDocument"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
            application/xml:
              schema:
                $ref: "#/components/schemas/Document"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Put an document for an id4n
      tags:
        - Storage
  "/api/v1/documents/{id4n}/{organizationId}/{fileName}":
    delete:
      operationId: deleteDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete a document
      tags:
        - Storage
    get:
      operationId: readDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                format: byte
                type: string
            application/xml:
              schema:
                format: byte
                type: string
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Read document contents
      tags:
        - Storage
  "/api/v1/documents/{id4n}/{organizationId}/{fileName}/metadata":
    get:
      operationId: getDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
            application/xml:
              schema:
                $ref: "#/components/schemas/Document"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve a document (meta-data only, no content)
      tags:
        - Storage
    patch:
      operationId: updateDocumentMetadata
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DocumentUpdate"
          application/xml:
            schema:
              $ref: "#/components/schemas/DocumentUpdate"
        description: document
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
            application/xml:
              schema:
                $ref: "#/components/schemas/Document"
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      summary: Update a document
      tags:
        - Storage
  /api/v1/guids:
    post:
      description: Creating one or more GUIDs with a specified length.
      operationId: createGuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateGuidRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/CreateGuidRequest"
        description: GUID creation model
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListOfId4ns"
            application/xml:
              schema:
                $ref: "#/components/schemas/ListOfId4ns"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Create GUID(s)
      tags:
        - Guids
  /api/v1/guids/withoutCollection:
    get:
      operationId: getGuidsWithoutCollection
      parameters:
        - description: The namespace of the organization to search GUIDs for
          in: query
          name: organizationId
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve GUIDs not in any collection
      tags:
        - Guids
  "/api/v1/guids/{id4n}":
    get:
      operationId: getGuid
      parameters:
        - description: The GUID number
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization namespace to resolve.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Guid"
            application/xml:
              schema:
                $ref: "#/components/schemas/Guid"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve GUID information
      tags:
        - Guids
    patch:
      description: Allows ownership transfer.
      operationId: updateGuid
      parameters:
        - description: The GUID number
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Guid"
          application/xml:
            schema:
              $ref: "#/components/schemas/Guid"
        description: request
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
            application/xml:
              schema:
                type: object
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      summary: Change GUID information.
      tags:
        - Guids
  "/api/v1/history/{id4n}":
    get:
      description: Lists the history of a GUID
      operationId: filteredList
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Also return private history entries
          in: query
          name: includePrivate
          required: false
          schema:
            default: true
            type: boolean
        - description: Show only entries created by one of the given organizations. This parameter can be used multiple times.
          in: query
          name: organization
          required: false
          schema:
            type: string
        - description: Show only entries matching one of the given history item types. This parameter can be used multiple times.
          explode: true
          in: query
          name: type
          required: false
          schema:
            enum:
              - CREATED
              - DESTROYED
              - RECYCLED
              - SHIPMENT_PREPARED
              - STORED
              - RETRIEVED_FROM_STORAGE
              - PACKAGED
              - DISPATCHED
              - RECEIVED
              - DELIVERY_REFUSED
              - REPROCESSING_STARTED
              - REPROCESSING_STEP_STARTED
              - REPROCESSING_STEP_CANCELLED
              - REPROCESSING_STEP_FINISHED
              - REPROCESSING_CANCELLED
              - REPROCESSING_FINISHED
              - DISASSEMBLED
              - MAINTENANCE_STARTED
              - MAINTENANCE_STEP_STARTED
              - MAINTENANCE_STEP_CANCELLED
              - MAINTENANCE_STEP_FINISHED
              - MAINTENANCE_CANCELLED
              - MAINTENANCE_FINISHED
              - PRODUCTION_STARTED
              - PRODUCTION_CANCELLED
              - PRODUCTION_FINISHED
              - PRODUCTION_STEP_STARTED
              - PRODUCTION_STEP_CANCELLED
              - PRODUCTION_STEP_FINISHED
              - QUALITY_CHECK_PERFORMED
            items:
              enum:
                - CREATED
                - DESTROYED
                - RECYCLED
                - SHIPMENT_PREPARED
                - STORED
                - RETRIEVED_FROM_STORAGE
                - PACKAGED
                - DISPATCHED
                - RECEIVED
                - DELIVERY_REFUSED
                - REPROCESSING_STARTED
                - REPROCESSING_STEP_STARTED
                - REPROCESSING_STEP_CANCELLED
                - REPROCESSING_STEP_FINISHED
                - REPROCESSING_CANCELLED
                - REPROCESSING_FINISHED
                - DISASSEMBLED
                - MAINTENANCE_STARTED
                - MAINTENANCE_STEP_STARTED
                - MAINTENANCE_STEP_CANCELLED
                - MAINTENANCE_STEP_FINISHED
                - MAINTENANCE_CANCELLED
                - MAINTENANCE_FINISHED
                - PRODUCTION_STARTED
                - PRODUCTION_CANCELLED
                - PRODUCTION_FINISHED
                - PRODUCTION_STEP_STARTED
                - PRODUCTION_STEP_CANCELLED
                - PRODUCTION_STEP_FINISHED
                - QUALITY_CHECK_PERFORMED
              type: string
            type: array
        - description: Show only entries matching one of the given history item qualifiers (additional property de.id4i.history.item.qualifier). This parameter can be used multiple times.
          explode: true
          in: query
          name: qualifier
          required: false
          schema:
            items:
              type: string
            type: array
        - description: From date time as UTC Date-Time format
          in: query
          name: fromDate
          required: false
          schema:
            format: date-time
            type: string
        - description: To date time as UTC Date-Time format
          in: query
          name: toDate
          required: false
          schema:
            format: date-time
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List history
      tags:
        - History
    post:
      description: Add a new history item
      operationId: addItem
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/HistoryItem"
          application/xml:
            schema:
              $ref: "#/components/schemas/HistoryItem"
        description: The history item to publish
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add history item
      tags:
        - History
  "/api/v1/history/{id4n}/{organizationId}":
    get:
      deprecated: true
      description: DEPRECATED - please use filteredList with organization parameter to achieve the same functionality
      operationId: list
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Also return private history entries
          in: query
          name: includePrivate
          required: false
          schema:
            default: true
            type: boolean
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: DEPRECATED - List history
      tags:
        - History
  "/api/v1/history/{id4n}/{organizationId}/{sequenceId}":
    get:
      operationId: retrieveItem
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: sequenceId
          in: path
          name: sequenceId
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/HistoryItem"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get history item
      tags:
        - History
    patch:
      operationId: updateItem
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: sequenceId
          in: path
          name: sequenceId
          required: true
          schema:
            format: int32
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/HistoryItemUpdate"
          application/xml:
            schema:
              $ref: "#/components/schemas/HistoryItemUpdate"
        description: update
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/HistoryItem"
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      summary: Update history item
      tags:
        - History
  "/api/v1/history/{id4n}/{organizationId}/{sequenceId}/visibility":
    put:
      operationId: updateItemVisibility
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: sequenceId
          in: path
          name: sequenceId
          required: true
          schema:
            format: int32
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Visibility"
          application/xml:
            schema:
              $ref: "#/components/schemas/Visibility"
        description: History item visibility restrictions
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/HistoryItem"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Set history item visibility
      tags:
        - History
  "/api/v1/id4ns/{id4n}":
    get:
      description: Retrieving basic information about an ID like the type and the creation time.
      operationId: getId4n
      parameters:
        - description: The ID to resolve to
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization namespace to resolve.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Id4nPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/Id4nPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve ID4n information
      tags:
        - Guids
  "/api/v1/id4ns/{id4n}/alias":
    get:
      description: Looks up the alias for each alias type (group and single) and returns a map of all aliases found.
      operationId: getGuidAliases
      parameters:
        - description: The GUID or Collection to operate on
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
            application/xml:
              schema:
                additionalProperties:
                  type: string
                type: object
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get all aliases for the given GUID or Collection.
      tags:
        - Alias
        - Guids
  "/api/v1/id4ns/{id4n}/alias/{aliasType}":
    delete:
      description: Remove the alias of the given type
      operationId: removeGuidAlias
      parameters:
        - description: The GUID or Collection to operate on
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Alias type, see the corresponding API model
          in: path
          name: aliasType
          required: true
          schema:
            enum:
              - gtin
              - article
              - mapp
              - item
              - rfid
              - tracking
              - eclass
              - unspsc
              - product
              - material
              - reference
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove aliases from GUID or Collection
      tags:
        - Alias
        - Guids
    post:
      description: Adds or replaces aliases for single ID4ns (alias type item and mapp) or groups of ID4ns (alias types gtin, ean and article)
      operationId: addGuidAlias
      parameters:
        - description: The GUID or Collection to operate on
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Alias type, see the corresponding API model
          in: path
          name: aliasType
          required: true
          schema:
            enum:
              - gtin
              - article
              - mapp
              - item
              - rfid
              - tracking
              - eclass
              - unspsc
              - product
              - material
              - reference
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GuidAlias"
          application/xml:
            schema:
              $ref: "#/components/schemas/GuidAlias"
        description: The alias to add or update
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add alias for GUID or Collection
      tags:
        - Alias
        - Guids
  "/api/v1/id4ns/{id4n}/collections":
    get:
      description: Retrieving all owned or holding collections the specified id4n is assigned to.
      operationId: getCollections
      parameters:
        - description: The ID which the collections should contain
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization holding the collections.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuidCollection"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuidCollection"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve collections of an ID
      tags:
        - Guids
  "/api/v1/id4ns/{id4n}/properties":
    delete:
      description: Partial deletion of id4n properties. If the property does not exist, it will be ignored.
      operationId: deleteProperties
      parameters:
        - description: The id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization namespace to work on while deleting the properties.
          in: query
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              items:
                type: string
              type: array
          application/xml:
            schema:
              items:
                type: string
              type: array
        description: A set of property keys to delete.
        required: true
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete ID4n properties
      tags:
        - Collections
        - Guids
    get:
      description: List all properties of an id4n.
      operationId: getProperties
      parameters:
        - description: The id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization namespace.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
            application/xml:
              schema:
                additionalProperties:
                  type: string
                type: object
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve ID4n properties
      tags:
        - Collections
        - Guids
    patch:
      description: Partial updating of id4n properties. If a property contains a null value the property will be deleted other values will be saved and overwritten if they already exist.
      operationId: patchProperties
      parameters:
        - description: The id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The organization namespace to work on while patching the properties.
          in: query
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties:
                type: string
              type: object
          application/xml:
            schema:
              additionalProperties:
                type: string
              type: object
        description: The properties to update.
        required: true
      responses:
        "200":
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      summary: Patch ID4n properties
      tags:
        - Collections
        - Guids
  /api/v1/import/gs1:
    post:
      description: Importing GS1/MAPP codes that contain unique components.
      operationId: importGS1Codes
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ImportGS1CodesRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/ImportGS1CodesRequest"
        description: The information how the MAPP codes should be imported and the list of MAPP codes
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Import GS1/MAPP codes
      tags:
        - Guids
  /api/v1/info:
    get:
      description: Retrieving version information about ID4i.
      operationId: applicationInfo
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AppInfoPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/AppInfoPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve version information about ID4i
      tags:
        - Meta Information
  "/api/v1/microstorage/{id4n}/{organization}":
    get:
      operationId: readFromMicrostorage
      parameters:
        - description: organization
          in: path
          name: organization
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                format: byte
                type: string
            application/xml:
              schema:
                format: byte
                type: string
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Read data from microstorage
      tags:
        - Storage
    put:
      operationId: writeToMicrostorage
      parameters:
        - description: organization
          in: path
          name: organization
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Content-Type
          in: header
          name: Content-Type
          required: false
          schema:
            type: string
        - description: Content-Length
          in: header
          name: Content-Length
          required: false
          schema:
            format: int64
            type: integer
      requestBody:
        content:
          "*/*":
            schema:
              format: byte
              type: string
        description: body
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
            application/xml:
              schema:
                type: object
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Write data to microstorage
      tags:
        - Storage
  /api/v1/multiple/id4ns/properties:
    get:
      description: Get a list of ID4n properties for the specified ID4ns.
      operationId: getMultipleProperties
      parameters:
        - description: The list of ID4ns to resolve.
          explode: true
          in: query
          name: id4ns
          required: true
          schema:
            items:
              type: string
            type: array
        - description: The organization namespace.
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListOfId4nProperties"
            application/xml:
              schema:
                $ref: "#/components/schemas/ListOfId4nProperties"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get multiple ID4n properties
      tags:
        - Collections
        - Guids
  /api/v1/organizations:
    post:
      description: Creating a new organization.
      operationId: createOrganization
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Organization"
          application/xml:
            schema:
              $ref: "#/components/schemas/Organization"
        description: Organization to be created
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
            application/xml:
              schema:
                $ref: "#/components/schemas/Organization"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Create organization
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}":
    delete:
      operationId: deleteOrganization
      parameters:
        - description: The namespace of the organization to be deleted.
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete organization
      tags:
        - Organizations
    get:
      description: Returns a single organization.
      operationId: findOrganization
      parameters:
        - description: The namespace of the organization to be retrieved.
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
            application/xml:
              schema:
                $ref: "#/components/schemas/Organization"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find organization by id/namespace
      tags:
        - Organizations
    put:
      operationId: updateOrganization
      parameters:
        - description: The namespace of the organization to be updated.
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OrganizationUpdate"
          application/xml:
            schema:
              $ref: "#/components/schemas/OrganizationUpdate"
        description: Updated organization object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
            application/xml:
              schema:
                $ref: "#/components/schemas/Organization"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Update organization
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/addresses/billing":
    delete:
      operationId: deleteOrganizationBillingAddress
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove billing address
      tags:
        - Organizations
    get:
      operationId: findOrganizationBillingAddress
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
            application/xml:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve billing address
      tags:
        - Organizations
    put:
      operationId: updateOrganizationBillingAddress
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/OrganizationAddress"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
            application/xml:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Store billing address
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/addresses/default":
    get:
      operationId: findOrganizationAddress
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
            application/xml:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve address
      tags:
        - Organizations
    put:
      operationId: updateOrganizationAddress
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/OrganizationAddress"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
            application/xml:
              schema:
                $ref: "#/components/schemas/OrganizationAddress"
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Store address
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/collections":
    get:
      description: "Retrieving all collections of an organization in a paginated manner. You may filter the results by specifying id4n properties with filter operations (eq, in, ne) in the query parameters. e.g. `com.yourcompany.orderId.eq=1234`  "
      operationId: getAllCollectionsOfOrganization
      parameters:
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Filter by this type
          in: query
          name: type
          required: false
          schema:
            enum:
              - ROUTING_COLLECTION
              - LOGISTIC_COLLECTION
              - LABELLED_COLLECTION
            type: string
        - description: Filter by this label
          in: query
          name: label
          required: false
          schema:
            type: string
        - description: Filter by this label prefix
          in: query
          name: labelPrefix
          required: false
          schema:
            maximum: 2147483647
            minimum: 1
            type: string
        - description: List of i4dn property filter. e.g. "com.myorga.state:IN:waiting|processing" or "com.myorga.orderId:EQ:SAP001"
          explode: true
          in: query
          name: property
          required: false
          schema:
            items:
              type: string
            type: array
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuidCollection"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuidCollection"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get collections of organization
      tags:
        - Collections
        - Organizations
  "/api/v1/organizations/{organizationId}/logo":
    delete:
      operationId: deleteOrganizationLogo
      parameters:
        - description: The namespace of the organization where the logo should be deleted.
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Delete organization logo
      tags:
        - Organizations
    post:
      description: Updating an organization logo using a multipart file upload.
      operationId: setOrganizationLogo
      parameters:
        - description: The namespace of the organization where the logo should be updated.
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              properties:
                file:
                  description: An image containing the new logo.
                  format: binary
                  type: string
              required:
                - file
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PublicImagePresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/PublicImagePresentation"
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Update organization logo
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/messaging":
    get:
      operationId: getDefaultQueue
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/QueuePresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/QueuePresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      tags:
        - Messaging
    patch:
      operationId: patchDefaultQueue
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/QueueUpdateRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/QueueUpdateRequest"
        description: request
        required: true
      responses:
        "200":
          description: OK
        "204":
          description: No Content
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      security:
        - Authorization: []
      tags:
        - Messaging
  "/api/v1/organizations/{organizationId}/messaging/enqueueCustomMessage":
    post:
      description: Enqueue a custom organisation message with custom data.
      operationId: enqueueCustomMessage
      parameters:
        - description: The organisation namespace
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SendCustomMessage"
          application/xml:
            schema:
              $ref: "#/components/schemas/SendCustomMessage"
        description: request
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Enqueue a custom message
      tags:
        - Messaging
  "/api/v1/organizations/{organizationId}/partner":
    delete:
      description: Removing a partner organization
      operationId: removePartnerOrganization
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RemovePartnerRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/RemovePartnerRequest"
        description: request
        required: true
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove partner
      tags:
        - Organizations
    get:
      description: Listing partners in a paginated manner.
      operationId: getPartnerOrganizations
      parameters:
        - description: The namespace of the organization to query partner organizations
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfPartnerOrganization"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfPartnerOrganization"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get partners of an organization
      tags:
        - Organizations
    put:
      description: Adding a partner organization. If the given organization is already a partner the result will be state 200 too.
      operationId: addPartnerOrganization
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddPartnerRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/AddPartnerRequest"
        description: request
        required: true
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add partner
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/privileges":
    get:
      description: Listing all privileges of the current user/APIKey of the specified organization.
      operationId: getOrganizationPrivileges
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
            application/xml:
              schema:
                items:
                  type: string
                type: array
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List my privileges
      tags:
        - Organizations
  "/api/v1/organizations/{organizationId}/roles":
    get:
      description: Listing users and their roles in a paginated manner.
      operationId: getAllOrganizationRoles
      parameters:
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserRoles"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserRoles"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List users and their roles
      tags:
        - Accounts
        - Organizations
  "/api/v1/organizations/{organizationId}/users":
    get:
      description: Finding users in the specified organization in a paginated manner.
      operationId: getUsersOfOrganization
      parameters:
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find users in organization
      tags:
        - Accounts
        - Organizations
  "/api/v1/organizations/{organizationId}/users/invite":
    post:
      operationId: inviteUsers
      parameters:
        - description: The namespace of the organization where users should be invited
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OrganizationUserInvitationListRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/OrganizationUserInvitationListRequest"
        description: invitationList
        required: true
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Invite Users
      tags:
        - Accounts
        - Organizations
  "/api/v1/organizations/{organizationId}/users/{username}/roles":
    delete:
      operationId: removeUserRoles
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: username
          in: path
          name: username
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ChangeRoleRequest"
      responses:
        "200":
          description: OK
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Remove role(s) from user
      tags:
        - Accounts
        - Organizations
    get:
      operationId: getUserRoles
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: username
          in: path
          name: username
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfstring"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfstring"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Get user roles by username
      tags:
        - Accounts
        - Organizations
    post:
      operationId: addUserRoles
      parameters:
        - description: The namespace of the organization
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: username
          in: path
          name: username
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ChangeRoleRequest"
      responses:
        "200":
          description: OK
        "201":
          description: Created
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Add role(s) to user
      tags:
        - Accounts
        - Organizations
  "/api/v1/public/documents/{id4n}":
    get:
      description: Listing all public documents of an id4n
      operationId: listAllPublicDocuments
      parameters:
        - description: organizationId
          in: query
          name: organizationId
          required: false
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Filter by owner organization
          in: query
          name: owner
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfDocument"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List public documents
      tags:
        - Public Services
        - Storage
  "/api/v1/public/documents/{id4n}/{organizationId}/{fileName}":
    get:
      operationId: readPublicDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                format: byte
                type: string
            application/xml:
              schema:
                format: byte
                type: string
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Read public document contents
      tags:
        - Public Services
        - Storage
  "/api/v1/public/documents/{id4n}/{organizationId}/{fileName}/metadata":
    get:
      operationId: getPublicDocument
      parameters:
        - description: organizationId
          in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: fileName
          in: path
          name: fileName
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
            application/xml:
              schema:
                $ref: "#/components/schemas/Document"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve a public document (meta-data only, no content)
      tags:
        - Public Services
        - Storage
  "/api/v1/public/history/{id4n}":
    get:
      description: Only contains public history items
      operationId: listPublicHistory
      parameters:
        - description: GUID to retrieve the history for
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfHistoryItem"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Shows the public history of the given GUID
      tags:
        - Public Services
  "/api/v1/public/image/{imageID}":
    get:
      operationId: resolveImageUsingGET
      parameters:
        - description: The id of the image to be resolved.
          in: path
          name: imageID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                format: byte
                type: string
            application/xml:
              schema:
                format: byte
                type: string
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Resolve image
      tags:
        - Images
        - Public Services
  "/api/v1/public/organizations/{organizationId}":
    get:
      operationId: readOrganizationInfo
      parameters:
        - description: Organization ID
          in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
            application/xml:
              schema:
                $ref: "#/components/schemas/Organization"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Read public organization information
      tags:
        - Public Services
  "/api/v1/public/routes/{id4n}":
    get:
      operationId: getRoutes
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: type
          in: query
          name: type
          required: true
          schema:
            default: web
            type: string
        - description: interpolate
          in: query
          name: interpolate
          required: false
          schema:
            default: true
            type: boolean
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Route"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Route"
                type: array
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve all public routes for a GUID
      tags:
        - Public Services
  /api/v1/roles:
    get:
      description: Listing of roles.
      operationId: listAllRoles
      parameters:
        - description: If specified the roles will be filtered containing that privilege.
          in: query
          name: privilege
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfRole"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfRole"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List roles
      tags:
        - Accounts
  "/api/v1/routingfiles/{id4n}":
    get:
      operationId: getRoutingFile
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: organizationId
          in: query
          name: organizationId
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RoutingFile"
            application/xml:
              schema:
                $ref: "#/components/schemas/RoutingFile"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve routing file
      tags:
        - Routing
    put:
      operationId: updateRoutingFile
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoutingFileRequest"
          application/xml:
            schema:
              $ref: "#/components/schemas/RoutingFileRequest"
        description: rfr
        required: true
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Store routing file
      tags:
        - Routing
  "/api/v1/routingfiles/{id4n}/route/{type}":
    get:
      operationId: getRoute
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The type of route you want to have
          in: path
          name: type
          required: true
          schema:
            type: string
        - description: privateRoutes
          in: query
          name: privateRoutes
          required: false
          schema:
            default: true
            type: boolean
        - description: publicRoutes
          in: query
          name: publicRoutes
          required: false
          schema:
            default: true
            type: boolean
        - description: interpolate
          in: query
          name: interpolate
          required: false
          schema:
            default: true
            type: boolean
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Route"
            application/xml:
              schema:
                $ref: "#/components/schemas/Route"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve current route of a GUID (or ID4N)
      tags:
        - Routing
  "/api/v1/routingfiles/{id4n}/routes/{type}":
    get:
      operationId: getAllRoutes
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
        - description: The type of route you want to have
          in: path
          name: type
          required: true
          schema:
            type: string
        - description: organizationId
          in: query
          name: organizationId
          required: false
          schema:
            type: string
        - description: interpolate
          in: query
          name: interpolate
          required: false
          schema:
            default: true
            type: boolean
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Route"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Route"
                type: array
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve all routes of a GUID (or ID4N)
      tags:
        - Routing
  /api/v1/search/guids:
    get:
      operationId: searchByAlias
      parameters:
        - description: The alias to search for
          in: query
          name: alias
          required: true
          schema:
            type: string
        - description: Alias type type to search for
          in: query
          name: aliasType
          required: true
          schema:
            enum:
              - gtin
              - article
              - mapp
              - item
              - rfid
              - tracking
              - eclass
              - unspsc
              - product
              - material
              - reference
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfGuid"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Search for GUIDs by alias
      tags:
        - Alias
  /api/v1/search/guids/aliases/types:
    get:
      description: Retrieve this list to find out all alias types to use with alias search and change operations
      operationId: getGuidAliasTypes
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  enum:
                    - gtin
                    - article
                    - mapp
                    - item
                    - rfid
                    - tracking
                    - eclass
                    - unspsc
                    - product
                    - material
                    - reference
                  type: string
                type: array
            application/xml:
              schema:
                items:
                  enum:
                    - gtin
                    - article
                    - mapp
                    - item
                    - rfid
                    - tracking
                    - eclass
                    - unspsc
                    - product
                    - material
                    - reference
                  type: string
                type: array
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: List all supported alias types
      tags:
        - Alias
  "/api/v1/transfers/{id4n}/receiveInfo":
    put:
      description: Taking ownership can be forbidden by a previous owner. See methods prepare and getInfo
      operationId: receive
      parameters:
        - description: This ID4N identifies the object to take hold of
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransferReceiveInfo"
          application/xml:
            schema:
              $ref: "#/components/schemas/TransferReceiveInfo"
        description: Required information to receive an id4n object
        required: true
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Transfer a GUID or collection, obtaining it (i.e. becoming the holder) and if allowed also taking ownership
      tags:
        - Transfer
  "/api/v1/transfers/{id4n}/sendInfo":
    get:
      operationId: getSendInfo
      parameters:
        - description: The ID4N to retrieve information about
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransferSendInfo"
            application/xml:
              schema:
                $ref: "#/components/schemas/TransferSendInfo"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Show transfer preparation information
      tags:
        - Transfer
    put:
      operationId: prepare
      parameters:
        - description: The ID4N to prepare for transfer
          in: path
          name: id4n
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransferSendInfo"
          application/xml:
            schema:
              $ref: "#/components/schemas/TransferSendInfo"
        description: Transfer preparation status
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
            application/xml:
              schema:
                type: object
          description: OK
        "202":
          description: Accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Bad Request
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Conflict
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Prepare an object for transfer
      tags:
        - Transfer
  /api/v1/user/organizations:
    get:
      operationId: getOrganizationsOfUser
      parameters:
        - description: role
          in: query
          name: role
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfOrganization"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfOrganization"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Retrieve organizations of user
      tags:
        - Accounts
        - Organizations
  /api/v1/users:
    get:
      operationId: findUsers
      parameters:
        - in: query
          name: usernamePrefix
          required: false
          schema:
            type: string
        - description: Start with the n-th element
          in: query
          name: offset
          required: false
          schema:
            format: int32
            type: integer
        - description: The maximum count of returned elements
          in: query
          name: limit
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/PaginatedResponseOfUserPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find users
      tags:
        - Accounts
  "/api/v1/users/{username}":
    get:
      operationId: findUserByUsername
      parameters:
        - description: username
          in: path
          name: username
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserPresentation"
            application/xml:
              schema:
                $ref: "#/components/schemas/UserPresentation"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      security:
        - Authorization: []
      summary: Find by username
      tags:
        - Accounts
  "/go/{guid}":
    get:
      description: Forwarding to the designated route defined in the routing,
      operationId: go
      parameters:
        - description: guid
          in: path
          name: guid
          required: true
          schema:
            type: string
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Forward
      tags:
        - Public Services
  /login:
    post:
      description: ID4i API Login
      operationId: login
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccountCredentials"
          application/xml:
            schema:
              $ref: "#/components/schemas/AccountCredentials"
        required: true
      responses:
        "200":
          description: OK
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
      tags:
        - Accounts
  "/whois/{id4n}":
    get:
      operationId: resolveWhoIsEntry
      parameters:
        - description: id4n
          in: path
          name: id4n
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WhoIsResponse"
            application/xml:
              schema:
                $ref: "#/components/schemas/WhoIsResponse"
          description: OK
        "202":
          description: Accepted
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unauthorized
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Forbidden
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Found
        "405":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Method not allowed
        "406":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Not Acceptable
        "415":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Unsupported Media Type
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ApiError"
            application/xml:
              schema:
                $ref: "#/components/schemas/ApiError"
          description: Internal Server Error
      summary: Resolve owner of id4n
      tags:
        - Public Services
        - WhoIs
components:
  requestBodies:
    ChangeRoleRequest:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ChangeRoleRequest"
        application/xml:
          schema:
            $ref: "#/components/schemas/ChangeRoleRequest"
      description: changeRoleRequest
      required: true
    ListOfId4ns:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ListOfId4ns"
        application/xml:
          schema:
            $ref: "#/components/schemas/ListOfId4ns"
      description: id4ns
      required: true
    ListOfId4ns2:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ListOfId4ns"
        application/xml:
          schema:
            $ref: "#/components/schemas/ListOfId4ns"
      description: listOfGuids
      required: true
    OrganizationAddress:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/OrganizationAddress"
        application/xml:
          schema:
            $ref: "#/components/schemas/OrganizationAddress"
      description: addressResource
      required: true
    createDocument:
      content:
        multipart/form-data:
          schema:
            properties:
              content:
                description: content
                format: binary
                type: string
            required:
              - content
            type: object
      required: true
  schemas:
    AccountCredentials:
      properties:
        login:
          type: string
        password:
          type: string
      title: AccountCredentials
      type: object
    AddApiKeyPrivilegeRequest:
      properties:
        privilege:
          type: string
      required:
        - privilege
      title: AddApiKeyPrivilegeRequest
      type: object
    AddPartnerRequest:
      properties:
        organizationId:
          description: The namespace of the partner organization to add
          example: org.acme
          type: string
      required:
        - organizationId
      title: AddPartnerRequest
      type: object
    ApiError:
      properties:
        code:
          enum:
            - ERR_REGISTRATION_VERIFICATION_NO_TOKEN
            - ERR_REGISTRATION_VERIFICATION_INVALID_TOKEN
            - ERR_REGISTRATION_VERIFICATION_EXPIRED_TOKEN
            - ERR_AUTHENTICATION_NO_TOKEN
            - ERR_AUTHENTICATION_INVALID_TOKEN
            - ERR_AUTHENTICATION_EXPIRED_TOKEN
            - ERR_AUTHENTICATION_FAILED
            - ERR_AUTHORIZATION_MISSING_PRIVILEGES
            - ERR_AUTHORIZATION_FORBIDDEN
            - ERR_AUTHORIZATION_REQUIRE_USER
            - ERR_INPUT_VALIDATION_FAILED
            - ERR_FIELD_INPUT_VALIDATION_FAILED
            - ERR_VALIDATION_CONSTRAINT_FAILED
            - ERR_INPUT_NOT_READABLE
            - ERR_INVALID_INPUT_PARAMETER
            - ERR_GUID_CREATION
            - ERR_INVALID_ID4N_OBJECT_TYPE
            - ERR_MISSING_BILLING_INFORMATION
            - ERR_COLLECTION_UPDATE_DENIED
            - ERR_ENTITY_NOT_FOUND
            - ERR_ENTITY_TOO_BIG
            - ERR_DUPLICATE
            - ERR_INTERNAL
            - ERR_UNKNOWN
            - ERR_INVALID_ORGANIZATION_USERROLE
            - ERR_ORGANIZATION_ROLE_INCONSISTENCY
            - ERR_ORGANIZATION_NOT_DELETABLE
            - ERR_USER_ALREADY_IN_ORGANIZATION
            - ERR_USER_INVITATION_NEEDS_MINIMUM_ONE_ROLE
            - ERR_USER_INVITATION_SPECIFY_EMAIL_OR_USERNAME
            - ERR_USER_DEACTIVATED
            - ERR_LANGUAGE_NOT_SUPPORTED
            - ERR_EMAIL_MISSING_TEMPLATE_PARAM
            - ERR_EMAIL_TEMPLATE_NOT_AVAILABLE
            - ERR_EMAIL_PREPARATION_FAILED
            - ERR_IMAGE_CONVERSION
            - ERR_UPLOAD_TOO_LARGE
            - ERR_INVALID_ALIAS_TYPE
            - ERR_INVALID_URI_TEMPLATE
            - ERR_INVALID_URI_TEMPLATE_VARIABLE
            - ERR_INVALID_NAMESPACE
            - ERR_INVALID_PROPERTY_KEY
            - ERR_INVALID_FILTER
            - ERR_NAMESPACE_ALREADY_EXISTS
            - ERR_INSECURE_PASSWORD
            - ERR_TRANSFER_DENIED
            - ERR_INVALID_PHYSICAL_STATE
            - ERR_INVALID_HISTORY_PROPERTY_NAMESPACE
            - ERR_INVALID_HISTORY_PROPERTY_VALUE
            - ERR_ORGA_CANNOT_BE_OWN_PARTNER
            - ERR_INVALID_GS1_CODE
            - ERR_INVALID_GS1_CHAR_IN_CODE
            - ERR_INVALID_GS1_CODE_NOT_UNIQUE
            - ERR_INVALID_GS1_GTIN
            - ERR_GS1_CODE_CURRENTLY_UNSUPPORTED
          type: string
        errorId:
          type: string
        errorList:
          items:
            $ref: "#/components/schemas/ApiError"
          type: array
        message:
          type: string
      required:
        - code
        - errorId
        - errorList
        - message
      title: ApiError
      type: object
    ApiKeyChangeRequest:
      properties:
        active:
          type: boolean
        newLabel:
          maxLength: 50
          minLength: 5
          type: string
      required:
        - newLabel
      title: ApiKeyChangeRequest
      type: object
    ApiKeyCreationRequest:
      properties:
        label:
          maxLength: 50
          minLength: 5
          type: string
        organizationId:
          example: de.acme
          type: string
        secret:
          maxLength: 500
          minLength: 10
          type: string
      required:
        - label
        - organizationId
        - secret
      title: ApiKeyCreationRequest
      type: object
    ApiKeyPresentation:
      properties:
        active:
          description: Whether this API key is active
          example: true
          type: boolean
        createdAt:
          description: The UTC unix timestamp of when this api key has been created
          example: 1517232722
          format: int64
          type: integer
        createdBy:
          example: user123
          type: string
        key:
          description: The api key identifier
          example: 39978f49-6ff1-4147-bf0f-9910185084b7
          type: string
        label:
          description: The label / name of the api key
          example: My Api Key
          type: string
        organizationId:
          description: The organization namespace this api key belongs to
          example: de.acme
          type: string
      required:
        - active
        - createdAt
        - createdBy
        - key
        - label
        - organizationId
      title: ApiKeyPresentation
      type: object
    ApiKeyPrivilege:
      properties:
        id4nAssociated:
          type: boolean
        privilege:
          type: string
      required:
        - id4nAssociated
        - privilege
      title: ApiKeyPrivilege
      type: object
    ApiKeyPrivilegeInfo:
      properties:
        allowsBillableOperations:
          type: boolean
        helpText:
          type: string
        id4nAssociated:
          type: boolean
        name:
          type: string
      required:
        - id4nAssociated
        - name
      title: ApiKeyPrivilegeInfo
      type: object
    AppInfoPresentation:
      properties:
        branch:
          type: string
        commitTime:
          type: string
        name:
          type: string
        productionMode:
          type: boolean
        revision:
          type: string
        version:
          type: string
      title: AppInfoPresentation
      type: object
    BillingPosition:
      properties:
        amount:
          format: int64
          type: integer
        count:
          type: number
        description:
          type: string
        service:
          type: string
        singlePrice:
          type: number
        sum:
          type: number
        unit:
          type: string
      required:
        - amount
        - count
        - description
        - service
        - singlePrice
        - sum
        - unit
      title: BillingPosition
      type: object
    ChangeLogEntry:
      description: A changelog entry
      properties:
        id:
          description: The unique id of the changelog entry
          example: e100123
          readOnly: true
          type: string
        message:
          description: The message as template or rendered as plain text
          example: User {{&user}} has changed the title of {{&object}}
          readOnly: true
          type: string
        messageProperties:
          additionalProperties:
            type: object
          description: "The values of the properties in the message. May be nested as object with a value field "
          example:
            object: nearly every object
            user:
              type: user
              value: a.vratny
          readOnly: true
          type: object
        timestamp:
          description: The UTC unix timestamp when this change occurred
          example: 1517232722
          format: int64
          readOnly: true
          type: integer
      title: ChangeLogEntry
      type: object
    ChangeRoleRequest:
      properties:
        roles:
          items:
            type: string
          type: array
      title: ChangeRoleRequest
      type: object
    CompleteUserRegistrationRequest:
      properties:
        password:
          maxLength: 99
          minLength: 8
          type: string
        username:
          pattern: "[a-zA-Z0-9_.-]{6,50}"
          type: string
        verificationToken:
          type: string
      required:
        - password
        - username
        - verificationToken
      title: CompleteUserRegistrationRequest
      type: object
    Country:
      properties:
        code:
          type: string
        name:
          type: string
      required:
        - code
        - name
      title: Country
      type: object
    CreateCollectionRequest:
      properties:
        label:
          maxLength: 128
          minLength: 5
          type: string
        length:
          exclusiveMaximum: false
          exclusiveMinimum: false
          format: int32
          maximum: 255
          minimum: 6
          type: integer
        organizationId:
          example: de.acme
          type: string
        type:
          enum:
            - ROUTING_COLLECTION
            - LOGISTIC_COLLECTION
            - LABELLED_COLLECTION
          type: string
      required:
        - length
        - organizationId
        - type
      title: CreateCollectionRequest
      type: object
    CreateGuidRequest:
      description: GUID creation information
      properties:
        count:
          description: The total number of GUIDs to create
          example: 1
          exclusiveMaximum: false
          exclusiveMinimum: false
          format: int32
          maximum: 1000
          minimum: 1
          type: integer
        length:
          description: The charactersequence length of the GUID
          example: 40
          exclusiveMaximum: false
          exclusiveMinimum: false
          format: int32
          maximum: 255
          minimum: 7
          type: integer
        organizationId:
          description: The namespace of the organization where the generated GUIDs should be assigned.
          example: de.acme
          type: string
      required:
        - count
        - length
        - organizationId
      title: CreateGuidRequest
      type: object
    Document:
      properties:
        filename:
          description: File Name
          example: publicInfo.pdf
          type: string
        mimeType:
          description: Mime Type
          example: text/plain
          type: string
        ownerOrganizationId:
          description: The organization's namespace which owns the document
          example: de.bluerain
          readOnly: true
          type: string
        visibility:
          $ref: "#/components/schemas/Visibility"
      title: Document
      type: object
    DocumentUpdate:
      properties:
        filename:
          description: File Name
          example: publicInfo.pdf
          type: string
        mimeType:
          description: Mime Type
          example: text/plain
          type: string
        visibility:
          $ref: "#/components/schemas/VisibilityUpdate"
      title: DocumentUpdate
      type: object
    Guid:
      properties:
        createdTimestamp:
          description: The UTC unix timestamp of when this GUID has been created
          example: 1517232722
          format: int64
          readOnly: true
          type: integer
        holderOrganizationId:
          description: Organization namespace of the GUID holder
          readOnly: true
          type: string
        id4n:
          description: The ID
          example: 3THvgrWxqgTFC4
          readOnly: true
          type: string
        ownerOrganizationId:
          description: Organization namespace of the GUID owner
          readOnly: true
          type: string
        physicalState:
          description: Physical attachment state of the GUID
          enum:
            - UNATTACHED
            - ATTACHED
            - DETACHED
          type: string
        properties:
          additionalProperties:
            type: string
          description: The properties of the organization
          example: de.example
          readOnly: true
          type: object
      title: Guid
      type: object
    GuidAlias:
      properties:
        alias:
          description: An alias
          example: alias
          maxLength: 255
          minLength: 1
          type: string
      required:
        - alias
      title: GuidAlias
      type: object
    GuidCollection:
      properties:
        createdTimestamp:
          description: The UTC unix timestamp of when this collection has been created
          format: int64
          readOnly: true
          type: integer
        holderOrganizationId:
          description: Organization namespace of the holder of the collection
          type: string
        id4n:
          description: The ID
          readOnly: true
          type: string
        label:
          maxLength: 128
          minLength: 5
          type: string
        ownerOrganizationId:
          description: Organization namespace of the collection owner
          readOnly: true
          type: string
        physicalState:
          description: Physical attachment state of the collection
          enum:
            - UNATTACHED
            - ATTACHED
            - DETACHED
          type: string
        type:
          enum:
            - ROUTING_COLLECTION
            - LOGISTIC_COLLECTION
            - LABELLED_COLLECTION
          readOnly: true
          type: string
      title: GuidCollection
      type: object
    HistoryItem:
      description: GUID history item
      properties:
        additionalProperties:
          additionalProperties:
            type: string
          description: History items custom additional properties
          type: object
        organizationId:
          description: Originator of the history item
          example: org.acme
          type: string
        ownerOrganizationId:
          description: Owner of the history item
          example: de.bluerain
          readOnly: true
          type: string
        sequenceId:
          description: Forms the primary key of the history item together with the GUID and the organizationId
          example: 9784
          format: int32
          readOnly: true
          type: integer
        timestamp:
          description: History item timestamp
          example: 1517232722
          format: int64
          readOnly: true
          type: integer
        type:
          description: Type of the history item
          enum:
            - CREATED
            - DESTROYED
            - RECYCLED
            - SHIPMENT_PREPARED
            - STORED
            - RETRIEVED_FROM_STORAGE
            - PACKAGED
            - DISPATCHED
            - RECEIVED
            - DELIVERY_REFUSED
            - REPROCESSING_STARTED
            - REPROCESSING_STEP_STARTED
            - REPROCESSING_STEP_CANCELLED
            - REPROCESSING_STEP_FINISHED
            - REPROCESSING_CANCELLED
            - REPROCESSING_FINISHED
            - DISASSEMBLED
            - MAINTENANCE_STARTED
            - MAINTENANCE_STEP_STARTED
            - MAINTENANCE_STEP_CANCELLED
            - MAINTENANCE_STEP_FINISHED
            - MAINTENANCE_CANCELLED
            - MAINTENANCE_FINISHED
            - PRODUCTION_STARTED
            - PRODUCTION_CANCELLED
            - PRODUCTION_FINISHED
            - PRODUCTION_STEP_STARTED
            - PRODUCTION_STEP_CANCELLED
            - PRODUCTION_STEP_FINISHED
            - QUALITY_CHECK_PERFORMED
          example: DISPATCHED
          type: string
        visibility:
          $ref: "#/components/schemas/Visibility"
      required:
        - organizationId
        - type
      title: HistoryItem
      type: object
    HistoryItemUpdate:
      description: GUID history item update (diff patch)
      properties:
        organizationId:
          description: New organization id displayed for this item. If given, must match the holder of GUID and the organization the history item is found under.
          example: de.acme
          type: string
        visibility:
          $ref: "#/components/schemas/Visibility"
      title: HistoryItemUpdate
      type: object
    Id4n:
      properties:
        id4n:
          description: The ID
          example: 3THvgrWxqgTFC4
          type: string
      title: Id4n
      type: object
    Id4nPresentation:
      properties:
        createdTimestamp:
          description: The UTC unix timestamp of when this ID has been created
          example: 1517232722
          format: int64
          readOnly: true
          type: integer
        holderOrganizationId:
          description: Organization namespace of the holder of the ID
          example: de.example
          readOnly: true
          type: string
        id4n:
          description: The ID
          example: 3THvgrWxqgTFC4
          readOnly: true
          type: string
        label:
          readOnly: true
          type: string
        ownerOrganizationId:
          description: Organization namespace of the ID owner
          example: org.acme
          readOnly: true
          type: string
        properties:
          additionalProperties:
            type: string
          description: The properties of the organization
          example: de.example
          readOnly: true
          type: object
        type:
          description: The type of ID
          enum:
            - GUID
            - ROUTING_COLLECTION
            - LOGISTIC_COLLECTION
            - LABELLED_COLLECTION
          readOnly: true
          type: string
      title: Id4nPresentation
      type: object
    Id4nProperties:
      description: An id4n with its properties
      properties:
        id4n:
          description: The ID4n
          type: string
        properties:
          additionalProperties:
            type: string
          description: The properties of the ID4n
          type: object
      title: Id4nProperties
      type: object
    ImportGS1CodesRequest:
      description: GS1/MAPP codes import information
      properties:
        listOfGS1s:
          $ref: "#/components/schemas/ListOfGS1s"
        organizationId:
          description: The organization where the GS1/Mapp code is imported.
          example: de.acme
          type: string
      required:
        - listOfGS1s
        - organizationId
      title: ImportGS1CodesRequest
      type: object
    ListOfGS1s:
      description: A list of GS1/MAPP codes
      properties:
        codes:
          description: A list of GS1/MAPP codes.
          items:
            type: string
          type: array
      title: ListOfGS1s
      type: object
    ListOfId4nProperties:
      description: A list of id4n properties
      properties:
        list:
          description: A list containing the id4n with its properties.
          items:
            $ref: "#/components/schemas/Id4nProperties"
          type: array
      title: ListOfId4nProperties
      type: object
    ListOfId4ns:
      description: A list of id4ns
      properties:
        id4ns:
          description: A list of id4ns.
          items:
            type: string
          type: array
      title: ListOfId4ns
      type: object
    Organization:
      description: An organization
      properties:
        id:
          description: "The id of the organization ( Deprecated: Use namespace instead. )"
          example: 100
          format: int64
          readOnly: true
          type: integer
        logoURL:
          description: URL to a logo of the organization
          example: /api/v1/public/images/abcdef
          readOnly: true
          type: string
        name:
          description: The name of the organization
          example: ACME Inc.
          maxLength: 254
          minLength: 3
          type: string
        namespace:
          description: The namespace of the organization
          example: de.acme
          maxLength: 255
          minLength: 3
          type: string
      required:
        - name
        - namespace
      title: Organization
      type: object
    OrganizationAddress:
      properties:
        city:
          example: MyCity
          maxLength: 99
          minLength: 2
          type: string
        companyName:
          example: ACME Inc.
          maxLength: 254
          minLength: 0
          type: string
        countryCode:
          description: The ISO 3166 two-letter country code
          example: DE
          maxLength: 2
          minLength: 0
          type: string
        countryName:
          description: The country name
          example: Germany
          readOnly: true
          type: string
        firstname:
          example: Max
          maxLength: 255
          minLength: 0
          type: string
        lastname:
          example: Muster
          maxLength: 255
          minLength: 0
          type: string
        postCode:
          example: 12345
          maxLength: 40
          minLength: 2
          type: string
        street:
          example: Examplestreet 1
          maxLength: 254
          minLength: 3
          type: string
        telephone:
          description: The telephone number e.g.
          example: +49 8088 12345
          maxLength: 99
          minLength: 0
          type: string
      required:
        - city
        - countryCode
        - firstname
        - lastname
        - postCode
        - street
      title: OrganizationAddress
      type: object
    OrganizationUpdate:
      description: An organization
      properties:
        name:
          description: The name of the organization
          example: ACME Inc.
          maxLength: 254
          minLength: 3
          type: string
      title: OrganizationUpdate
      type: object
    OrganizationUserInvitation:
      properties:
        email:
          type: string
        roles:
          items:
            type: string
          type: array
        userName:
          type: string
      required:
        - roles
      title: OrganizationUserInvitation
      type: object
    OrganizationUserInvitationListRequest:
      properties:
        invitations:
          items:
            $ref: "#/components/schemas/OrganizationUserInvitation"
          type: array
      required:
        - invitations
      title: OrganizationUserInvitationListRequest
      type: object
    PaginatedResponseOfApiKeyPresentation:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/ApiKeyPresentation"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfApiKeyPresentation
      type: object
    PaginatedResponseOfApiKeyPrivilege:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/ApiKeyPrivilege"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfApiKeyPrivilege
      type: object
    PaginatedResponseOfApiKeyPrivilegeInfo:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/ApiKeyPrivilegeInfo"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfApiKeyPrivilegeInfo
      type: object
    PaginatedResponseOfChangeLogEntry:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/ChangeLogEntry"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfChangeLogEntry
      type: object
    PaginatedResponseOfCountry:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Country"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfCountry
      type: object
    PaginatedResponseOfDocument:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Document"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfDocument
      type: object
    PaginatedResponseOfGuid:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Guid"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfGuid
      type: object
    PaginatedResponseOfGuidCollection:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/GuidCollection"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfGuidCollection
      type: object
    PaginatedResponseOfHistoryItem:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/HistoryItem"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfHistoryItem
      type: object
    PaginatedResponseOfId4nPresentation:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Id4nPresentation"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfId4nPresentation
      type: object
    PaginatedResponseOfOrganization:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Organization"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfOrganization
      type: object
    PaginatedResponseOfPartnerOrganization:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/PartnerOrganization"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfPartnerOrganization
      type: object
    PaginatedResponseOfRole:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/Role"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfRole
      type: object
    PaginatedResponseOfUserPresentation:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/UserPresentation"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfUserPresentation
      type: object
    PaginatedResponseOfUserRoles:
      properties:
        elements:
          items:
            $ref: "#/components/schemas/UserRoles"
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfUserRoles
      type: object
    PaginatedResponseOfstring:
      properties:
        elements:
          items:
            type: string
          type: array
        limit:
          description: The number of returned elements
          example: 100
          format: int32
          type: integer
        offset:
          description: Starting with the n-th element
          example: 0
          format: int32
          type: integer
        total:
          description: The total number of elements
          example: 200
          format: int32
          type: integer
      required:
        - elements
        - limit
        - offset
      title: PaginatedResponseOfstring
      type: object
    PartnerOrganization:
      description: A partner organization
      properties:
        logoURL:
          description: URL to a logo of the organization
          example: /api/v1/public/images/abcdef
          readOnly: true
          type: string
        name:
          description: The name of the organization
          example: ACME Inc.
          maxLength: 254
          minLength: 3
          readOnly: true
          type: string
        namespace:
          description: The namespace of the organization
          example: de.acme
          maxLength: 255
          minLength: 3
          readOnly: true
          type: string
      title: PartnerOrganization
      type: object
    PasswordResetRequest:
      properties:
        username:
          type: string
      required:
        - username
      title: PasswordResetRequest
      type: object
    PasswordResetVerificationRequest:
      properties:
        password:
          type: string
        token:
          type: string
      required:
        - password
        - token
      title: PasswordResetVerificationRequest
      type: object
    PublicImagePresentation:
      properties:
        uri:
          description: The uri/url of the image
          example: /api/v1/public/image/bc671c63-4a9b-46e7-8c59-9bbe1917e6cc
          readOnly: true
          type: string
      title: PublicImagePresentation
      type: object
    QueuePresentation:
      properties:
        active:
          example: true
          type: boolean
        id:
          example: <default>
          type: string
        waitingMessages:
          description: The count of queued messages
          example: true
          format: int64
          type: integer
      required:
        - active
        - id
      title: QueuePresentation
      type: object
    QueueUpdateRequest:
      properties:
        active:
          description: If this value is set to false the queue will be deleted.
          example: true
          type: boolean
        id:
          example: <default>
          type: string
        purgeQueue:
          description: Set this value to true if you want to purge the queue.
          example: false
          type: boolean
      title: QueueUpdateRequest
      type: object
    RegistrationVerificationTokenPresentation:
      properties:
        token:
          type: string
      required:
        - token
      title: RegistrationVerificationTokenPresentation
      type: object
    RemoveApiKeyPrivilegeRequest:
      properties:
        privilege:
          type: string
      required:
        - privilege
      title: RemoveApiKeyPrivilegeRequest
      type: object
    RemovePartnerRequest:
      properties:
        organizationId:
          description: The namespace of the partner organization to remove
          example: org.acme
          type: string
      required:
        - organizationId
      title: RemovePartnerRequest
      type: object
    Role:
      properties:
        name:
          type: string
        privileges:
          items:
            type: string
          type: array
      title: Role
      type: object
    Route:
      properties:
        params:
          additionalProperties:
            type: string
          type: object
        priority:
          format: int32
          type: integer
        public:
          type: boolean
        type:
          type: string
        validUntil:
          format: int64
          type: integer
      required:
        - params
        - public
        - type
      title: Route
      type: object
    RoutingFile:
      properties:
        options:
          $ref: "#/components/schemas/RoutingOptions"
        routes:
          items:
            $ref: "#/components/schemas/Route"
          type: array
      required:
        - routes
      title: RoutingFile
      type: object
    RoutingFileRequest:
      properties:
        organizationId:
          type: string
        routing:
          $ref: "#/components/schemas/RoutingFile"
      required:
        - routing
      title: RoutingFileRequest
      type: object
    RoutingOptions:
      properties:
        deleteOutdatedRoutes:
          type: boolean
      title: RoutingOptions
      type: object
    SendCustomMessage:
      properties:
        data:
          additionalProperties:
            type: string
          description: Custom data in a map. You may use JSON content
          example: x = y
          type: object
        name:
          description: The name of the message (organisation specific)
          example: <event name>
          maxLength: 255
          minLength: 1
          type: string
      required:
        - data
        - name
      title: SendCustomMessage
      type: object
    ServiceCosts:
      properties:
        listing:
          additionalProperties:
            type: number
          type: object
      required:
        - listing
      title: ServiceCosts
      type: object
    SimpleMessageResponse:
      properties:
        message:
          type: string
      required:
        - message
      title: SimpleMessageResponse
      type: object
    TransferReceiveInfo:
      properties:
        organizationId:
          description: Organization to take the ownership of the ID. If the sender chose to keep the ownership, this organization becomes the holder. Otherwise, it becomes the new owner.
          example: de.id4i
          type: string
      required:
        - organizationId
      title: TransferReceiveInfo
      type: object
    TransferSendInfo:
      properties:
        holderOrganizationId:
          description: The current holder of the object
          example: de.id4i
          readOnly: true
          type: string
        keepOwnership:
          description: Keep the public ownership while transferring the object
          example: true
          type: boolean
        openForClaims:
          description: Allow anyone who knows (or can scan) the ID4N to claim ownership of this object
          example: false
          type: boolean
        ownerOrganizationId:
          description: The current publicly visible owner of the object
          example: de.bluerain
          readOnly: true
          type: string
        recipientOrganizationIds:
          description: Allow only these organizations to obtain this object
          example:
            - de.acme
            - com.porsche
            - de.bluerain
          items:
            type: string
          type: array
      required:
        - keepOwnership
        - openForClaims
        - recipientOrganizationIds
      title: TransferSendInfo
      type: object
    UserPresentation:
      properties:
        id:
          type: string
          xml:
            attribute: false
            name: id
            wrapped: false
        name:
          type: string
      title: UserPresentation
      type: object
    UserRegistrationRequest:
      properties:
        email:
          type: string
        password:
          maxLength: 99
          minLength: 8
          type: string
        username:
          pattern: "[a-zA-Z0-9_.-]{6,50}"
          type: string
      required:
        - email
        - password
        - username
      title: UserRegistrationRequest
      type: object
    UserRegistrationResponse:
      properties:
        email:
          type: string
        id:
          format: int64
          type: integer
        message:
          type: string
        username:
          type: string
      required:
        - id
      title: UserRegistrationResponse
      type: object
    UserRoles:
      properties:
        roles:
          items:
            type: string
          type: array
        user:
          $ref: "#/components/schemas/UserPresentation"
      title: UserRoles
      type: object
    Visibility:
      properties:
        public:
          description: Document is publicly readable (if ID4N is owned by the same organization)
          example: true
          type: boolean
        sharedOrganizationIds:
          description: Document is readable by these organizations (independend of ID4N ownership)
          example:
            - de.acme
            - com.porsche
            - de.bluerain
          items:
            type: string
          type: array
      title: Visibility
      type: object
    VisibilityUpdate:
      properties:
        public:
          description: Document is publicly readable (if ID4N is owned by the same organization)
          example: true
          type: boolean
        sharedWithOrganizationIds:
          description: Document is readable by these organizations (independend of ID4N ownership)
          example:
            - de.acme
            - com.porsche
            - de.bluerain
          items:
            type: string
          type: array
      title: VisibilityUpdate
      type: object
    WhoIsResponse:
      properties:
        aliases:
          additionalProperties:
            type: string
          type: object
        organization:
          $ref: "#/components/schemas/Organization"
        organizationAddress:
          $ref: "#/components/schemas/OrganizationAddress"
      title: WhoIsResponse
      type: object
  securitySchemes:
    Authorization:
      in: header
      name: Authorization
      type: apiKey
