summaryrefslogtreecommitdiffstats
path: root/docs/api/swagger/openapi.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'docs/api/swagger/openapi.yaml')
-rw-r--r--docs/api/swagger/openapi.yaml409
1 files changed, 409 insertions, 0 deletions
diff --git a/docs/api/swagger/openapi.yaml b/docs/api/swagger/openapi.yaml
new file mode 100644
index 00000000..54676fe5
--- /dev/null
+++ b/docs/api/swagger/openapi.yaml
@@ -0,0 +1,409 @@
+openapi: 3.0.1
+info:
+ title: NCMP DMI Plugin
+ description: Adds Data Model Inventory Registry capability for ONAP
+ version: 1.0.0
+servers:
+- url: /dmi
+tags:
+- name: dmi-plugin-internal
+ description: DMI plugin internal rest apis
+- name: dmi-plugin
+ description: DMI plugin rest apis
+paths:
+ /v1/ch/{cmHandle}/modules:
+ post:
+ tags:
+ - dmi-plugin
+ summary: Get all modules for cm handle
+ description: Get all modules for given cm handle
+ operationId: getModuleReferences
+ parameters:
+ - name: cmHandle
+ in: path
+ description: The cm handle to fetch all the modules
+ required: true
+ style: simple
+ explode: false
+ schema:
+ type: string
+ requestBody:
+ description: Operational body
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ModuleReferencesRequest'
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ModuleSet'
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ /v1/ch/{cmHandle}/moduleResources:
+ post:
+ tags:
+ - dmi-plugin
+ summary: Retrieve module resources
+ description: Retrieve module resources for one or more modules
+ operationId: retrieveModuleResources
+ parameters:
+ - name: cmHandle
+ in: path
+ description: The identifier for a network function, network element, subnetwork,
+ or any other cm object by managed Network CM Proxy
+ required: true
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ModuleResourcesReadRequest'
+ required: true
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/YangResources'
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ /v1/inventory/cmHandles:
+ post:
+ tags:
+ - dmi-plugin-internal
+ summary: register given list of cm handles (internal use only)
+ description: register given list of cm handles (internal use only)
+ operationId: registerCmHandles
+ requestBody:
+ description: list of cm handles
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CmHandles'
+ required: true
+ responses:
+ "201":
+ description: Created
+ content:
+ text/plain:
+ schema:
+ type: string
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ x-api-audience: component-internal
+ /v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-operational:
+ post:
+ tags:
+ - dmi-plugin
+ summary: Get resource data from passthrough-operational for cm handle
+ description: Get resource data from passthrough-operational for cm handle. Will
+ support read operations only.
+ operationId: dataAccessPassthroughOperational
+ parameters:
+ - name: cmHandle
+ in: path
+ description: The identifier for a network function, network element, subnetwork,
+ or any other cm object by managed Network CM Proxy
+ required: true
+ schema:
+ type: string
+ - name: resourceIdentifier
+ in: query
+ description: Resource identifier to get/set the resource data
+ required: true
+ allowReserved: true
+ schema:
+ type: string
+ - name: accept
+ in: header
+ description: Accept parameter for response, if accept parameter is null, that
+ means client can accept any format.
+ schema:
+ type: string
+ enum:
+ - application/json
+ - application/yang-data+json
+ - name: options
+ in: query
+ description: options parameter in query, it is mandatory to wrap key(s)=value(s)
+ in parenthesis'()'.
+ required: false
+ allowReserved: true
+ schema:
+ type: string
+ examples:
+ sample1:
+ value:
+ options: (key1=value1,key2=value2)
+ sample2:
+ value:
+ options: (key1=value1,key2=value1/value2)
+ sample3:
+ value:
+ options: (key1=10,key2=value2,key3=[val31,val32])
+ requestBody:
+ description: Operational body
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/DataAccessRequest'
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ type: object
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ /v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-running:
+ post:
+ tags:
+ - dmi-plugin
+ summary: Get, Create or Update request for data passthrough-running for a cm-handle
+ description: Post request to Get, Create or to Update resource data for a cm-handle.
+ Since all requests need to include additional information in a request body
+ HTTP Post is used for all use cases and the actual operation is defined in
+ the request body instead.
+ operationId: dataAccessPassthroughRunning
+ parameters:
+ - name: cmHandle
+ in: path
+ description: The identifier for a network function, network element, subnetwork,
+ or any other cm object by managed Network CM Proxy
+ required: true
+ schema:
+ type: string
+ - name: resourceIdentifier
+ in: query
+ description: Resource identifier to get/set the resource data
+ required: true
+ allowReserved: true
+ schema:
+ type: string
+ - name: accept
+ in: header
+ description: Accept parameter for response, if accept parameter is null, that
+ means client can accept any format.
+ schema:
+ type: string
+ enum:
+ - application/json
+ - application/yang-data+json
+ - name: options
+ in: query
+ description: options parameter in query, it is mandatory to wrap key(s)=value(s)
+ in parenthesis'()'.
+ required: false
+ allowReserved: true
+ schema:
+ type: string
+ examples:
+ sample1:
+ value:
+ options: (key1=value1,key2=value2)
+ sample2:
+ value:
+ options: (key1=value1,key2=value1/value2)
+ sample3:
+ value:
+ options: (key1=10,key2=value2,key3=[val31,val32])
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/DataAccessRequest'
+ responses:
+ "201":
+ description: Created
+ content:
+ text/plain:
+ schema:
+ type: string
+ "400":
+ description: Bad Request
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "401":
+ description: Unauthorized
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ "403":
+ description: Forbidden
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+components:
+ schemas:
+ ModuleReferencesRequest:
+ type: object
+ properties:
+ cmHandleProperties:
+ $ref: '#/components/schemas/cmHandleProperties'
+ cmHandleProperties:
+ type: object
+ additionalProperties:
+ type: string
+ example: '{"prop1":"value1","prop2":"value2"}'
+ ModuleSet:
+ type: object
+ properties:
+ schemas:
+ type: array
+ items:
+ $ref: '#/components/schemas/ModuleSet_schemas'
+ revision:
+ type: string
+ example: someRevision
+ ErrorMessage:
+ title: Error
+ type: object
+ properties:
+ status:
+ type: string
+ message:
+ type: string
+ details:
+ type: string
+ ModuleResourcesReadRequest:
+ type: object
+ properties:
+ data:
+ $ref: '#/components/schemas/ModuleResourcesReadRequest_data'
+ cmHandleProperties:
+ $ref: '#/components/schemas/cmHandleProperties'
+ name:
+ type: string
+ example: someName
+ YangResources:
+ type: array
+ items:
+ $ref: '#/components/schemas/YangResource'
+ YangResource:
+ properties:
+ yangSource:
+ type: string
+ moduleName:
+ type: string
+ revision:
+ $ref: '#/components/schemas/revision'
+ CmHandles:
+ type: object
+ properties:
+ cmHandles:
+ type: array
+ items:
+ type: string
+ DataAccessRequest:
+ type: object
+ properties:
+ operation:
+ type: string
+ enum:
+ - read
+ - create
+ - update
+ - delete
+ dataType:
+ type: string
+ data:
+ type: string
+ cmHandleProperties:
+ $ref: '#/components/schemas/cmHandleProperties'
+ ModuleSet_schemas:
+ type: object
+ properties:
+ moduleName:
+ type: string
+ revision:
+ $ref: '#/components/schemas/revision'
+ namespace:
+ type: string
+ ModuleResourcesReadRequest_data_modules:
+ type: object
+ properties:
+ name:
+ $ref: '#/components/schemas/name'
+ revision:
+ $ref: '#/components/schemas/revision'
+ ModuleResourcesReadRequest_data:
+ type: object
+ properties:
+ modules:
+ type: array
+ items:
+ $ref: '#/components/schemas/ModuleResourcesReadRequest_data_modules'