# ============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 50 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 cm handle query search Read the Docs.
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 CPS Path Read the Docs. 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 cm handle query search Read the Docs.
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 CPS Path Read the Docs. 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'