diff options
Diffstat (limited to 'openapi')
-rw-r--r-- | openapi/components.yml | 324 | ||||
-rw-r--r-- | openapi/openapi-datajob.yml | 254 | ||||
-rw-r--r-- | openapi/openapi.yml | 177 |
3 files changed, 0 insertions, 755 deletions
diff --git a/openapi/components.yml b/openapi/components.yml deleted file mode 100644 index 4a6d1729..00000000 --- a/openapi/components.yml +++ /dev/null @@ -1,324 +0,0 @@ -# ============LICENSE_START======================================================= -# Copyright (C) 2021-2023 Nordix Foundation -# Modifications Copyright (C) 2022 Bell Canada -# ================================================================================ -# 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========================================================= - -components: - securitySchemes: - basicAuth: - type: http - scheme: basic - schemas: - ErrorMessage: - type: object - title: Error - properties: - status: - type: string - message: - type: string - details: - type: string - - CmHandles: - type: object - properties: - cmHandles: - type: array - example: ["cmHandleId1","cmHandleId2","cmHandleId3"] - items: - type: string - - ModuleReferencesRequest: - type: object - properties: - moduleSetTag: - type: string - cmHandleProperties: - $ref: '#/components/schemas/cmHandleProperties' - - ResourceDataOperationRequests: - type: array - items: - type: object - title: 'DataOperationRequest' - properties: - operation: - type: string - example: 'read' - operationId: - description: 'it is recommended that the operationId is unique within the scope of the request' - type: string - example: '12' - datastore: - type: string - example: 'ncmp-datastore:passthrough-operational' - options: - type: string - example: 'some option' - resourceIdentifier: - type: string - example: 'some resource identifier' - cmHandles: - type: array - items: - $ref: '#/components/schemas/dmiOperationCmHandle' - required: - - operation - - operationId - - datastore - - cmHandles - - dmiOperationCmHandle: - type: object - title: 'CmHandle with properties for DMI' - properties: - id: - type: string - cmHandleProperties: - additionalProperties: - type: string - moduleSetTag: - type: string - example: module-set-tag1 - example: - id: cmHandle123 - cmHandleProperties: - myProp: some value - otherProp: other value - moduleSetTag: module-set-tag1 - - ModuleResourcesReadRequest: - type: object - properties: - moduleSetTag: - type: string - description: Module set tag of the given cm handle - example: Module-set-tag-1 - required: false - data: - type: object - properties: - modules: - type: array - items: - type: object - properties: - name: - type: string - example: my-name - revision: - type: string - example: my-revision - cmHandleProperties: - $ref: '#/components/schemas/cmHandleProperties' - - ModuleSet: - type: object - properties: - schemas: - type: array - items: - type: object - properties: - moduleName: - type: string - example: my-module-name - revision: - type: string - example: my-revision - namespace: - type: string - example: my-namespace - - YangResources: - type: array - items: - $ref: '#/components/schemas/YangResource' - - YangResource: - properties: - yangSource: - type: string - example: my-yang-source - moduleName: - type: string - example: my-module-name - revision: - type: string - example: my-revision - - DataAccessRequest: - type: object - properties: - operation: - type: string - enum: [ read, create, update, patch, delete ] - example: read - dataType: - type: string - example: my-data-type - data: - type: string - example: my-data - cmHandleProperties: - $ref: '#/components/schemas/cmHandleProperties' - requestId: - type: string - example: 3a9ce55c-e365-4dc9-8da3-a06f07cbc6d7 - moduleSetTag: - type: string - example: module-set-tag1 - - cmHandleProperties: - type: object - nullable: true - additionalProperties: - type: string - example: {"prop1":"value1","prop2":"value2"} - - responses: - NoContent: - description: No Content - content: {} - - BadRequest: - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorMessage' - example: - status: 400 - message: Bad Request - details: The provided request is not valid - - NotFound: - description: The specified resource was not found - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorMessage' - example: - status: 404 - message: Resource Not Found - details: The requested resource is not found - - ServerError: - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorMessage' - example: - status: 500 - message: Internal Server Error - details: Internal Server Error occured - - NotImplemented: - description: Not Implemented - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorMessage' - example: - status: 501 - message: Not Implemented - details: Method Not Implemented - - parameters: - cmHandleInPath: - 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 - example: my-cm-handle - - resourceIdentifierInQuery: - name: resourceIdentifier - in: query - description: Resource identifier to get/set the resource data - required: true - schema: - type: string - example: my-schema:my-node - - optionsParamInQuery: - name: options - in: query - description: options parameter in query, it is mandatory to wrap key(s)=value(s) in parenthesis'()'. - required: false - 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) - - topicParamInQuery: - name: topic - in: query - description: topic name passed from client(NCMP). - required: false - schema: - type: string - examples: - sample1: - value: my-topic-name - - requiredTopicParamInQuery: - name: topic - in: query - description: mandatory topic name passed from client(NCMP). - required: true - schema: - type: string - examples: - sample1: - value: - topic: my-topic-name - - requiredRequestIdParamInQuery: - name: requestId - in: query - description: request Id generated by NCMP and sent as an acknowledgement for the client request the same including here. - required: true - schema: - type: string - examples: - sample1: - value: 4753fc1f-7de2-449a-b306-a6204b5370b3 - - datastoreName: - name: datastore-name - in: path - description: The type of the requested data - required: true - schema: - type: string - example: ncmp-datastore:passthrough-operational or ncmp-datastore:passthrough-running - -security: - - basicAuth: [] diff --git a/openapi/openapi-datajob.yml b/openapi/openapi-datajob.yml deleted file mode 100644 index 989218d9..00000000 --- a/openapi/openapi-datajob.yml +++ /dev/null @@ -1,254 +0,0 @@ -# ============LICENSE_START======================================================= -# Copyright (C) 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========================================================= - -openapi: 3.0.3 -info: - title: NCMP Data Subjob API - description: Support datajobs through one or more subjob for each DMI and Data Producer Identifier combination - version: 1.0.0 -servers: - - url: /dmi -tags: - - description: DMI plugin rest apis - name: dmi-datajob -paths: - /v1/readJob/{requestId}: - post: - description: Create a read request - operationId: readDataJob - parameters: - - $ref: '#/components/parameters/requestIdInPath' - requestBody: - description: Operation body - content: - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/SubjobReadRequest' - tags: - - dmi-datajob - responses: - "501": - $ref: '#/components/responses/NotImplemented' - /v1/writeJob/{requestId}: - post: - description: Create a write request - operationId: writeDataJob - parameters: - - $ref: '#/components/parameters/requestIdInPath' - requestBody: - description: Operation body - content: - application/3gpp-json-patch+json: - schema: - $ref: '#/components/schemas/SubjobWriteRequest' - tags: - - dmi-datajob - responses: - "501": - $ref: '#/components/responses/NotImplemented' - -components: - parameters: - requestIdInPath: - description: Identifier for the overall Datajob - in: path - name: requestId - required: true - schema: - example: some-identifier - type: string - schemas: - ErrorMessage: - type: object - title: Error - properties: - status: - type: string - message: - type: string - details: - type: string - SubjobReadRequest: - type: object - required: - - dataProducerId - - data - properties: - dataAcceptType: - description: Defines the data response accept type - example: application/vnd.3gpp.object-tree-hierarchical+json - type: string - dataContentType: - description: Defines the data request content type - example: application/3gpp-json-patch+json - type: string - dataProducerId: - description: ID of the producer registered by DMI for the paths in the operations in this request - example: my-data-producer-identifier - type: string - data: - example: - op: read - operationId: 1 - path: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=2 - attributes: userLabel - scope: - scopeTyp: BASE_ONLY - type: array - items: - type: object - required: - - path - - op - properties: - path: - description: Defines the resource on which operation is executed - example: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003 - type: string - op: - description: Describes the operation to execute - example: read - type: string - operationId: - description: Unique identifier for the operation within the request - example: 1 - type: string - attributes: - description: This parameter specifies the attributes of the scoped resources that are returned - type: array - items: - example: cellId - type: string - fields: - description: This parameter specifies the attribute fields of the scoped resources that are returned - type: array - items: - type: string - filter: - description: This parameter is used to filter the scoped Managed Objects. Only Managed Objects passing the filter criteria will be fetched - example: NRCellDU/attributes/administrativeState==LOCKED - type: string - scopeType: - description: ScopeType selects MOs depending on relationships with Base Managed Object - example: BASE_ONLY - type: string - scopeLevel: - description: Only used when the scope type is BASE_NTH_LEVEL to specify amount of levels to search - example: 0 - type: integer - moduleSetTag: - description: Module set identifier - example: my-module-set-tag - type: string - cmHandleProperties: - description: Private properties of the cm handle for the given path - $ref: '#/components/schemas/CmHandleProperties' - SubjobWriteRequest: - type: object - required: - - dataProducerId - - data - properties: - dataAcceptType: - description: Defines the data response accept type - example: application/vnd.3gpp.object-tree-hierarchical+json - type: string - dataContentType: - description: Defines the data request content type - example: application/3gpp-json-patch+json - type: string - dataProducerId: - description: ID of the producer registered by DMI for the paths in the operations in this request - example: my-data-producer-identifier - type: string - data: - example: - op: add - path: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=12 - value: - id: 12 - attributes: - userLabel: label12 - type: array - items: - type: object - required: - - path - - op - properties: - path: - description: Defines the resource on which operation is executed - example: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003 - type: string - op: - description: Describes the operation to execute - example: add - type: string - operationId: - description: Unique identifier for the operation within the request - example: 1 - type: string - moduleSetTag: - description: Module set identifier - example: my-module-set-tag - type: string - cmHandleProperties: - description: Private properties of the cm handle for the given path - $ref: '#/components/schemas/CmHandleProperties' - value: - description: Value dependent on the op specified. Resource for an add. Object for a replace. ActionParameters for an action. - type: object - oneOf: - - $ref: '#/components/schemas/Resource' - - $ref: '#/components/schemas/ActionParameters' - - $ref: '#/components/schemas/Object' - CmHandleProperties: - description: Private properties of the cm handle for the given path - type: object - Resource: - type: object - properties: - id: - description: Identifier of the resource object - example: resource-identifier - type: string - attributes: - description: Key value map representing the objects class attributes and values - type: object - additionalProperties: - example: 'userLabel: label11' - type: string - ActionParameters: - description: The input of the action in the form of key value pairs - type: object - additionalProperties: - type: string - Object: - type: object - responses: - NotImplemented: - description: Not Implemented - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorMessage' - example: - status: 501 - message: Not Implemented - details: Method Not Implemented - diff --git a/openapi/openapi.yml b/openapi/openapi.yml deleted file mode 100644 index 6dbc19f3..00000000 --- a/openapi/openapi.yml +++ /dev/null @@ -1,177 +0,0 @@ -# ============LICENSE_START======================================================= -# Copyright (C) 2021-2023 Nordix Foundation -# Modifications Copyright (C) 2022 Bell Canada -# ================================================================================ -# 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========================================================= - -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: - - $ref: 'components.yml#/components/parameters/cmHandleInPath' - requestBody: - description: Operational body - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/ModuleReferencesRequest' - responses: - '200': - description: OK - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/ModuleSet' - '404': - $ref: 'components.yml#/components/responses/NotFound' - '500': - $ref: 'components.yml#/components/responses/ServerError' - - - /v1/ch/{cmHandle}/moduleResources: - post: - description: Retrieve module resources for one or more modules - tags: - - dmi-plugin - summary: Retrieve module resources - operationId: retrieveModuleResources - parameters: - - $ref: 'components.yml#/components/parameters/cmHandleInPath' - requestBody: - required: true - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/ModuleResourcesReadRequest' - responses: - '200': - description: OK - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/YangResources' - '404': - $ref: 'components.yml#/components/responses/NotFound' - '500': - $ref: 'components.yml#/components/responses/ServerError' - - /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) - x-api-audience: component-internal - operationId: registerCmHandles - requestBody: - description: list of cm handles - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/CmHandles' - required: true - responses: - '201': - description: Created - content: - text/plain: - schema: - type: string - example: cm-handle registered successfully - '400': - $ref: 'components.yml#/components/responses/BadRequest' - '500': - $ref: 'components.yml#/components/responses/ServerError' - - /v1/ch/{cmHandle}/data/ds/{datastore-name}: - post: - tags: - - dmi-plugin - summary: Get resource data from passthrough operational or running for a cm handle - description: Get resource data from passthrough operational or running for a cm handle - operationId: dataAccessPassthrough - parameters: - - $ref: 'components.yml#/components/parameters/datastoreName' - - $ref: 'components.yml#/components/parameters/cmHandleInPath' - - $ref: 'components.yml#/components/parameters/resourceIdentifierInQuery' - - $ref: 'components.yml#/components/parameters/optionsParamInQuery' - - $ref: 'components.yml#/components/parameters/topicParamInQuery' - requestBody: - description: Contains collection of cm handles with it's private properties and requestId - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/DataAccessRequest' - responses: - '200': - description: OK - content: - application/json: - schema: - type: object - example: - - yangSource: my-yang-source - moduleName: my-module-name - revision: my-revision - '400': - $ref: 'components.yml#/components/responses/BadRequest' - '500': - $ref: 'components.yml#/components/responses/ServerError' - - /v1/data: - post: - tags: - - dmi-plugin - summary: Execute a data operation for group of cm handle ids. - description: Execute a data operation for group of cm handle ids by supplied operation details - operationId: getResourceDataForCmHandleDataOperation - parameters: - - $ref: 'components.yml#/components/parameters/requiredTopicParamInQuery' - - $ref: 'components.yml#/components/parameters/requiredRequestIdParamInQuery' - requestBody: - description: list of operation details - content: - application/json: - schema: - $ref: 'components.yml#/components/schemas/ResourceDataOperationRequests' - responses: - '202': - description: Accepted - '400': - $ref: 'components.yml#/components/responses/BadRequest' - '500': - $ref: 'components.yml#/components/responses/ServerError' - '501': - $ref: 'components.yml#/components/responses/NotImplemented'
\ No newline at end of file |