openapi: 3.0.3
info:
  description: NCMP to CPS Proxy API
  title: NCMP to CPS Proxy API
  version: 3.5.4
servers:
- url: /ncmp
security:
- basicAuth: []
paths:
  /v1/ch/{cm-handle}/data/ds/{datastore-name}:
    delete:
      description: Delete resource data from pass-through running for a given cm handle
      operationId: deleteResourceDataRunningForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: The format of resource identifier depend on the associated DMI
          Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but
          it can really be anything.
        examples:
          sample 1:
            value:
              resourceIdentifier: \shops\bookstore
          sample 2:
            value:
              resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
          sample 3:
            value:
              resourceIdentifier: "parent=shops,child=bookstore"
        in: query
        name: resourceIdentifier
        required: true
        schema:
          type: string
      - description: "Content parameter for request, if content parameter is null,\
          \ default value is application/json."
        in: header
        name: Content-Type
        required: false
        schema:
          default: application/json
          example: application/yang-data+json
          type: string
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      responses:
        "204":
          content: {}
          description: No Content
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "404":
          content:
            application/json:
              example:
                status: 400
                message: Not found error message
                details: Not found error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The specified resource was not found
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Delete resource data
      tags:
      - network-cm-proxy
    get:
      description: Get resource data for given cm handle
      operationId: getResourceDataForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: The format of resource identifier depend on the associated DMI
          Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but
          it can really be anything.
        examples:
          sample 1:
            value:
              resourceIdentifier: \shops\bookstore
          sample 2:
            value:
              resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
          sample 3:
            value:
              resourceIdentifier: "parent=shops,child=bookstore"
        in: query
        name: resourceIdentifier
        required: true
        schema:
          type: string
      - description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\
          \ in parenthesis'()'. The format of options parameter depend on the associated\
          \ DMI Plugin implementation."
        examples:
          sample 1:
            value:
              options: (depth=3)
          sample 2:
            value:
              options: (fields=book)
          sample 3:
            value:
              options: "(depth=2,fields=book/authors)"
        in: query
        name: options
        required: false
        schema:
          type: string
      - description: topic parameter in query.
        examples:
          sample 1:
            value:
              topic: my-topic-name
        in: query
        name: topic
        required: false
        schema:
          type: string
      - description: Determines if descendants are included in response
        in: query
        name: include-descendants
        required: false
        schema:
          default: false
          type: boolean
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                dataSampleResponse:
                  $ref: '#/components/examples/dataSampleResponse'
                  value: null
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Get resource data for cm handle
      tags:
      - network-cm-proxy
    patch:
      description: Patch resource data from pass-through running for the given cm
        handle
      operationId: patchResourceDataRunningForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: The format of resource identifier depend on the associated DMI
          Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but
          it can really be anything.
        examples:
          sample 1:
            value:
              resourceIdentifier: \shops\bookstore
          sample 2:
            value:
              resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
          sample 3:
            value:
              resourceIdentifier: "parent=shops,child=bookstore"
        in: query
        name: resourceIdentifier
        required: true
        schema:
          type: string
      - description: "Content parameter for request, if content parameter is null,\
          \ default value is application/json."
        in: header
        name: Content-Type
        required: false
        schema:
          default: application/json
          example: application/yang-data+json
          type: string
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      requestBody:
        content:
          '*/*':
            examples:
              dataSampleRequest:
                $ref: '#/components/examples/dataSamplePatchRequest'
                value: null
            schema:
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Patch resource data from pass-through running
      tags:
      - network-cm-proxy
    post:
      description: create resource data from pass-through running for given cm handle
      operationId: createResourceDataRunningForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: The format of resource identifier depend on the associated DMI
          Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but
          it can really be anything.
        examples:
          sample 1:
            value:
              resourceIdentifier: \shops\bookstore
          sample 2:
            value:
              resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
          sample 3:
            value:
              resourceIdentifier: "parent=shops,child=bookstore"
        in: query
        name: resourceIdentifier
        required: true
        schema:
          type: string
      - description: "Content parameter for request, if content parameter is null,\
          \ default value is application/json."
        in: header
        name: Content-Type
        required: false
        schema:
          default: application/json
          example: application/yang-data+json
          type: string
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            examples:
              dataSampleRequest:
                $ref: '#/components/examples/dataSampleRequest'
                value: null
            schema:
              type: object
          application/yang-data+json:
            examples:
              dataSampleRequest:
                $ref: '#/components/examples/dataSampleRequest'
                value: null
            schema:
              type: object
        required: true
      responses:
        "201":
          content: {}
          description: Created
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: create resource data from pass-through running for cm handle
      tags:
      - network-cm-proxy
    put:
      description: Update resource data from pass-through running for the given cm
        handle
      operationId: updateResourceDataRunningForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: The format of resource identifier depend on the associated DMI
          Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but
          it can really be anything.
        examples:
          sample 1:
            value:
              resourceIdentifier: \shops\bookstore
          sample 2:
            value:
              resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
          sample 3:
            value:
              resourceIdentifier: "parent=shops,child=bookstore"
        in: query
        name: resourceIdentifier
        required: true
        schema:
          type: string
      - description: "Content parameter for request, if content parameter is null,\
          \ default value is application/json."
        in: header
        name: Content-Type
        required: false
        schema:
          default: application/json
          example: application/yang-data+json
          type: string
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            examples:
              dataSampleRequest:
                $ref: '#/components/examples/dataSampleRequest'
                value: null
            schema:
              type: object
          application/yang-data+json:
            examples:
              dataSampleRequest:
                $ref: '#/components/examples/dataSampleRequest'
                value: null
            schema:
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Update resource data from pass-through running for a cm handle
      tags:
      - network-cm-proxy
  /v1/data:
    post:
      description: This request will be handled asynchronously using messaging to
        the supplied topic. The rest response will be an acknowledge with a requestId
        to identify the relevant messages. A maximum of 200 cm handles per operation
        is supported.
      operationId: executeDataOperationForCmHandles
      parameters:
      - description: mandatory topic parameter in query.
        examples:
          sample 1:
            value:
              topic: my-topic-name
        in: query
        name: topic
        required: true
        schema:
          type: string
      - description: Authorization parameter for request.
        in: header
        name: Authorization
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DataOperationRequest'
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "413":
          content:
            application/json:
              example:
                status: 413
                message: Payload Too Large error message
                details: Payload Too Large error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The request is larger than the server is willing or able to
            process
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Execute a data operation for group of cm handle ids
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/data/ds/{datastore-name}/query:
    get:
      description: Query resource data for a given cm handle
      operationId: queryResourceDataForCmHandle
      parameters:
      - description: The type of the requested data
        in: path
        name: datastore-name
        required: true
        schema:
          example: ncmp-datastore:running
          type: string
      - description: "The identifier for a network function, network element, subnetwork\
          \ or any other cm object by managed Network CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle
          type: string
      - description: "For more details on cps path, please refer https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html"
        examples:
          container cps path:
            value: //bookstore
          list attributes cps path:
            value: "//categories[@code=1]"
        in: query
        name: cps-path
        required: false
        schema:
          default: /
          type: string
      - description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\
          \ in parenthesis'()'. The format of options parameter depend on the associated\
          \ DMI Plugin implementation."
        examples:
          sample 1:
            value:
              options: (depth=3)
          sample 2:
            value:
              options: (fields=book)
          sample 3:
            value:
              options: "(depth=2,fields=book/authors)"
        in: query
        name: options
        required: false
        schema:
          type: string
      - description: topic parameter in query.
        examples:
          sample 1:
            value:
              topic: my-topic-name
        in: query
        name: topic
        required: false
        schema:
          type: string
      - description: Determines if descendants are included in response
        in: query
        name: include-descendants
        required: false
        schema:
          default: false
          type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                dataSampleResponse:
                  $ref: '#/components/examples/dataSampleResponse'
                  value: null
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Query resource data for a given cm handle
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/modules:
    get:
      description: fetch all module references (name and revision) for a given cm
        handle
      operationId: getModuleReferencesByCmHandle
      parameters:
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RestModuleReference'
                type: array
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Fetch all module references (name and revision) for a given cm handle
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/modules/definitions:
    get:
      description: "Get module definitions (module name, revision, yang resource)\
        \ with options to filter on module name and revision"
      operationId: getModuleDefinitions
      parameters:
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      - description: Filter for a module name.This is an optional parameter
        in: query
        name: module-name
        required: false
        schema:
          example: my-module
          type: string
      - description: Filter for a module revision.This is an optional parameter and
          ignored when no module name is supplied
        in: query
        name: revision
        required: false
        schema:
          example: 2024-01-22
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RestModuleDefinition'
                type: array
          description: OK
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Get module definitions
      tags:
      - network-cm-proxy
  /v1/ch/searches:
    post:
      description: Execute cm handle query search and return a list of cm handle details.
        Any number of conditions can be applied. To be included in the result a cm-handle
        must fulfill ALL the conditions. An empty collection will be returned in the
        case that the cm handle does not match a condition. For more on cm handle
        query search please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm
        handle query search Read the Docs</a>.<br/>By supplying a CPS Path it is possible
        to query on any data related to the cm handle. For more on CPS Path please
        refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html">CPS
        Path Read the Docs</a>. The cm handle ancestor is automatically returned for
        this query.
      operationId: searchCmHandles
      requestBody:
        content:
          application/json:
            examples:
              Cm handle properties query:
                $ref: '#/components/examples/pubPropCmHandleQueryParameters'
                value: null
              Cm handle modules query:
                $ref: '#/components/examples/modulesCmHandleQueryParameters'
                value: null
              All cm handle query parameters:
                $ref: '#/components/examples/allCmHandleQueryParameters'
                value: null
              Cm handle with CPS path state query:
                $ref: '#/components/examples/cpsPathCmHandleStateQueryParameters'
                value: null
              Cm handle with data sync flag query:
                $ref: '#/components/examples/cpsPathCmHandleDataSyncQueryParameters'
                value: null
            schema:
              $ref: '#/components/schemas/CmHandleQueryParameters'
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RestOutputCmHandle'
                type: array
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Execute cm handle search using the available conditions
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}:
    get:
      description: Retrieve CM handle details and properties by cm handle id
      operationId: retrieveCmHandleDetailsById
      parameters:
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestOutputCmHandle'
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "404":
          content:
            application/json:
              example:
                status: 400
                message: Not found error message
                details: Not found error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The specified resource was not found
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Retrieve CM handle details
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/properties:
    get:
      description: Get CM handle properties by cm handle id
      operationId: getCmHandlePublicPropertiesByCmHandleId
      parameters:
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestOutputCmHandlePublicProperties'
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "404":
          content:
            application/json:
              example:
                status: 400
                message: Not found error message
                details: Not found error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The specified resource was not found
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Get CM handle properties
      tags:
      - network-cm-proxy
  /v1/ch/id-searches:
    post:
      description: Execute cm handle query search and return a list of cm handle references.
        Any number of conditions can be applied. To be included in the result a cm-handle
        must fulfill ALL the conditions. An empty collection will be returned in the
        case that the cm handle does not match a condition. For more on cm handle
        query search please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm
        handle query search Read the Docs</a>.<br/>By supplying a CPS Path it is possible
        to query on any data related to the cm handle. For more on CPS Path please
        refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html">CPS
        Path Read the Docs</a>. The cm handle ancestor is automatically returned for
        this query.
      operationId: searchCmHandleIds
      parameters:
      - description: Boolean parameter to determine if returned value(s) will be cmHandle
          Ids or Alternate Ids for a given query
        in: query
        name: outputAlternateId
        required: false
        schema:
          default: false
          type: boolean
      requestBody:
        content:
          application/json:
            examples:
              Cm handle properties query:
                $ref: '#/components/examples/pubPropCmHandleQueryParameters'
                value: null
              Cm handle modules query:
                $ref: '#/components/examples/modulesCmHandleQueryParameters'
                value: null
              All cm handle query parameters:
                $ref: '#/components/examples/allCmHandleQueryParameters'
                value: null
              Cm handle with CPS path state query:
                $ref: '#/components/examples/cpsPathCmHandleStateQueryParameters'
                value: null
              Cm handle with data sync flag query:
                $ref: '#/components/examples/cpsPathCmHandleDataSyncQueryParameters'
                value: null
            schema:
              $ref: '#/components/schemas/CmHandleQueryParameters'
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "404":
          content:
            application/json:
              example:
                status: 400
                message: Not found error message
                details: Not found error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The specified resource was not found
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Execute cm handle query upon a given set of query parameters
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/state:
    get:
      description: Get CM handle state by cm handle id
      operationId: getCmHandleStateByCmHandleId
      parameters:
      - description: "The identifier (cmHandle or alternate) for a network function,\
          \ network element, subnetwork or any other cm object by managed Network\
          \ CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle-reference
          type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestOutputCmHandleCompositeState'
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "404":
          content:
            application/json:
              example:
                status: 400
                message: Not found error message
                details: Not found error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: The specified resource was not found
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
      summary: Get CM handle state
      tags:
      - network-cm-proxy
  /v1/ch/{cm-handle}/data-sync:
    put:
      description: Set the data sync enabled flag to true or false for a specified
        Cm-Handle. This will in turn set the data sync state to UNSYNCHRONIZED and
        NONE_REQUESTED respectfully.
      operationId: setDataSyncEnabledFlagForCmHandle
      parameters:
      - description: "The identifier for a network function, network element, subnetwork\
          \ or any other cm object by managed Network CM Proxy"
        in: path
        name: cm-handle
        required: true
        schema:
          example: my-cm-handle
          type: string
      - description: Is used to enable or disable the data synchronization flag
        in: query
        name: dataSyncEnabled
        required: true
        schema:
          example: true
          type: boolean
      responses:
        "200":
          content:
            application/json:
              schema:
                type: object
          description: OK
        "400":
          content:
            application/json:
              example:
                status: 400
                message: Bad request error message
                details: Bad request error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Bad Request
        "403":
          content:
            application/json:
              example:
                status: 403
                message: Forbidden error message
                details: Forbidden error details
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Forbidden
        "500":
          content:
            application/json:
              example:
                status: 500
                message: Internal Server Error
                details: Internal Server Error occurred
              schema:
                $ref: '#/components/schemas/ErrorMessage'
          description: Internal Server Error
        "502":
          content:
            application/json:
              example:
                message: Bad Gateway Error Message NCMP
                dmi-response:
                  http-code: 400
                  body: Bad Request
              schema:
                $ref: '#/components/schemas/DmiErrorMessage'
          description: Bad Gateway
      summary: Set the Data Sync Enabled Flag
      tags:
      - network-cm-proxy
