| # ============LICENSE_START======================================================= |
| # Copyright (C) 2021 Bell Canada |
| # Modifications Copyright (C) 2021-2022 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' |
| 401: |
| $ref: 'components.yaml#/components/responses/Unauthorized' |
| 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. <error-details>" |
| }, |
| { |
| "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. <error-details>" |
| }, |
| { |
| "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. <error-details>" |
| }, |
| { |
| "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" |
| } |
| ] |
| |
| getAllCmHandleIdsForRegisteredDmi: |
| get: |
| description: Get all cm handle IDs for a registered DMI plugin |
| tags: |
| - network-cm-proxy-inventory |
| summary: Get all cm handle IDs for a registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin) |
| operationId: getAllCmHandleIdsForRegisteredDmi |
| parameters: |
| - $ref: 'components.yaml#/components/parameters/dmiPluginIdentifierInQuery' |
| responses: |
| 200: |
| description: OK |
| content: |
| application/json: |
| schema: |
| type: array |
| items: |
| type: string |
| 401: |
| $ref: 'components.yaml#/components/responses/Unauthorized' |
| 403: |
| $ref: 'components.yaml#/components/responses/Forbidden' |
| 500: |
| $ref: 'components.yaml#/components/responses/InternalServerError' |
| |
| searchCmHandleIds: |
| post: |
| description: Query and get CMHandleIds 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 |
| 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 |
| 401: |
| $ref: 'components.yaml#/components/responses/Unauthorized' |
| 403: |
| $ref: 'components.yaml#/components/responses/Forbidden' |
| 500: |
| $ref: 'components.yaml#/components/responses/InternalServerError' |