# ============LICENSE_START======================================================= # Copyright (C) 2021 Bell Canada # Modifications Copyright (C) 2021-2024 Nordix Foundation # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # SPDX-License-Identifier: Apache-2.0 # ============LICENSE_END========================================================= updateDmiRegistration: post: description: Register a DMI Plugin with any new, updated or removed CM Handles. tags: - network-cm-proxy-inventory summary: DMI notifies NCMP of new CM Handles operationId: updateDmiPluginRegistration requestBody: required: true content: application/json: schema: $ref: 'components.yaml#/components/schemas/RestDmiPluginRegistration' responses: 200: $ref: 'components.yaml#/components/responses/NoContent' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: description: Partial or Complete failure. The error details are provided in the response body and all supported error codes are documented in the example. content: application/json: schema: $ref: 'components.yaml#/components/schemas/DmiPluginRegistrationErrorResponse' example: failedCreatedCmHandles: [ { "cmHandle": "my-cm-handle-01", "errorCode": "00", "errorText": "Unknown error. " }, { "cmHandle": "my-cm-handle-02", "errorCode": "01", "errorText": "cm-handle already exists" }, { "cmHandle": "my-cm-handle-03", "errorCode": "03", "errorText": "cm-handle has an invalid character(s) in id" } ] failedUpdatedCmHandles: [ { "cmHandle": "my-cm-handle-01", "errorCode": "00", "errorText": "Unknown error. " }, { "cmHandle": "my-cm-handle-02", "errorCode": "02", "errorText": "cm-handle does not exist" }, { "cmHandle": "my-cm-handle-03", "errorCode": "03", "errorText": "cm-handle has an invalid character(s) in id" } ] failedRemovedCmHandles: [ { "cmHandle": "my-cm-handle-01", "errorCode": "00", "errorText": "Unknown error. " }, { "cmHandle": "my-cm-handle-02", "errorCode": "02", "errorText": "cm-handle does not exists" }, { "cmHandle": "my-cm-handle-03", "errorCode": "03", "errorText": "cm-handle has an invalid character(s) in id" } ] getAllCmHandleReferencesForRegisteredDmi: get: description: Get all cm handle references for a registered DMI plugin tags: - network-cm-proxy-inventory summary: Get all cm handle references for a registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin) operationId: getAllCmHandleReferencesForRegisteredDmi parameters: - $ref: 'components.yaml#/components/parameters/dmiPluginIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/outputAlternateIdOptionInQuery' responses: 200: description: OK content: application/json: schema: type: array items: type: string 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' searchCmHandleIds: post: description: Query and get cm handle references for additional properties, public properties and registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin). tags: - network-cm-proxy-inventory summary: Query for CM Handle IDs operationId: searchCmHandleIds parameters: - $ref: 'components.yaml#/components/parameters/outputAlternateIdOptionInQuery' requestBody: required: true content: application/json: schema: $ref: 'components.yaml#/components/schemas/CmHandleQueryParameters' responses: 200: description: OK content: application/json: schema: type: array items: type: string 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError'