get:
    summary: Returns a filtered list of all hosting assets.
    description: Returns the list of all hosting assets which match the given filters and are visible to the current subject or any of it's assumed roles.
    tags:
        - hs-hosting-assets
    operationId: getListOfHostingAssets
    parameters:
        - $ref: 'auth.yaml#/components/parameters/assumedRoles'
        - name: projectUuid
          in: query
          required: false
          schema:
              type: string
              format: uuid
          description: The UUID of the project, whose hosting assets are to be listed.
        - name: parentAssetUuid
          in: query
          required: false
          schema:
              type: string
              format: uuid
          description: The UUID of the parentAsset, whose hosting assets are to be listed.
        - name: type
          in: query
          required: false
          schema:
              $ref: 'hs-hosting-asset-schemas.yaml#/components/schemas/HsHostingAssetType'
          description: The type of hosting assets to be listed.
    responses:
        "200":
            description: OK
            content:
                'application/json':
                    schema:
                        type: array
                        items:
                            $ref: 'hs-hosting-asset-schemas.yaml#/components/schemas/HsHostingAsset'
        "401":
            $ref: 'error-responses.yaml#/components/responses/Unauthorized'
        "403":
            $ref: 'error-responses.yaml#/components/responses/Forbidden'

post:
    summary: Adds a new hosting asset.
    tags:
        - hs-hosting-assets
    operationId: postNewHostingAsset
    parameters:
        - $ref: 'auth.yaml#/components/parameters/assumedRoles'
    requestBody:
        description: A JSON object describing the new hosting asset.
        required: true
        content:
            application/json:
                schema:
                    $ref: 'hs-hosting-asset-schemas.yaml#/components/schemas/HsHostingAssetInsert'
    responses:
        "201":
            description: Created
            content:
                'application/json':
                    schema:
                        $ref: 'hs-hosting-asset-schemas.yaml#/components/schemas/HsHostingAsset'
        "401":
            $ref: 'error-responses.yaml#/components/responses/Unauthorized'
        "403":
            $ref: 'error-responses.yaml#/components/responses/Forbidden'
        "409":
            $ref: 'error-responses.yaml#/components/responses/Conflict'
