# ============LICENSE_START======================================================= # Copyright (C) 2021-2024 Nordix Foundation # Modifications Copyright (C) 2021 Pantheon.tech # Modifications Copyright (C) 2021-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========================================================= resourceDataForCmHandle: get: tags: - network-cm-proxy summary: Get resource data for cm handle description: Get resource data for given cm handle operationId: getResourceDataForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/optionsParamInQuery' - $ref: 'components.yaml#/components/parameters/topicParamInQuery' - $ref: 'components.yaml#/components/parameters/includeDescendantsOptionInQuery' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' responses: 200: description: OK content: application/json: schema: type: object examples: dataSampleResponse: $ref: 'components.yaml#/components/examples/dataSampleResponse' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' post: tags: - network-cm-proxy summary: create resource data from pass-through running for cm handle description: create resource data from pass-through running for given cm handle operationId: createResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/contentParamInHeader' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' requestBody: required: true content: application/json: schema: type: object examples: dataSampleRequest: $ref: 'components.yaml#/components/examples/dataSampleRequest' application/yang-data+json: schema: type: object examples: dataSampleRequest: $ref: 'components.yaml#/components/examples/dataSampleRequest' responses: 201: $ref: 'components.yaml#/components/responses/Created' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' put: tags: - network-cm-proxy summary: Update resource data from pass-through running for a cm handle description: Update resource data from pass-through running for the given cm handle operationId: updateResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/contentParamInHeader' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' requestBody: required: true content: application/json: schema: type: object examples: dataSampleRequest: $ref: 'components.yaml#/components/examples/dataSampleRequest' application/yang-data+json: schema: type: object examples: dataSampleRequest: $ref: 'components.yaml#/components/examples/dataSampleRequest' responses: 200: $ref: 'components.yaml#/components/responses/Ok' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' patch: tags: - network-cm-proxy summary: Patch resource data from pass-through running description: Patch resource data from pass-through running for the given cm handle operationId: patchResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/contentParamInHeader' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' requestBody: required: true content: '*/*': schema: type: object examples: dataSampleRequest: $ref: 'components.yaml#/components/examples/dataSamplePatchRequest' responses: 200: $ref: 'components.yaml#/components/responses/Ok' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' delete: tags: - network-cm-proxy summary: Delete resource data description: Delete resource data from pass-through running for a given cm handle operationId: deleteResourceDataRunningForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yaml#/components/parameters/contentParamInHeader' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' responses: 204: $ref: 'components.yaml#/components/responses/NoContent' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 404: $ref: 'components.yaml#/components/responses/NotFound' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' dataOperationForCmHandle: post: tags: - network-cm-proxy summary: Execute a data operation for group of cm handle ids description: This request will be handled asynchronously using messaging to the supplied topic. The rest response will be an acknowledge with a requestId to identify the relevant messages. A maximum of 200 cm handles per operation is supported. operationId: executeDataOperationForCmHandles parameters: - $ref: 'components.yaml#/components/parameters/requiredTopicParamInQuery' - $ref: 'components.yaml#/components/parameters/authorizationParamInHeader' requestBody: required: true content: application/json: schema: $ref: 'components.yaml#/components/schemas/DataOperationRequest' responses: 200: description: OK content: application/json: schema: type: object 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 413: $ref: 'components.yaml#/components/responses/PayloadTooLarge' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' queryResourceDataForCmHandle: get: tags: - network-cm-proxy summary: Query resource data for a given cm handle description: Query resource data for a given cm handle operationId: queryResourceDataForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/datastoreName' - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/cpsPathInQuery' - $ref: 'components.yaml#/components/parameters/optionsParamInQuery' - $ref: 'components.yaml#/components/parameters/topicParamInQuery' - $ref: 'components.yaml#/components/parameters/includeDescendantsOptionInQuery' responses: 200: description: OK content: application/json: schema: type: object examples: dataSampleResponse: $ref: 'components.yaml#/components/examples/dataSampleResponse' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway' fetchModuleReferencesByCmHandle: get: description: fetch all module references (name and revision) for a given cm handle tags: - network-cm-proxy summary: Fetch all module references (name and revision) for a given cm handle operationId: getModuleReferencesByCmHandle parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' responses: 200: description: OK content: application/json: schema: type: array items: $ref: 'components.yaml#/components/schemas/RestModuleReference' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' getModuleDefinitions: get: tags: - network-cm-proxy summary: Get module definitions description: Get module definitions (module name, revision, yang resource) with options to filter on module name and revision operationId: getModuleDefinitions parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/moduleNameInQuery' - $ref: 'components.yaml#/components/parameters/revisionInQuery' responses: 200: description: OK content: application/json: schema: type: array items: $ref: 'components.yaml#/components/schemas/RestModuleDefinition' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' searchCmHandles: post: description: Execute cm handle query search and return a list of cm handle details. Any number of conditions can be applied. To be included in the result a cm-handle must fulfill ALL the conditions. An empty collection will be returned in the case that the cm handle does not match a condition. For more on cm handle query search please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm handle query search Read the Docs</a>.<br/>By supplying a CPS Path it is possible to query on any data related to the cm handle. For more on CPS Path please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html">CPS Path Read the Docs</a>. The cm handle ancestor is automatically returned for this query. tags: - network-cm-proxy summary: Execute cm handle search using the available conditions operationId: searchCmHandles requestBody: required: true content: application/json: schema: $ref: 'components.yaml#/components/schemas/CmHandleQueryParameters' examples: Cm handle properties query: $ref: 'components.yaml#/components/examples/pubPropCmHandleQueryParameters' Cm handle modules query: $ref: 'components.yaml#/components/examples/modulesCmHandleQueryParameters' All cm handle query parameters: $ref: 'components.yaml#/components/examples/allCmHandleQueryParameters' Cm handle with CPS path state query: $ref: 'components.yaml#/components/examples/cpsPathCmHandleStateQueryParameters' Cm handle with data sync flag query: $ref: 'components.yaml#/components/examples/cpsPathCmHandleDataSyncQueryParameters' responses: 200: description: OK content: application/json: schema: type: array items: $ref: 'components.yaml#/components/schemas/RestOutputCmHandle' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' retrieveCmHandleDetailsById: get: description: Retrieve CM handle details and properties by cm handle id tags: - network-cm-proxy summary: Retrieve CM handle details operationId: retrieveCmHandleDetailsById parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' responses: 200: description: OK content: application/json: schema: $ref: 'components.yaml#/components/schemas/RestOutputCmHandle' 400: $ref: 'components.yaml#/components/responses/BadRequest' 404: $ref: 'components.yaml#/components/responses/NotFound' 500: $ref: 'components.yaml#/components/responses/InternalServerError' getCmHandlePropertiesById: get: description: Get CM handle properties by cm handle id tags: - network-cm-proxy summary: Get CM handle properties operationId: getCmHandlePublicPropertiesByCmHandleId parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' responses: 200: description: OK content: application/json: schema: $ref: 'components.yaml#/components/schemas/RestOutputCmHandlePublicProperties' 400: $ref: 'components.yaml#/components/responses/BadRequest' 404: $ref: 'components.yaml#/components/responses/NotFound' 500: $ref: 'components.yaml#/components/responses/InternalServerError' getCmHandleStateById: get: description: Get CM handle state by cm handle id tags: - network-cm-proxy summary: Get CM handle state operationId: getCmHandleStateByCmHandleId parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' responses: 200: description: OK content: application/json: schema: $ref: 'components.yaml#/components/schemas/RestOutputCmHandleCompositeState' 400: $ref: 'components.yaml#/components/responses/BadRequest' 404: $ref: 'components.yaml#/components/responses/NotFound' 500: $ref: 'components.yaml#/components/responses/InternalServerError' searchCmHandleIds: post: description: Execute cm handle query search and return a list of cm handle ids. Any number of conditions can be applied. To be included in the result a cm-handle must fulfill ALL the conditions. An empty collection will be returned in the case that the cm handle does not match a condition. For more on cm handle query search please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm handle query search Read the Docs</a>.<br/>By supplying a CPS Path it is possible to query on any data related to the cm handle. For more on CPS Path please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html">CPS Path Read the Docs</a>. The cm handle ancestor is automatically returned for this query. tags: - network-cm-proxy summary: Execute cm handle query upon a given set of query parameters operationId: searchCmHandleIds requestBody: required: true content: application/json: schema: $ref: 'components.yaml#/components/schemas/CmHandleQueryParameters' examples: Cm handle properties query: $ref: 'components.yaml#/components/examples/pubPropCmHandleQueryParameters' Cm handle modules query: $ref: 'components.yaml#/components/examples/modulesCmHandleQueryParameters' All cm handle query parameters: $ref: 'components.yaml#/components/examples/allCmHandleQueryParameters' Cm handle with CPS path state query: $ref: 'components.yaml#/components/examples/cpsPathCmHandleStateQueryParameters' Cm handle with data sync flag query: $ref: 'components.yaml#/components/examples/cpsPathCmHandleDataSyncQueryParameters' responses: 200: description: OK content: application/json: schema: type: array items: type: string 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 404: $ref: 'components.yaml#/components/responses/NotFound' 500: $ref: 'components.yaml#/components/responses/InternalServerError' setDataSyncEnabledFlag: put: tags: - network-cm-proxy summary: Set the Data Sync Enabled Flag description: Set the data sync enabled flag to true or false for a specified Cm-Handle. This will in turn set the data sync state to UNSYNCHRONIZED and NONE_REQUESTED respectfully. operationId: setDataSyncEnabledFlagForCmHandle parameters: - $ref: 'components.yaml#/components/parameters/cmHandleInPath' - $ref: 'components.yaml#/components/parameters/dataSyncEnabled' responses: 200: $ref: 'components.yaml#/components/responses/Ok' 400: $ref: 'components.yaml#/components/responses/BadRequest' 403: $ref: 'components.yaml#/components/responses/Forbidden' 500: $ref: 'components.yaml#/components/responses/InternalServerError' 502: $ref: 'components.yaml#/components/responses/BadGateway'