-openapi: 3.0.1
+openapi: 3.0.3
info:
- title: NCMP to CPS Proxy API
description: NCMP to CPS Proxy API
+ title: NCMP to CPS Proxy API
version: "1.0"
servers:
- - url: /ncmp
+- url: /ncmp
security:
- - basicAuth: []
+- basicAuth: []
paths:
/v1/ch/{cm-handle}/data/ds/{datastore-name}:
- get:
+ 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
+ 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
+ "401":
+ content:
+ application/json:
+ example:
+ status: 401
+ message: Unauthorized error message
+ details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
+ "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
- summary: Get resource data for cm handle
+ - network-cm-proxy
+ get:
description: Get resource data for given cm handle
operationId: getResourceDataForCmHandle
parameters:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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"
- required: true
- schema:
- type: string
- example: my-cm-handle
- - name: resourceIdentifier
- in: query
- 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.
- required: true
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
- - name: options
- in: query
- description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\
+ 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."
- required: false
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- options: (depth=3)
- sample 2:
- value:
- options: (fields=book)
- sample 3:
- value:
- options: "(depth=2,fields=book/authors)"
- - name: topic
- in: query
- description: topic parameter in query.
- required: false
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- topic: my-topic-name
- - name: include-descendants
- in: query
- description: Determines if descendants are included in response
- required: false
- schema:
- type: boolean
- default: false
+ 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":
- description: OK
content:
application/json:
- schema:
- type: object
examples:
dataSampleResponse:
$ref: '#/components/examples/dataSampleResponse'
+ value: null
+ schema:
+ type: object
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
example:
message: Bad Gateway Error Message NCMP
dmi-response:
http-code: 400
body: Bad Request
- put:
+ schema:
+ $ref: '#/components/schemas/DmiErrorMessage'
+ description: Bad Gateway
+ summary: Get resource data for cm handle
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
+ - network-cm-proxy
+ patch:
+ description: Patch resource data from pass-through running for the given cm
handle
- operationId: updateResourceDataRunningForCmHandle
+ operationId: patchResourceDataRunningForCmHandle
parameters:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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"
- required: true
- schema:
- type: string
- example: my-cm-handle
- - name: resourceIdentifier
- in: query
- 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.
- required: true
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
- - name: Content-Type
- in: header
- description: "Content parameter for request, if content parameter is null,\
+ 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."
- required: false
- schema:
- type: string
- example: application/yang-data+json
- default: application/json
+ in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/json
+ example: application/yang-data+json
+ type: string
requestBody:
content:
- application/json:
- schema:
- type: object
+ '*/*':
examples:
dataSampleRequest:
- $ref: '#/components/examples/dataSampleRequest'
- application/yang-data+json:
+ $ref: '#/components/examples/dataSamplePatchRequest'
+ value: null
schema:
type: object
- examples:
- dataSampleRequest:
- $ref: '#/components/examples/dataSampleRequest'
required: true
responses:
"200":
- description: OK
content:
application/json:
schema:
type: object
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
example:
message: Bad Gateway Error Message NCMP
dmi-response:
http-code: 400
body: Bad Request
- post:
+ schema:
+ $ref: '#/components/schemas/DmiErrorMessage'
+ description: Bad Gateway
+ summary: Patch resource data from pass-through running
tags:
- - network-cm-proxy
- summary: create resource data from pass-through running for cm handle
+ - network-cm-proxy
+ post:
description: create resource data from pass-through running for given cm handle
operationId: createResourceDataRunningForCmHandle
parameters:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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"
- required: true
- schema:
- type: string
- example: my-cm-handle
- - name: resourceIdentifier
- in: query
- 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.
- required: true
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
- - name: Content-Type
- in: header
- description: "Content parameter for request, if content parameter is null,\
+ 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."
- required: false
- schema:
- type: string
- example: application/yang-data+json
- default: application/json
+ in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/json
+ example: application/yang-data+json
+ type: string
requestBody:
content:
application/json:
- schema:
- type: object
examples:
dataSampleRequest:
$ref: '#/components/examples/dataSampleRequest'
- application/yang-data+json:
+ value: null
schema:
type: object
+ application/yang-data+json:
examples:
dataSampleRequest:
$ref: '#/components/examples/dataSampleRequest'
+ value: null
+ schema:
+ type: object
required: true
responses:
"201":
- description: Created
content: {}
+ description: Created
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
example:
message: Bad Gateway Error Message NCMP
dmi-response:
http-code: 400
body: Bad Request
- delete:
+ schema:
+ $ref: '#/components/schemas/DmiErrorMessage'
+ description: Bad Gateway
+ summary: create resource data from pass-through running for cm handle
tags:
- - network-cm-proxy
- summary: Delete resource data
- description: Delete resource data from pass-through running for a given cm handle
- operationId: deleteResourceDataRunningForCmHandle
+ - network-cm-proxy
+ put:
+ description: Update resource data from pass-through running for the given cm
+ handle
+ operationId: updateResourceDataRunningForCmHandle
parameters:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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"
- required: true
- schema:
- type: string
- example: my-cm-handle
- - name: resourceIdentifier
- in: query
- 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.
- required: true
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
- - name: Content-Type
- in: header
- description: "Content parameter for request, if content parameter is null,\
+ 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."
- required: false
- schema:
- type: string
- example: application/yang-data+json
- default: application/json
+ in: header
+ name: Content-Type
+ required: false
+ schema:
+ default: application/json
+ example: application/yang-data+json
+ 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:
- "204":
- description: No Content
- content: {}
- "400":
- description: Bad Request
+ "200":
content:
application/json:
schema:
- $ref: '#/components/schemas/ErrorMessage'
+ 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
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
- "404":
- description: The specified resource was not found
- content:
- application/json:
schema:
$ref: '#/components/schemas/ErrorMessage'
- example:
- status: 400
- message: Not found error message
- details: Not found error details
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
example:
message: Bad Gateway Error Message NCMP
dmi-response:
http-code: 400
body: Bad Request
- patch:
+ schema:
+ $ref: '#/components/schemas/DmiErrorMessage'
+ description: Bad Gateway
+ summary: Update resource data from pass-through running for a cm handle
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
+ - 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:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- 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
- - name: resourceIdentifier
- in: query
- 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.
- required: true
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
- - name: Content-Type
- in: header
- description: "Content parameter for request, if content parameter is null,\
- \ default value is application/json."
- required: false
- schema:
- type: string
- example: application/yang-data+json
- default: application/json
+ - 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
requestBody:
content:
- '*/*':
+ application/json:
schema:
- type: object
- examples:
- dataSampleRequest:
- $ref: '#/components/examples/dataSamplePatchRequest'
+ $ref: '#/components/schemas/DataOperationRequest'
required: true
responses:
"200":
- description: OK
content:
application/json:
schema:
type: object
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
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:
- 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:
- - name: datastore-name
- in: path
- description: The type of the requested data
- required: true
- schema:
- type: string
- example: ncmp-datastore:operational
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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"
- required: true
- schema:
- type: string
- example: my-cm-handle
- - name: cps-path
- in: query
- description: "For more details on cps path, please refer https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html"
- required: false
- schema:
- type: string
- default: /
- examples:
- container cps path:
- value: //bookstore
- list attributes cps path:
- value: "//categories[@code=1]"
- - name: options
- in: query
- description: "options parameter in query, it is mandatory to wrap key(s)=value(s)\
+ 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."
- required: false
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- options: (depth=3)
- sample 2:
- value:
- options: (fields=book)
- sample 3:
- value:
- options: "(depth=2,fields=book/authors)"
- - name: topic
- in: query
- description: topic parameter in query.
- required: false
- allowReserved: true
- schema:
- type: string
- examples:
- sample 1:
- value:
- topic: my-topic-name
- - name: include-descendants
- in: query
- description: Determines if descendants are included in response
- required: false
- schema:
- type: boolean
- default: false
+ 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":
- description: OK
content:
application/json:
- schema:
- type: object
examples:
dataSampleResponse:
$ref: '#/components/examples/dataSampleResponse'
+ value: null
+ schema:
+ type: object
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Fetch all module references (name and revision) for a given cm handle
description: fetch all module references (name and revision) for a given cm
handle
operationId: getModuleReferencesByCmHandle
parameters:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
+ in: path
+ name: cm-handle
+ required: true
+ schema:
+ example: my-cm-handle
+ type: string
responses:
"200":
- description: OK
content:
application/json:
schema:
- type: array
items:
$ref: '#/components/schemas/RestModuleReference'
+ type: array
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: "Fetch all module definitions (name, revision, yang resource) for a\
- \ given cm handle"
- description: "Fetch all module definitions (name, revision, yang resource) for\
- \ a given cm handle"
- operationId: getModuleDefinitionsByCmHandleId
+ description: "Get module definitions (module name, revision, yang resource)\
+ \ with options to filter on module name and revision"
+ operationId: getModuleDefinitions
parameters:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
+ 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":
- description: OK
content:
application/json:
schema:
- type: array
items:
$ref: '#/components/schemas/RestModuleDefinition'
+ type: array
+ description: OK
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Execute cm handle search using the available conditions
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
requestBody:
content:
application/json:
- schema:
- $ref: '#/components/schemas/CmHandleQueryParameters'
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":
- description: OK
content:
application/json:
schema:
- type: array
items:
$ref: '#/components/schemas/RestOutputCmHandle'
+ type: array
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Retrieve CM handle details
description: Retrieve CM handle details and properties by cm handle id
operationId: retrieveCmHandleDetailsById
parameters:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
+ in: path
+ name: cm-handle
+ required: true
+ schema:
+ example: my-cm-handle
+ type: string
responses:
"200":
- description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestOutputCmHandle'
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"404":
- description: The specified resource was not found
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Get CM handle properties
description: Get CM handle properties by cm handle id
operationId: getCmHandlePublicPropertiesByCmHandleId
parameters:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
+ in: path
+ name: cm-handle
+ required: true
+ schema:
+ example: my-cm-handle
+ type: string
responses:
"200":
- description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestOutputCmHandlePublicProperties'
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"404":
- description: The specified resource was not found
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Execute cm handle query upon a given set of query parameters
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
requestBody:
content:
application/json:
- schema:
- $ref: '#/components/schemas/CmHandleQueryParameters'
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":
- description: OK
content:
application/json:
schema:
- type: array
items:
type: string
+ type: array
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"404":
- description: The specified resource was not found
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- tags:
- - network-cm-proxy
- summary: Get CM handle state
description: Get CM handle state by cm handle id
operationId: getCmHandleStateByCmHandleId
parameters:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
+ in: path
+ name: cm-handle
+ required: true
+ schema:
+ example: my-cm-handle
+ type: string
responses:
"200":
- description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RestOutputCmHandleCompositeState'
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"404":
- description: The specified resource was not found
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
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:
- 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:
- - name: cm-handle
- in: path
- description: "The identifier for a network function, network element, subnetwork\
+ - 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
- - name: dataSyncEnabled
- in: query
- description: Is used to enable or disable the data synchronization flag
- required: true
- schema:
- type: boolean
- example: true
+ 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":
- description: OK
content:
application/json:
schema:
type: object
+ description: OK
"400":
- description: Bad Request
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 400 BAD_REQUEST
message: Bad request error message
details: Bad request error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Bad Request
"401":
- description: Unauthorized
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 401
message: Unauthorized error message
details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
"403":
- description: Forbidden
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 403
message: Forbidden error message
details: Forbidden error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Forbidden
"500":
- description: Internal Server Error
content:
application/json:
- schema:
- $ref: '#/components/schemas/ErrorMessage'
example:
status: 500
message: Internal Server Error
details: Internal Server Error occurred
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Internal Server Error
"502":
- description: Bad Gateway
content:
application/json:
- schema:
- $ref: '#/components/schemas/DmiErrorMessage'
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
+ 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
+ Unauthorized:
+ content:
+ application/json:
+ example:
+ status: 401
+ message: Unauthorized error message
+ details: Unauthorized error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Unauthorized
+ 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:
- title: Error
- type: object
properties:
status:
type: string
type: string
details:
type: string
- DmiErrorMessage:
- title: DMI Error Message
+ title: Error
type: object
+ DmiErrorMessage:
properties:
message:
- type: string
example: Bad Gateway Error Message NCMP
+ type: string
dmi-response:
- $ref: '#/components/schemas/DmiErrorMessage_dmiresponse'
- RestModuleReference:
- title: Module reference details
+ $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:
- moduleName:
+ 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
- revision:
type: string
+ revision:
example: my-module-revision
- RestModuleDefinition:
- title: Module definitions
+ 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:
- type: string
example: my-module-name
+ type: string
revision:
+ example: 2020-09-15
type: string
- example: 2020-09-15T00:00:00.000+00:00
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
- example: "module stores {\n yang-version 1.1;\n namespace \"org:onap:ccsdk:sample\"\
- ;\n prefix book-store;\n revision \"2020-09-15\" {\n description\n\
- \ \"Sample Model\";\n }\n}\n"
- CmHandleQueryParameters:
- title: Cm Handle query parameters for executing cm handle search
+ 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:
- type: array
items:
$ref: '#/components/schemas/ConditionProperties'
- conditions:
type: array
- description: "not necessary, it is just for backward compatibility"
+ 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:
- type: array
items:
- type: object
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:
- type: array
items:
$ref: '#/components/schemas/ModuleNameAsJsonObject'
- deprecated: true
+ type: array
ModuleNameAsJsonObject:
+ example:
+ moduleName: my-module
properties:
moduleName:
- type: string
example: my-module
+ type: string
RestOutputCmHandle:
- title: CM handle Details
- type: object
+ example:
+ cmHandle: my-cm-handle1
+ 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
properties:
cmHandle:
- type: string
example: my-cm-handle1
+ type: string
publicCmHandleProperties:
- $ref: '#/components/schemas/CmHandlePublicProperties'
+ 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
+ title: CM handle Details
+ type: object
CmHandlePublicProperties:
- type: array
items:
- type: object
additionalProperties:
- type: string
example: Book Type
+ type: string
+ type: object
+ type: array
CmHandleCompositeState:
- type: object
+ 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:
- type: string
example: ADVISED
+ type: string
lockReason:
$ref: '#/components/schemas/lock-reason'
lastUpdateTime:
- type: string
example: 2022-12-31T20:30:40.000+0000
+ type: string
dataSyncEnabled:
- type: boolean
example: false
+ type: boolean
dataSyncState:
$ref: '#/components/schemas/dataStores'
- lock-reason:
type: object
+ lock-reason:
+ example:
+ reason: LOCKED_MISBEHAVING
+ details: locked due to failure in module sync
properties:
reason:
- type: string
example: LOCKED_MISBEHAVING
- details:
type: string
+ details:
example: locked due to failure in module sync
- dataStores:
+ 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'
- sync-state:
type: object
+ sync-state:
+ example:
+ lastSyncTime: 2022-12-31T20:30:40.000+0000
+ syncState: NONE_REQUESTED
properties:
syncState:
- type: string
example: NONE_REQUESTED
- lastSyncTime:
type: string
+ lastSyncTime:
example: 2022-12-31T20:30:40.000+0000
- RestOutputCmHandlePublicProperties:
+ 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:
- $ref: '#/components/schemas/CmHandlePublicProperties'
- RestOutputCmHandleCompositeState:
+ 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'
- DmiErrorMessage_dmiresponse:
type: object
+ DmiErrorMessage_dmi_response:
properties:
http-code:
- type: integer
example: 400
+ type: integer
body:
- type: string
example: Bad Request
- examples:
- dataSampleResponse:
- summary: Sample response
- description: Sample response for selecting 'sample 1'.
- 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:
- summary: Sample request
- description: Sample request body
- 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:
- summary: Sample patch request
- description: Sample patch request body
- 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']"
+ type: string
+ type: object
securitySchemes:
basicAuth:
- type: http
scheme: basic
+ type: http