openapi: 3.0.1 info: title: NCMP Inventory API description: NCMP Inventory API version: "1.0" servers: - url: /ncmpInventory security: - basicAuth: [] paths: /v1/ch: post: tags: - network-cm-proxy-inventory summary: DMI notifies NCMP of new CM Handles description: "Register a DMI Plugin with any new, updated or removed CM Handles." operationId: updateDmiPluginRegistration requestBody: content: application/json: schema: $ref: '#/components/schemas/RestDmiPluginRegistration' required: true responses: "200": description: No Content content: {} "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 401 message: Unauthorized error message details: Unauthorized error details "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 403 message: Forbidden error message details: Forbidden error details "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/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 /v1/ch/cmHandles: get: tags: - network-cm-proxy-inventory summary: "Get all cm handle IDs for a registered DMI plugin (DMI plugin, DMI\ \ data plugin, DMI model plugin)" description: Get all cm handle IDs for a registered DMI plugin operationId: getAllCmHandleIdsForRegisteredDmi parameters: - name: dmi-plugin-identifier in: query description: dmi-plugin-identifier required: true schema: type: string example: my-dmi-plugin responses: "200": description: OK content: application/json: schema: type: array items: type: string "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 401 message: Unauthorized error message details: Unauthorized error details "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 403 message: Forbidden error message details: Forbidden error details "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 500 message: Internal Server Error details: Internal Server Error occurred /v1/ch/searches: post: tags: - network-cm-proxy-inventory summary: Query for CM Handle IDs description: "Query and get CMHandleIds for additional properties, public properties\ \ and registered DMI plugin (DMI plugin, DMI data plugin, DMI model plugin)." operationId: searchCmHandleIds requestBody: content: application/json: schema: $ref: '#/components/schemas/CmHandleQueryParameters' required: true responses: "200": description: OK content: application/json: schema: type: array items: type: string "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 401 message: Unauthorized error message details: Unauthorized error details "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 403 message: Forbidden error message details: Forbidden error details "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorMessage' example: status: 500 message: Internal Server Error details: Internal Server Error occurred components: schemas: RestDmiPluginRegistration: type: object properties: dmiPlugin: type: string example: my-dmi-plugin default: "" dmiDataPlugin: type: string example: my-dmi-data-plugin default: "" dmiModelPlugin: type: string example: my-dmi-model-plugin default: "" createdCmHandles: type: array items: $ref: '#/components/schemas/RestInputCmHandle' updatedCmHandles: type: array items: $ref: '#/components/schemas/RestInputCmHandle' removedCmHandles: type: array example: - my-cm-handle1 - my-cm-handle2 - my-cm-handle3 items: type: string RestInputCmHandle: required: - cmHandle type: object properties: cmHandle: type: string example: my-cm-handle cmHandleProperties: $ref: '#/components/schemas/RestCmHandleProperties' publicCmHandleProperties: $ref: '#/components/schemas/RestCmHandleProperties' RestCmHandleProperties: type: object additionalProperties: type: string example: my-property ErrorMessage: title: Error type: object properties: status: type: string message: type: string details: type: string DmiPluginRegistrationErrorResponse: type: object properties: failedCreatedCmHandles: type: array items: $ref: '#/components/schemas/CmHandlerRegistrationErrorResponse' failedUpdatedCmHandles: type: array items: $ref: '#/components/schemas/CmHandlerRegistrationErrorResponse' failedRemovedCmHandles: type: array items: $ref: '#/components/schemas/CmHandlerRegistrationErrorResponse' CmHandlerRegistrationErrorResponse: type: object properties: cmHandle: type: string example: my-cm-handle errorCode: type: string example: "00" errorText: type: string example: Unknown error. CmHandleQueryParameters: title: Cm Handle query parameters for executing cm handle search type: object properties: cmHandleQueryParameters: type: array items: $ref: '#/components/schemas/ConditionProperties' conditions: type: array description: "not necessary, it is just for backward compatibility" deprecated: true items: $ref: '#/components/schemas/OldConditionProperties' ConditionProperties: properties: conditionName: type: string conditionParameters: type: array items: type: object additionalProperties: type: string OldConditionProperties: properties: name: type: string conditionParameters: type: array items: $ref: '#/components/schemas/ModuleNameAsJsonObject' deprecated: true ModuleNameAsJsonObject: properties: moduleName: type: string example: my-module securitySchemes: basicAuth: type: http scheme: basic