openapi: 3.0.3 info: description: NCMP to CPS Proxy API title: NCMP to CPS Proxy API version: "1.0" servers: - url: /ncmp security: - basicAuth: [] paths: /v1/ch/{cm-handle}/data/ds/{datastore-name}: delete: description: Delete resource data from pass-through running for a given cm handle operationId: deleteResourceDataRunningForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string - description: "Content parameter for request, if content parameter is null,\ \ default value is application/json." in: header name: Content-Type required: false schema: default: application/json example: application/yang-data+json type: string - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string responses: "204": content: {} description: No Content "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "404": content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Delete resource data tags: - network-cm-proxy get: description: Get resource data for given cm handle operationId: getResourceDataForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string - allowReserved: true description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\ \ in parenthesis'()'. The format of options parameter depend on the associated\ \ DMI Plugin implementation." examples: sample 1: value: options: (depth=3) sample 2: value: options: (fields=book) sample 3: value: options: "(depth=2,fields=book/authors)" in: query name: options required: false schema: type: string - allowReserved: true description: topic parameter in query. examples: sample 1: value: topic: my-topic-name in: query name: topic required: false schema: type: string - description: Determines if descendants are included in response in: query name: include-descendants required: false schema: default: false type: boolean - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string responses: "200": content: application/json: examples: dataSampleResponse: $ref: '#/components/examples/dataSampleResponse' value: null schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Get resource data for cm handle tags: - network-cm-proxy patch: description: Patch resource data from pass-through running for the given cm handle operationId: patchResourceDataRunningForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string - description: "Content parameter for request, if content parameter is null,\ \ default value is application/json." in: header name: Content-Type required: false schema: default: application/json example: application/yang-data+json type: string - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string requestBody: content: '*/*': examples: dataSampleRequest: $ref: '#/components/examples/dataSamplePatchRequest' value: null schema: type: object required: true responses: "200": content: application/json: schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Patch resource data from pass-through running tags: - network-cm-proxy post: description: create resource data from pass-through running for given cm handle operationId: createResourceDataRunningForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string - description: "Content parameter for request, if content parameter is null,\ \ default value is application/json." in: header name: Content-Type required: false schema: default: application/json example: application/yang-data+json type: string - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string requestBody: content: application/json: examples: dataSampleRequest: $ref: '#/components/examples/dataSampleRequest' value: null schema: type: object application/yang-data+json: examples: dataSampleRequest: $ref: '#/components/examples/dataSampleRequest' value: null schema: type: object required: true responses: "201": content: {} description: Created "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: create resource data from pass-through running for cm handle tags: - network-cm-proxy put: description: Update resource data from pass-through running for the given cm handle operationId: updateResourceDataRunningForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string - description: "Content parameter for request, if content parameter is null,\ \ default value is application/json." in: header name: Content-Type required: false schema: default: application/json example: application/yang-data+json type: string - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string requestBody: content: application/json: examples: dataSampleRequest: $ref: '#/components/examples/dataSampleRequest' value: null schema: type: object application/yang-data+json: examples: dataSampleRequest: $ref: '#/components/examples/dataSampleRequest' value: null schema: type: object required: true responses: "200": content: application/json: schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Update resource data from pass-through running for a cm handle tags: - network-cm-proxy /v1/data: post: 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. operationId: executeDataOperationForCmHandles parameters: - allowReserved: true description: mandatory topic parameter in query. examples: sample 1: value: topic: my-topic-name in: query name: topic required: true schema: type: string - description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DataOperationRequest' required: true responses: "200": content: application/json: schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Execute a data operation for group of cm handle ids tags: - network-cm-proxy /v1/ch/{cm-handle}/data/ds/{datastore-name}/query: get: description: Query resource data for a given cm handle operationId: queryResourceDataForCmHandle parameters: - description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - description: "For more details on cps path, please refer https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html" examples: container cps path: value: //bookstore list attributes cps path: value: "//categories[@code=1]" in: query name: cps-path required: false schema: default: / type: string - allowReserved: true description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\ \ in parenthesis'()'. The format of options parameter depend on the associated\ \ DMI Plugin implementation." examples: sample 1: value: options: (depth=3) sample 2: value: options: (fields=book) sample 3: value: options: "(depth=2,fields=book/authors)" in: query name: options required: false schema: type: string - allowReserved: true description: topic parameter in query. examples: sample 1: value: topic: my-topic-name in: query name: topic required: false schema: type: string - description: Determines if descendants are included in response in: query name: include-descendants required: false schema: default: false type: boolean responses: "200": content: application/json: examples: dataSampleResponse: $ref: '#/components/examples/dataSampleResponse' value: null schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Query resource data for a given cm handle tags: - network-cm-proxy /v1/ch/{cm-handle}/modules: get: description: fetch all module references (name and revision) for a given cm handle operationId: getModuleReferencesByCmHandle parameters: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/RestModuleReference' type: array description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Fetch all module references (name and revision) for a given cm handle tags: - network-cm-proxy /v1/ch/{cm-handle}/modules/definitions: get: description: "Get module definitions (module name, revision, yang resource)\ \ with options to filter on module name and revision" operationId: getModuleDefinitions parameters: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - description: Filter for a module name.This is an optional parameter in: query name: module-name required: false schema: example: my-module type: string - description: Filter for a module revision.This is an optional parameter and ignored when no module name is supplied in: query name: revision required: false schema: example: 2024-01-22 type: string responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/RestModuleDefinition' type: array description: OK "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Get module definitions tags: - network-cm-proxy /v1/ch/searches: 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. operationId: searchCmHandles requestBody: content: application/json: examples: Cm handle properties query: $ref: '#/components/examples/pubPropCmHandleQueryParameters' value: null Cm handle modules query: $ref: '#/components/examples/modulesCmHandleQueryParameters' value: null All cm handle query parameters: $ref: '#/components/examples/allCmHandleQueryParameters' value: null Cm handle with CPS path state query: $ref: '#/components/examples/cpsPathCmHandleStateQueryParameters' value: null Cm handle with data sync flag query: $ref: '#/components/examples/cpsPathCmHandleDataSyncQueryParameters' value: null schema: $ref: '#/components/schemas/CmHandleQueryParameters' required: true responses: "200": content: application/json: schema: items: $ref: '#/components/schemas/RestOutputCmHandle' type: array description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Execute cm handle search using the available conditions tags: - network-cm-proxy /v1/ch/{cm-handle}: get: description: Retrieve CM handle details and properties by cm handle id operationId: retrieveCmHandleDetailsById parameters: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RestOutputCmHandle' description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "404": content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Retrieve CM handle details tags: - network-cm-proxy /v1/ch/{cm-handle}/properties: get: description: Get CM handle properties by cm handle id operationId: getCmHandlePublicPropertiesByCmHandleId parameters: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RestOutputCmHandlePublicProperties' description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "404": content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Get CM handle properties tags: - network-cm-proxy /v1/ch/id-searches: 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. operationId: searchCmHandleIds requestBody: content: application/json: examples: Cm handle properties query: $ref: '#/components/examples/pubPropCmHandleQueryParameters' value: null Cm handle modules query: $ref: '#/components/examples/modulesCmHandleQueryParameters' value: null All cm handle query parameters: $ref: '#/components/examples/allCmHandleQueryParameters' value: null Cm handle with CPS path state query: $ref: '#/components/examples/cpsPathCmHandleStateQueryParameters' value: null Cm handle with data sync flag query: $ref: '#/components/examples/cpsPathCmHandleDataSyncQueryParameters' value: null schema: $ref: '#/components/schemas/CmHandleQueryParameters' required: true responses: "200": content: application/json: schema: items: type: string type: array description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "404": content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Execute cm handle query upon a given set of query parameters tags: - network-cm-proxy /v1/ch/{cm-handle}/state: get: description: Get CM handle state by cm handle id operationId: getCmHandleStateByCmHandleId parameters: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/RestOutputCmHandleCompositeState' description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "404": content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error summary: Get CM handle state tags: - network-cm-proxy /v1/ch/{cm-handle}/data-sync: put: 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: - description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string - description: Is used to enable or disable the data synchronization flag in: query name: dataSyncEnabled required: true schema: example: true type: boolean responses: "200": content: application/json: schema: type: object description: OK "400": content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request "403": content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden "500": content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error "502": content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway summary: Set the Data Sync Enabled Flag tags: - network-cm-proxy components: examples: dataSampleResponse: description: Sample response for selecting 'sample 1'. summary: Sample response value: bookstore: categories: - code: "01" books: - authors: - Iain M. Banks - Ursula K. Le Guin name: SciFi - code: "02" books: - authors: - Philip Pullman name: kids dataSampleRequest: description: Sample request body summary: Sample request value: test:bookstore: bookstore-name: Chapters categories: - code: "01" name: SciFi books: - authors: - Iain M. Banks - Ursula K. Le Guin - code: "02" name: kids books: - authors: - Philip Pullman dataSamplePatchRequest: description: Sample patch request body summary: Sample patch request value: ietf-restconf:yang-patch: patch-id: patch-1 edit: - edit-id: edit1 operation: merge target: / value: test:bookstore: bookstore-name: Chapters categories: - code: "01" name: Science books: - authors: - Author1 - Author2 - code: "02" name: Arts books: - authors: - Author3 - edit-id: edit2 operation: merge target: / value: test:bookstore: bookstore-name: Novels categories: - code: "03" name: History books: - authors: - Iain M. Banks - Ursula K. Le Guin - code: "04" name: Fiction books: - authors: - Philip Pullman pubPropCmHandleQueryParameters: value: cmHandleQueryParameters: - conditionName: hasAllProperties conditionParameters: - Color: yellow - Shape: circle - Size: small modulesCmHandleQueryParameters: value: cmHandleQueryParameters: - conditionName: hasAllModules conditionParameters: - moduleName: my-module-1 - moduleName: my-module-2 - moduleName: my-module-3 allCmHandleQueryParameters: value: cmHandleQueryParameters: - conditionName: hasAllModules conditionParameters: - moduleName: my-module-1 - moduleName: my-module-2 - moduleName: my-module-3 - conditionName: hasAllProperties conditionParameters: - Color: yellow - Shape: circle - Size: small - conditionName: cmHandleWithCpsPath conditionParameters: - cpsPath: "//state[@cm-handle-state='ADVISED']" cpsPathCmHandleStateQueryParameters: value: cmHandleQueryParameters: - conditionName: cmHandleWithCpsPath conditionParameters: - cpsPath: "//state[@cm-handle-state='LOCKED']" cpsPathCmHandleDataSyncQueryParameters: value: cmHandleQueryParameters: - conditionName: cmHandleWithCpsPath conditionParameters: - cpsPath: "//state[@data-sync-enabled='true']" parameters: datastoreName: description: The type of the requested data in: path name: datastore-name required: true schema: example: ncmp-datastore:running type: string cmHandleInPath: description: "The identifier for a network function, network element, subnetwork\ \ or any other cm object by managed Network CM Proxy" in: path name: cm-handle required: true schema: example: my-cm-handle type: string resourceIdentifierInQuery: allowReserved: true description: The format of resource identifier depend on the associated DMI Plugin implementation. For ONAP DMI Plugin it will be RESTConf paths but it can really be anything. examples: sample 1: value: resourceIdentifier: \shops\bookstore sample 2: value: resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]" sample 3: value: resourceIdentifier: "parent=shops,child=bookstore" in: query name: resourceIdentifier required: true schema: type: string optionsParamInQuery: allowReserved: true description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\ \ in parenthesis'()'. The format of options parameter depend on the associated\ \ DMI Plugin implementation." examples: sample 1: value: options: (depth=3) sample 2: value: options: (fields=book) sample 3: value: options: "(depth=2,fields=book/authors)" in: query name: options required: false schema: type: string topicParamInQuery: allowReserved: true description: topic parameter in query. examples: sample 1: value: topic: my-topic-name in: query name: topic required: false schema: type: string includeDescendantsOptionInQuery: description: Determines if descendants are included in response in: query name: include-descendants required: false schema: default: false type: boolean authorizationParamInHeader: description: Authorization parameter for request. in: header name: Authorization required: false schema: type: string contentParamInHeader: description: "Content parameter for request, if content parameter is null, default\ \ value is application/json." in: header name: Content-Type required: false schema: default: application/json example: application/yang-data+json type: string requiredTopicParamInQuery: allowReserved: true description: mandatory topic parameter in query. examples: sample 1: value: topic: my-topic-name in: query name: topic required: true schema: type: string cpsPathInQuery: description: "For more details on cps path, please refer https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html" examples: container cps path: value: //bookstore list attributes cps path: value: "//categories[@code=1]" in: query name: cps-path required: false schema: default: / type: string moduleNameInQuery: description: Filter for a module name.This is an optional parameter in: query name: module-name required: false schema: example: my-module type: string revisionInQuery: description: Filter for a module revision.This is an optional parameter and ignored when no module name is supplied in: query name: revision required: false schema: example: 2024-01-22 type: string dataSyncEnabled: description: Is used to enable or disable the data synchronization flag in: query name: dataSyncEnabled required: true schema: example: true type: boolean responses: BadRequest: content: application/json: example: status: 400 BAD_REQUEST message: Bad request error message details: Bad request error details schema: $ref: '#/components/schemas/ErrorMessage' description: Bad Request Forbidden: content: application/json: example: status: 403 message: Forbidden error message details: Forbidden error details schema: $ref: '#/components/schemas/ErrorMessage' description: Forbidden InternalServerError: content: application/json: example: status: 500 message: Internal Server Error details: Internal Server Error occurred schema: $ref: '#/components/schemas/ErrorMessage' description: Internal Server Error BadGateway: content: application/json: example: message: Bad Gateway Error Message NCMP dmi-response: http-code: 400 body: Bad Request schema: $ref: '#/components/schemas/DmiErrorMessage' description: Bad Gateway Ok: content: application/json: schema: type: object description: OK Created: content: {} description: Created NoContent: content: {} description: No Content NotFound: content: application/json: example: status: 400 message: Not found error message details: Not found error details schema: $ref: '#/components/schemas/ErrorMessage' description: The specified resource was not found schemas: ErrorMessage: properties: status: type: string message: type: string details: type: string title: Error type: object DmiErrorMessage: properties: message: example: Bad Gateway Error Message NCMP type: string dmi-response: $ref: '#/components/schemas/DmiErrorMessage_dmi_response' title: DMI Error Message type: object DataOperationRequest: example: operations: - resourceIdentifier: parent/child targetIds: - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" datastore: ncmp-datastore:passthrough-operational options: (fields=schemas/schema) operationId: "12" operation: read - resourceIdentifier: parent/child targetIds: - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" datastore: ncmp-datastore:passthrough-operational options: (fields=schemas/schema) operationId: "12" operation: read properties: operations: description: contains group of data operation requests items: $ref: '#/components/schemas/DataOperationDefinition' type: array title: execute data operation for given array of operations type: object DataOperationDefinition: example: resourceIdentifier: parent/child targetIds: - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" - "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" datastore: ncmp-datastore:passthrough-operational options: (fields=schemas/schema) operationId: "12" operation: read properties: operation: example: read type: string operationId: example: "12" type: string datastore: example: ncmp-datastore:passthrough-operational type: string options: example: (fields=schemas/schema) type: string resourceIdentifier: example: parent/child type: string targetIds: items: example: "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\ ]" type: string type: array required: - datastore - operation - operationId RestModuleReference: example: moduleName: my-module-name revision: my-module-revision properties: moduleName: example: my-module-name type: string revision: example: my-module-revision type: string title: Module reference details type: object RestModuleDefinition: example: moduleName: my-module-name content: | module stores { yang-version 1.1; namespace 'org:onap:ccsdk:sample'; prefix book-store; revision '2020-09-15' { description 'Sample Model'; } } revision: 2020-09-15 properties: moduleName: example: my-module-name type: string revision: example: 2020-09-15 type: string content: example: | module stores { yang-version 1.1; namespace 'org:onap:ccsdk:sample'; prefix book-store; revision '2020-09-15' { description 'Sample Model'; } } type: string title: Module definitions type: object CmHandleQueryParameters: example: cmHandleQueryParameters: - conditionParameters: - key: conditionParameters - key: conditionParameters conditionName: conditionName - conditionParameters: - key: conditionParameters - key: conditionParameters conditionName: conditionName conditions: - name: name conditionParameters: - moduleName: my-module - moduleName: my-module - name: name conditionParameters: - moduleName: my-module - moduleName: my-module properties: cmHandleQueryParameters: items: $ref: '#/components/schemas/ConditionProperties' type: array conditions: deprecated: true description: "not necessary, it is just for backward compatibility" items: $ref: '#/components/schemas/OldConditionProperties' type: array title: Cm Handle query parameters for executing cm handle search type: object ConditionProperties: example: conditionParameters: - key: conditionParameters - key: conditionParameters conditionName: conditionName properties: conditionName: type: string conditionParameters: items: additionalProperties: type: string type: object type: array OldConditionProperties: deprecated: true example: name: name conditionParameters: - moduleName: my-module - moduleName: my-module properties: name: type: string conditionParameters: items: $ref: '#/components/schemas/ModuleNameAsJsonObject' type: array ModuleNameAsJsonObject: example: moduleName: my-module properties: moduleName: example: my-module type: string RestOutputCmHandle: example: cmHandle: my-cm-handle1 alternateId: my-alternate-id dataProducerIdentifier: my-data-producer-identifier publicCmHandleProperties: - key: Book Type - key: Book Type state: dataSyncEnabled: false dataSyncState: running: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED operational: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED cmHandleState: ADVISED lockReason: reason: LOCKED_MISBEHAVING details: locked due to failure in module sync lastUpdateTime: 2022-12-31T20:30:40.000+0000 trustLevel: COMPLETE moduleSetTag: my-module-set-tag properties: cmHandle: example: my-cm-handle1 type: string publicCmHandleProperties: items: additionalProperties: example: Book Type type: string type: object type: array state: $ref: '#/components/schemas/CmHandleCompositeState' trustLevel: description: Current trust level of the relevant CM handle ID. example: COMPLETE type: string moduleSetTag: example: my-module-set-tag type: string alternateId: example: my-alternate-id type: string dataProducerIdentifier: example: my-data-producer-identifier type: string title: CM handle Details type: object CmHandlePublicProperties: items: additionalProperties: example: Book Type type: string type: object type: array CmHandleCompositeState: example: dataSyncEnabled: false dataSyncState: running: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED operational: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED cmHandleState: ADVISED lockReason: reason: LOCKED_MISBEHAVING details: locked due to failure in module sync lastUpdateTime: 2022-12-31T20:30:40.000+0000 properties: cmHandleState: example: ADVISED type: string lockReason: $ref: '#/components/schemas/lock-reason' lastUpdateTime: example: 2022-12-31T20:30:40.000+0000 type: string dataSyncEnabled: example: false type: boolean dataSyncState: $ref: '#/components/schemas/dataStores' type: object lock-reason: example: reason: LOCKED_MISBEHAVING details: locked due to failure in module sync properties: reason: example: LOCKED_MISBEHAVING type: string details: example: locked due to failure in module sync type: string type: object dataStores: example: running: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED operational: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED properties: operational: $ref: '#/components/schemas/sync-state' running: $ref: '#/components/schemas/sync-state' type: object sync-state: example: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED properties: syncState: example: NONE_REQUESTED type: string lastSyncTime: example: 2022-12-31T20:30:40.000+0000 type: string type: object CmHandleTrustLevel: description: Current trust level of the relevant CM handle ID. example: COMPLETE type: string RestOutputCmHandlePublicProperties: example: publicCmHandleProperties: - key: Book Type - key: Book Type properties: publicCmHandleProperties: items: additionalProperties: example: Book Type type: string type: object type: array type: object RestOutputCmHandleCompositeState: example: state: dataSyncEnabled: false dataSyncState: running: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED operational: lastSyncTime: 2022-12-31T20:30:40.000+0000 syncState: NONE_REQUESTED cmHandleState: ADVISED lockReason: reason: LOCKED_MISBEHAVING details: locked due to failure in module sync lastUpdateTime: 2022-12-31T20:30:40.000+0000 properties: state: $ref: '#/components/schemas/CmHandleCompositeState' type: object DmiErrorMessage_dmi_response: properties: http-code: example: 400 type: integer body: example: Bad Request type: string type: object securitySchemes: basicAuth: scheme: basic type: http