components:
  examples:
    dataSampleResponse:
      description: Sample response for selecting 'sample 1'.
      summary: Sample response
      value:
        bookstore:
          categories:
          - code: "01"
            books:
            - authors:
              - Iain M. Banks
              - Ursula K. Le Guin
            name: SciFi
          - code: "02"
            books:
            - authors:
              - Philip Pullman
            name: kids
    dataSampleRequest:
      description: Sample request body
      summary: Sample request
      value:
        test:bookstore:
          bookstore-name: Chapters
          categories:
          - code: "01"
            name: SciFi
            books:
            - authors:
              - Iain M. Banks
              - Ursula K. Le Guin
          - code: "02"
            name: kids
            books:
            - authors:
              - Philip Pullman
    dataSamplePatchRequest:
      description: Sample patch request body
      summary: Sample patch request
      value:
        ietf-restconf:yang-patch:
          patch-id: patch-1
          edit:
          - edit-id: edit1
            operation: merge
            target: /
            value:
              test:bookstore:
                bookstore-name: Chapters
                categories:
                - code: "01"
                  name: Science
                  books:
                  - authors:
                    - Author1
                    - Author2
                - code: "02"
                  name: Arts
                  books:
                  - authors:
                    - Author3
          - edit-id: edit2
            operation: merge
            target: /
            value:
              test:bookstore:
                bookstore-name: Novels
                categories:
                - code: "03"
                  name: History
                  books:
                  - authors:
                    - Iain M. Banks
                    - Ursula K. Le Guin
                - code: "04"
                  name: Fiction
                  books:
                  - authors:
                    - Philip Pullman
    pubPropCmHandleQueryParameters:
      value:
        cmHandleQueryParameters:
        - conditionName: hasAllProperties
          conditionParameters:
          - Color: yellow
          - Shape: circle
          - Size: small
    modulesCmHandleQueryParameters:
      value:
        cmHandleQueryParameters:
        - conditionName: hasAllModules
          conditionParameters:
          - moduleName: my-module-1
          - moduleName: my-module-2
          - moduleName: my-module-3
    allCmHandleQueryParameters:
      value:
        cmHandleQueryParameters:
        - conditionName: hasAllModules
          conditionParameters:
          - moduleName: my-module-1
          - moduleName: my-module-2
          - moduleName: my-module-3
        - conditionName: hasAllProperties
          conditionParameters:
          - Color: yellow
          - Shape: circle
          - Size: small
        - conditionName: cmHandleWithCpsPath
          conditionParameters:
          - cpsPath: "//state[@cm-handle-state='ADVISED']"
    cpsPathCmHandleStateQueryParameters:
      value:
        cmHandleQueryParameters:
        - conditionName: cmHandleWithCpsPath
          conditionParameters:
          - cpsPath: "//state[@cm-handle-state='LOCKED']"
    cpsPathCmHandleDataSyncQueryParameters:
      value:
        cmHandleQueryParameters:
        - conditionName: cmHandleWithCpsPath
          conditionParameters:
          - cpsPath: "//state[@data-sync-enabled='true']"
  parameters:
    datastoreName:
      description: The type of the requested data
      in: path
      name: datastore-name
      required: true
      schema:
        example: ncmp-datastore:running
        type: string
    cmHandleReferenceInPath:
      description: "The identifier (cmHandle or alternate) for a network function,\
        \ network element, subnetwork or any other cm object by managed Network CM\
        \ Proxy"
      in: path
      name: cm-handle
      required: true
      schema:
        example: my-cm-handle-reference
        type: string
    resourceIdentifierInQuery:
      description: The format of resource identifier depend on the associated DMI
        Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it
        can really be anything.
      examples:
        sample 1:
          value:
            resourceIdentifier: \shops\bookstore
        sample 2:
          value:
            resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
        sample 3:
          value:
            resourceIdentifier: "parent=shops,child=bookstore"
      in: query
      name: resourceIdentifier
      required: true
      schema:
        type: string
    optionsParamInQuery:
      description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\
        \ in parenthesis'()'. The format of options parameter depend on the associated\
        \ DMI Plugin implementation."
      examples:
        sample 1:
          value:
            options: (depth=3)
        sample 2:
          value:
            options: (fields=book)
        sample 3:
          value:
            options: "(depth=2,fields=book/authors)"
      in: query
      name: options
      required: false
      schema:
        type: string
    topicParamInQuery:
      description: topic parameter in query.
      examples:
        sample 1:
          value:
            topic: my-topic-name
      in: query
      name: topic
      required: false
      schema:
        type: string
    includeDescendantsOptionInQuery:
      description: Determines if descendants are included in response
      in: query
      name: include-descendants
      required: false
      schema:
        default: false
        type: boolean
    authorizationParamInHeader:
      description: Authorization parameter for request.
      in: header
      name: Authorization
      required: false
      schema:
        type: string
    contentParamInHeader:
      description: "Content parameter for request, if content parameter is null, default\
        \ value is application/json."
      in: header
      name: Content-Type
      required: false
      schema:
        default: application/json
        example: application/yang-data+json
        type: string
    requiredTopicParamInQuery:
      description: mandatory topic parameter in query.
      examples:
        sample 1:
          value:
            topic: my-topic-name
      in: query
      name: topic
      required: true
      schema:
        type: string
    cmHandleInPath:
      description: "The identifier for a network function, network element, subnetwork\
        \ or any other cm object by managed Network CM Proxy"
      in: path
      name: cm-handle
      required: true
      schema:
        example: my-cm-handle
        type: string
    cpsPathInQuery:
      description: "For more details on cps path, please refer https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html"
      examples:
        container cps path:
          value: //bookstore
        list attributes cps path:
          value: "//categories[@code=1]"
      in: query
      name: cps-path
      required: false
      schema:
        default: /
        type: string
    moduleNameInQuery:
      description: Filter for a module name.This is an optional parameter
      in: query
      name: module-name
      required: false
      schema:
        example: my-module
        type: string
    revisionInQuery:
      description: Filter for a module revision.This is an optional parameter and
        ignored when no module name is supplied
      in: query
      name: revision
      required: false
      schema:
        example: 2024-01-22
        type: string
    outputAlternateIdOptionInQuery:
      description: Boolean parameter to determine if returned value(s) will be cmHandle
        Ids or Alternate Ids for a given query
      in: query
      name: outputAlternateId
      required: false
      schema:
        default: false
        type: boolean
    dataSyncEnabled:
      description: Is used to enable or disable the data synchronization flag
      in: query
      name: dataSyncEnabled
      required: true
      schema:
        example: true
        type: boolean
  responses:
    BadRequest:
      content:
        application/json:
          example:
            status: 400
            message: Bad request error message
            details: Bad request error details
          schema:
            $ref: '#/components/schemas/ErrorMessage'
      description: Bad Request
    Forbidden:
      content:
        application/json:
          example:
            status: 403
            message: Forbidden error message
            details: Forbidden error details
          schema:
            $ref: '#/components/schemas/ErrorMessage'
      description: Forbidden
    InternalServerError:
      content:
        application/json:
          example:
            status: 500
            message: Internal Server Error
            details: Internal Server Error occurred
          schema:
            $ref: '#/components/schemas/ErrorMessage'
      description: Internal Server Error
    BadGateway:
      content:
        application/json:
          example:
            message: Bad Gateway Error Message NCMP
            dmi-response:
              http-code: 400
              body: Bad Request
          schema:
            $ref: '#/components/schemas/DmiErrorMessage'
      description: Bad Gateway
    Ok:
      content:
        application/json:
          schema:
            type: object
      description: OK
    Created:
      content: {}
      description: Created
    NoContent:
      content: {}
      description: No Content
    NotFound:
      content:
        application/json:
          example:
            status: 400
            message: Not found error message
            details: Not found error details
          schema:
            $ref: '#/components/schemas/ErrorMessage'
      description: The specified resource was not found
    PayloadTooLarge:
      content:
        application/json:
          example:
            status: 413
            message: Payload Too Large error message
            details: Payload Too Large error details
          schema:
            $ref: '#/components/schemas/ErrorMessage'
      description: The request is larger than the server is willing or able to process
  schemas:
    ErrorMessage:
      properties:
        status:
          type: string
        message:
          type: string
        details:
          type: string
      title: Error
      type: object
    DmiErrorMessage:
      properties:
        message:
          example: Bad Gateway Error Message NCMP
          type: string
        dmi-response:
          $ref: '#/components/schemas/DmiErrorMessage_dmi_response'
      title: DMI Error Message
      type: object
    DataOperationRequest:
      example:
        operations:
        - resourceIdentifier: parent/child
          targetIds:
          - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
            ]"
          - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
            ]"
          datastore: ncmp-datastore:passthrough-operational
          options: (fields=schemas/schema)
          operationId: "12"
          operation: read
        - resourceIdentifier: parent/child
          targetIds:
          - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
            ]"
          - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
            ]"
          datastore: ncmp-datastore:passthrough-operational
          options: (fields=schemas/schema)
          operationId: "12"
          operation: read
      properties:
        operations:
          description: contains group of data operation requests
          items:
            $ref: '#/components/schemas/DataOperationDefinition'
          type: array
      title: execute data operation for given array of operations
      type: object
    DataOperationDefinition:
      example:
        resourceIdentifier: parent/child
        targetIds:
        - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
          ]"
        - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
          ]"
        datastore: ncmp-datastore:passthrough-operational
        options: (fields=schemas/schema)
        operationId: "12"
        operation: read
      properties:
        operation:
          example: read
          type: string
        operationId:
          example: "12"
          type: string
        datastore:
          example: ncmp-datastore:passthrough-operational
          type: string
        options:
          example: (fields=schemas/schema)
          type: string
        resourceIdentifier:
          example: parent/child
          type: string
        targetIds:
          items:
            description: "targeted cm handles, maximum of 50 supported. If this limit\
              \ is exceeded the request wil be refused."
            example: "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
              ]"
            type: string
          type: array
      required:
      - datastore
      - operation
      - operationId
    RestModuleReference:
      example:
        moduleName: my-module-name
        revision: my-module-revision
      properties:
        moduleName:
          example: my-module-name
          type: string
        revision:
          example: my-module-revision
          type: string
      title: Module reference details
      type: object
    RestModuleDefinition:
      example:
        moduleName: my-module-name
        content: |
          module stores {
            yang-version 1.1;
            namespace 'org:onap:ccsdk:sample';
            prefix book-store;
            revision '2020-09-15' {
              description
              'Sample Model';
            }
          }
        revision: 2020-09-15
      properties:
        moduleName:
          example: my-module-name
          type: string
        revision:
          example: 2020-09-15
          type: string
        content:
          example: |
            module stores {
              yang-version 1.1;
              namespace 'org:onap:ccsdk:sample';
              prefix book-store;
              revision '2020-09-15' {
                description
                'Sample Model';
              }
            }
          type: string
      title: Module definitions
      type: object
    CmHandleQueryParameters:
      example:
        cmHandleQueryParameters:
        - conditionParameters:
          - key: conditionParameters
          - key: conditionParameters
          conditionName: conditionName
        - conditionParameters:
          - key: conditionParameters
          - key: conditionParameters
          conditionName: conditionName
        conditions:
        - name: name
          conditionParameters:
          - moduleName: my-module
          - moduleName: my-module
        - name: name
          conditionParameters:
          - moduleName: my-module
          - moduleName: my-module
      properties:
        cmHandleQueryParameters:
          items:
            $ref: '#/components/schemas/ConditionProperties'
          type: array
        conditions:
          deprecated: true
          description: "not necessary, it is just for backward compatibility"
          items:
            $ref: '#/components/schemas/OldConditionProperties'
          type: array
      title: Cm Handle query parameters for executing cm handle search
      type: object
    ConditionProperties:
      example:
        conditionParameters:
        - key: conditionParameters
        - key: conditionParameters
        conditionName: conditionName
      properties:
        conditionName:
          type: string
        conditionParameters:
          items:
            additionalProperties:
              type: string
            type: object
          type: array
    OldConditionProperties:
      deprecated: true
      example:
        name: name
        conditionParameters:
        - moduleName: my-module
        - moduleName: my-module
      properties:
        name:
          type: string
        conditionParameters:
          items:
            $ref: '#/components/schemas/ModuleNameAsJsonObject'
          type: array
    ModuleNameAsJsonObject:
      example:
        moduleName: my-module
      properties:
        moduleName:
          example: my-module
          type: string
    RestOutputCmHandle:
      example:
        cmHandle: my-cm-handle1
        alternateId: my-alternate-id
        dataProducerIdentifier: my-data-producer-identifier
        publicCmHandleProperties:
        - key: Book Type
        - key: Book Type
        state:
          dataSyncEnabled: false
          dataSyncState:
            running:
              lastSyncTime: 2022-12-31T20:30:40.000+0000
              syncState: NONE_REQUESTED
            operational:
              lastSyncTime: 2022-12-31T20:30:40.000+0000
              syncState: NONE_REQUESTED
          cmHandleState: ADVISED
          lockReason:
            reason: LOCKED_MISBEHAVING
            details: locked due to failure in module sync
          lastUpdateTime: 2022-12-31T20:30:40.000+0000
        trustLevel: COMPLETE
        moduleSetTag: my-module-set-tag
      properties:
        cmHandle:
          example: my-cm-handle1
          type: string
        publicCmHandleProperties:
          items:
            additionalProperties:
              example: Book Type
              type: string
            type: object
          type: array
        state:
          $ref: '#/components/schemas/CmHandleCompositeState'
        trustLevel:
          description: Current trust level of the relevant CM handle ID.
          example: COMPLETE
          type: string
        moduleSetTag:
          example: my-module-set-tag
          type: string
        alternateId:
          example: my-alternate-id
          type: string
        dataProducerIdentifier:
          example: my-data-producer-identifier
          type: string
      title: CM handle Details
      type: object
    CmHandlePublicProperties:
      items:
        additionalProperties:
          example: Book Type
          type: string
        type: object
      type: array
    CmHandleCompositeState:
      example:
        dataSyncEnabled: false
        dataSyncState:
          running:
            lastSyncTime: 2022-12-31T20:30:40.000+0000
            syncState: NONE_REQUESTED
          operational:
            lastSyncTime: 2022-12-31T20:30:40.000+0000
            syncState: NONE_REQUESTED
        cmHandleState: ADVISED
        lockReason:
          reason: LOCKED_MISBEHAVING
          details: locked due to failure in module sync
        lastUpdateTime: 2022-12-31T20:30:40.000+0000
      properties:
        cmHandleState:
          example: ADVISED
          type: string
        lockReason:
          $ref: '#/components/schemas/lock-reason'
        lastUpdateTime:
          example: 2022-12-31T20:30:40.000+0000
          type: string
        dataSyncEnabled:
          example: false
          type: boolean
        dataSyncState:
          $ref: '#/components/schemas/dataStores'
      type: object
    lock-reason:
      example:
        reason: LOCKED_MISBEHAVING
        details: locked due to failure in module sync
      properties:
        reason:
          example: LOCKED_MISBEHAVING
          type: string
        details:
          example: locked due to failure in module sync
          type: string
      type: object
    dataStores:
      example:
        running:
          lastSyncTime: 2022-12-31T20:30:40.000+0000
          syncState: NONE_REQUESTED
        operational:
          lastSyncTime: 2022-12-31T20:30:40.000+0000
          syncState: NONE_REQUESTED
      properties:
        operational:
          $ref: '#/components/schemas/sync-state'
        running:
          $ref: '#/components/schemas/sync-state'
      type: object
    sync-state:
      example:
        lastSyncTime: 2022-12-31T20:30:40.000+0000
        syncState: NONE_REQUESTED
      properties:
        syncState:
          example: NONE_REQUESTED
          type: string
        lastSyncTime:
          example: 2022-12-31T20:30:40.000+0000
          type: string
      type: object
    CmHandleTrustLevel:
      description: Current trust level of the relevant CM handle ID.
      example: COMPLETE
      type: string
    RestOutputCmHandlePublicProperties:
      example:
        publicCmHandleProperties:
        - key: Book Type
        - key: Book Type
      properties:
        publicCmHandleProperties:
          items:
            additionalProperties:
              example: Book Type
              type: string
            type: object
          type: array
      type: object
    RestOutputCmHandleCompositeState:
      example:
        state:
          dataSyncEnabled: false
          dataSyncState:
            running:
              lastSyncTime: 2022-12-31T20:30:40.000+0000
              syncState: NONE_REQUESTED
            operational:
              lastSyncTime: 2022-12-31T20:30:40.000+0000
              syncState: NONE_REQUESTED
          cmHandleState: ADVISED
          lockReason:
            reason: LOCKED_MISBEHAVING
            details: locked due to failure in module sync
          lastUpdateTime: 2022-12-31T20:30:40.000+0000
      properties:
        state:
          $ref: '#/components/schemas/CmHandleCompositeState'
      type: object
    DmiErrorMessage_dmi_response:
      properties:
        http-code:
          example: 400
          type: integer
        body:
          example: Bad Request
          type: string
      type: object
  securitySchemes:
    basicAuth:
      scheme: basic
      type: http