blob: 30896f606820dffcb9244d885ee06bc223bc3f1b [file] [log] [blame]
openapi: 3.0.1
info:
title: NCMP Inventory API
description: NCMP Inventory API
version: "1.0"
servers:
- url: /ncmpInventory
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:
"204":
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: 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