info:
description: NCMP to CPS Proxy API
title: NCMP to CPS Proxy API
- version: "1.0"
+ version: 3.6.3
servers:
- url: /ncmp
-security:
-- basicAuth: []
paths:
/v1/ch/{cm-handle}/data/ds/{datastore-name}:
delete:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ - description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
in: query
name: resourceIdentifier
required: true
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: {}
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: The specified resource was not found
+ "409":
+ content:
+ application/json:
+ example:
+ status: 409
+ message: Conflict error message
+ details: Conflict error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Conflict
"500":
content:
application/json:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ - description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
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."
+ - description: |
+ The `options` parameter specifies additional query options. It is mandatory to wrap key(s)=value(s) in parentheses `()`.
+ Examples for GNBDUFunctionConfig queries:
+ - Limit depth of returned sub-tree: `(depth=2)`
+ - Select specific fields: `(fields=attributes(gNBId;gNBDUName))`
+ - Combine options: `(depth=3,fields=attributes(gNBId;gNBDUName))`
examples:
- sample 1:
+ Limit Depth:
value:
- options: (depth=3)
- sample 2:
+ options: (depth=2)
+ Select Specific Fields:
value:
- options: (fields=book)
- sample 3:
+ options: (fields=attributes(gNBId;gNBDUName))
+ Combine Depth and Fields:
value:
- options: "(depth=2,fields=book/authors)"
+ options: "(depth=3,fields=attributes(gNBId;gNBDUName))"
in: query
name: options
required: false
schema:
type: string
- - allowReserved: true
- description: topic parameter in query.
+ - description: topic parameter in query.
examples:
sample 1:
value:
schema:
default: false
type: boolean
+ - description: Authorization parameter for request.
+ in: header
+ name: Authorization
+ required: false
+ schema:
+ type: string
responses:
"200":
content:
examples:
dataSampleResponse:
$ref: '#/components/examples/dataSampleResponse'
- value: null
schema:
type: object
description: OK
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ - description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
in: query
name: resourceIdentifier
required: true
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
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Forbidden
+ "409":
+ content:
+ application/json:
+ example:
+ status: 409
+ message: Conflict error message
+ details: Conflict error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Conflict
"500":
content:
application/json:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ - description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
in: query
name: resourceIdentifier
required: true
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
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Forbidden
+ "409":
+ content:
+ application/json:
+ example:
+ status: 409
+ message: Conflict error message
+ details: Conflict error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Conflict
"500":
content:
application/json:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ - description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
in: query
name: resourceIdentifier
required: true
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
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Forbidden
+ "409":
+ content:
+ application/json:
+ example:
+ status: 409
+ message: Conflict error message
+ details: Conflict error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Conflict
"500":
content:
application/json:
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.
+ to identify the relevant messages. A maximum of 200 cm handles per operation
+ is supported.
operationId: executeDataOperationForCmHandles
parameters:
- - allowReserved: true
- description: mandatory topic parameter in query.
+ - description: mandatory topic parameter in query.
examples:
sample 1:
value:
required: true
schema:
type: string
+ - description: Authorization parameter for request.
+ in: header
+ name: Authorization
+ required: false
+ schema:
+ type: string
requestBody:
content:
application/json:
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Forbidden
+ "413":
+ content:
+ application/json:
+ example:
+ status: 413
+ message: Payload Too Large error message
+ details: Payload Too Large error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: The request is larger than the server is willing or able to
+ process
"500":
content:
application/json:
schema:
$ref: '#/components/schemas/DmiErrorMessage'
description: Bad Gateway
- summary: Execute a data operation for group of cm handle ids
+ summary: Execute a data operation for group of cm handle references
tags:
- network-cm-proxy
/v1/ch/{cm-handle}/data/ds/{datastore-name}/query:
- 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
+ value: //GNBDUFunction
list attributes cps path:
- value: "//categories[@code=1]"
+ value: "//GNBDUFunction[@id='1001']"
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."
+ - description: |
+ The `options` parameter specifies additional query options. It is mandatory to wrap key(s)=value(s) in parentheses `()`.
+ Examples for GNBDUFunctionConfig queries:
+ - Limit depth of returned sub-tree: `(depth=2)`
+ - Select specific fields: `(fields=attributes(gNBId;gNBDUName))`
+ - Combine options: `(depth=3,fields=attributes(gNBId;gNBDUName))`
examples:
- sample 1:
+ Limit Depth:
value:
- options: (depth=3)
- sample 2:
+ options: (depth=2)
+ Select Specific Fields:
value:
- options: (fields=book)
- sample 3:
+ options: (fields=attributes(gNBId;gNBDUName))
+ Combine Depth and Fields:
value:
- options: "(depth=2,fields=book/authors)"
+ options: "(depth=3,fields=attributes(gNBId;gNBDUName))"
in: query
name: options
required: false
schema:
type: string
- - allowReserved: true
- description: topic parameter in query.
+ - description: topic parameter in query.
examples:
sample 1:
value:
examples:
dataSampleResponse:
$ref: '#/components/examples/dataSampleResponse'
- value: null
schema:
type: object
description: OK
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
handle
operationId: getModuleReferencesByCmHandle
parameters:
- - description: "The identifier for a network function, network element, subnetwork\
- \ or any other cm object by managed Network CM Proxy"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
type: string
responses:
"200":
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
- network-cm-proxy
/v1/ch/{cm-handle}/modules/definitions:
get:
- 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:
- - description: "The identifier for a network function, network element, subnetwork\
- \ or any other cm object by managed Network CM Proxy"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
+ 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":
$ref: '#/components/schemas/RestModuleDefinition'
type: array
description: OK
- "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:
schema:
$ref: '#/components/schemas/ErrorMessage'
description: Internal Server Error
- summary: "Fetch all module definitions (name, revision, yang resource) for a\
- \ given cm handle"
+ summary: Get module definitions
tags:
- network-cm-proxy
/v1/ch/searches:
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
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
type: string
responses:
"200":
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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
"404":
content:
application/json:
/v1/ch/{cm-handle}/properties:
get:
description: Get CM handle properties by cm handle id
- operationId: getCmHandlePublicPropertiesByCmHandleId
+ operationId: getPublicCmHandlePropertiesByCmHandleId
parameters:
- - description: "The identifier for a network function, network element, subnetwork\
- \ or any other cm object by managed Network CM Proxy"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
type: string
responses:
"200":
content:
application/json:
schema:
- $ref: '#/components/schemas/RestOutputCmHandlePublicProperties'
+ $ref: '#/components/schemas/RestOutputPublicCmHandleProperties'
description: OK
"400":
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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
"404":
content:
application/json:
- 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 <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm
+ description: Execute cm handle query search and return a list of cm handle references.
+ Any number of conditions can be applied. To be included in the result a cm
+ handle must fulfill ALL the conditions. An empty collection will be returned
+ in the case that the cm handle does not match a condition. For more on cm
+ handle query search please refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/ncmp-cmhandle-querying.html">cm
handle query search Read the Docs</a>.<br/>By supplying a CPS Path it is possible
to query on any data related to the cm handle. For more on CPS Path please
refer to <a href="https://docs.onap.org/projects/onap-cps/en/latest/cps-path.html">CPS
Path Read the Docs</a>. The cm handle ancestor is automatically returned for
this query.
operationId: searchCmHandleIds
+ parameters:
+ - description: Boolean parameter to determine if returned value(s) will be cm
+ handle ids or alternate ids for a given query
+ in: query
+ name: outputAlternateId
+ required: false
+ schema:
+ default: false
+ type: boolean
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
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
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"
+ - description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
type: string
responses:
"200":
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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
"404":
content:
application/json:
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
components:
examples:
dataSampleResponse:
- description: Sample response for selecting 'sample 1'.
+ description: Sample response with GNBDUFunction configuration
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
+ gnbdu3gpp:GNBDUFunction:
+ id: 12345
+ attributes:
+ gNBId: 5
+ gNBIdLength: 32
+ gNBDUId: 67890
+ gNBDUName: DU-1
+ rimRSReportConf:
+ reportIndicator: enabled
+ reportInterval: 1000
+ nrofRIMRSReportInfo: 5
+ maxPropagationDelay: 32767
+ RimRSReportInfoList:
+ - detectedSetID: 1
+ propagationDelay: 20
+ functionalityOfRIMRS: RS1
+ - detectedSetID: 2
+ propagationDelay: 15
+ functionalityOfRIMRS: RS2
+ configurable5QISetRef: /5QISet-001
+ dynamic5QISetRef: /Dynamic5QISet-001
dataSampleRequest:
- description: Sample request body
+ description: Sample request body for GNBDUFunction configuration
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
+ gnbdu3gpp:GNBDUFunction:
+ id: 12345
+ attributes:
+ gNBId: 5
+ gNBIdLength: 32
+ gNBDUId: 67890
+ gNBDUName: DU-1
+ rimRSReportConf:
+ reportIndicator: enabled
+ reportInterval: 1000
+ nrofRIMRSReportInfo: 5
+ maxPropagationDelay: 32767
+ RimRSReportInfoList:
+ - detectedSetID: 1
+ propagationDelay: 20
+ functionalityOfRIMRS: RS1
+ - detectedSetID: 2
+ propagationDelay: 15
+ functionalityOfRIMRS: RS2
dataSamplePatchRequest:
- description: Sample patch request body
+ description: Sample patch request to modify GNBDUFunction
summary: Sample patch request
value:
ietf-restconf:yang-patch:
patch-id: patch-1
edit:
- edit-id: edit1
- operation: merge
- target: /
+ operation: replace
+ target: /gnbdu3gpp:GNBDUFunction
value:
- test:bookstore:
- bookstore-name: Chapters
- categories:
- - code: "01"
- name: Science
- books:
- - authors:
- - Author1
- - Author2
- - code: "02"
- name: Arts
- books:
- - authors:
- - Author3
+ gnbdu3gpp:GNBDUFunction:
+ id: 54321
+ attributes:
+ gNBId: 5
+ gNBIdLength: 32
+ gNBDUId: 98765
+ gNBDUName: DU-2
+ rimRSReportConf:
+ reportIndicator: disabled
+ reportInterval: 2000
+ nrofRIMRSReportInfo: 3
+ maxPropagationDelay: 20000
- edit-id: edit2
operation: merge
- target: /
+ target: /gnbdu3gpp:GNBDUFunction
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
+ gnbdu3gpp:GNBDUFunction:
+ configurable5QISetRef: /5QISet-001
+ dynamic5QISetRef: /Dynamic5QISet-001
pubPropCmHandleQueryParameters:
value:
cmHandleQueryParameters:
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"
+ cmHandleReferenceInPath:
+ description: "The identifier (cmHandle or alternate) 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
+ example: my-cm-handle-reference
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.
+ description: |
+ The `resourceIdentifier` parameter specifies the target resource in the GNBDUFunctionConfig model.
+ For ONAP DMI Plugin, the format will follow RESTConf paths. Examples:
+ - All GNBDUFunctions: `/ManagedElement=node1/GNBDUFunction=1`
examples:
sample 1:
value:
- resourceIdentifier: \shops\bookstore
- sample 2:
- value:
- resourceIdentifier: "\\shops\\bookstore\\categories[@code=1]"
- sample 3:
- value:
- resourceIdentifier: "parent=shops,child=bookstore"
+ resourceIdentifier: /ManagedElement=node1/GNBDUFunction=1
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."
+ description: |
+ The `options` parameter specifies additional query options. It is mandatory to wrap key(s)=value(s) in parentheses `()`.
+ Examples for GNBDUFunctionConfig queries:
+ - Limit depth of returned sub-tree: `(depth=2)`
+ - Select specific fields: `(fields=attributes(gNBId;gNBDUName))`
+ - Combine options: `(depth=3,fields=attributes(gNBId;gNBDUName))`
examples:
- sample 1:
+ Limit Depth:
value:
- options: (depth=3)
- sample 2:
+ options: (depth=2)
+ Select Specific Fields:
value:
- options: (fields=book)
- sample 3:
+ options: (fields=attributes(gNBId;gNBDUName))
+ Combine Depth and Fields:
value:
- options: "(depth=2,fields=book/authors)"
+ options: "(depth=3,fields=attributes(gNBId;gNBDUName))"
in: query
name: options
required: false
schema:
type: string
topicParamInQuery:
- allowReserved: true
description: topic parameter in query.
examples:
sample 1:
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."
example: application/yang-data+json
type: string
requiredTopicParamInQuery:
- allowReserved: true
description: mandatory topic parameter in query.
examples:
sample 1:
required: true
schema:
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
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
+ value: //GNBDUFunction
list attributes cps path:
- value: "//categories[@code=1]"
+ value: "//GNBDUFunction[@id='1001']"
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
+ outputAlternateIdOptionInQuery:
+ description: Boolean parameter to determine if returned value(s) will be cm
+ handle ids or alternate ids for a given query
+ in: query
+ name: outputAlternateId
+ required: false
+ schema:
+ default: false
+ type: boolean
dataSyncEnabled:
description: Is used to enable or disable the data synchronization flag
in: query
content:
application/json:
example:
- status: 400 BAD_REQUEST
+ status: 400
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:
schema:
type: object
description: OK
+ Conflict:
+ content:
+ application/json:
+ example:
+ status: 409
+ message: Conflict error message
+ details: Conflict error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: Conflict
Created:
content: {}
description: Created
schema:
$ref: '#/components/schemas/ErrorMessage'
description: The specified resource was not found
+ PayloadTooLarge:
+ content:
+ application/json:
+ example:
+ status: 413
+ message: Payload Too Large error message
+ details: Payload Too Large error details
+ schema:
+ $ref: '#/components/schemas/ErrorMessage'
+ description: The request is larger than the server is willing or able to process
schemas:
ErrorMessage:
+ example:
+ details: details
+ message: message
+ status: status
properties:
status:
type: string
title: Error
type: object
DmiErrorMessage:
+ example:
+ message: Bad Gateway Error Message NCMP
+ dmi-response:
+ body: Bad Request
+ http-code: 400
properties:
message:
example: Bad Gateway Error Message NCMP
DataOperationRequest:
example:
operations:
- - resourceIdentifier: parent/child
+ - resourceIdentifier: /ManagedElement=NRNode1/GNBDUFunction=1
targetIds:
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
datastore: ncmp-datastore:passthrough-operational
- options: (fields=schemas/schema)
+ options: (fields=NRCellDU/attributes/cellLocalId)
operationId: "12"
operation: read
- - resourceIdentifier: parent/child
+ - resourceIdentifier: /ManagedElement=NRNode1/GNBDUFunction=1
targetIds:
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
datastore: ncmp-datastore:passthrough-operational
- options: (fields=schemas/schema)
+ options: (fields=NRCellDU/attributes/cellLocalId)
operationId: "12"
operation: read
properties:
type: object
DataOperationDefinition:
example:
- resourceIdentifier: parent/child
+ resourceIdentifier: /ManagedElement=NRNode1/GNBDUFunction=1
targetIds:
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
- "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
datastore: ncmp-datastore:passthrough-operational
- options: (fields=schemas/schema)
+ options: (fields=NRCellDU/attributes/cellLocalId)
operationId: "12"
operation: read
properties:
example: ncmp-datastore:passthrough-operational
type: string
options:
- example: (fields=schemas/schema)
+ example: (fields=NRCellDU/attributes/cellLocalId)
type: string
resourceIdentifier:
- example: parent/child
+ example: /ManagedElement=NRNode1/GNBDUFunction=1
type: string
targetIds:
items:
+ description: "targeted cm handle references, maximum of 200 supported.\
+ \ If this limit is exceeded the request will be refused."
example: "[\"da310eecdb8d44c2acc0ddaae01174b1\",\"c748c58f8e0b438f9fd1f28370b17d47\"\
]"
type: string
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';
- }
- }
+ content: "module _3gpp-nr-nrm-gnbdufunction {\n yang-version 1.1;\n namespace\
+ \ 'urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction';\n prefix gnbdu3gpp;\n revision\
+ \ '2020-09-15' {\n description\n 'Defines the YANG mapping of the\
+ \ GNBDUFunction Information \n Object Class (IOC) that is part of the\
+ \ NR Network Resource Model (NRM). \n Copyright 2024, 3GPP Organizational\
+ \ Partners (ARIB, ATIS, CCSA, ETSI, TSDSI,\n TTA, TTC). All rights reserved.';\n\
+ \ }\n}\n"
revision: 2020-09-15
properties:
moduleName:
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';
- }
- }
+ example: "module _3gpp-nr-nrm-gnbdufunction {\n yang-version 1.1;\n namespace\
+ \ 'urn:3gpp:sa5:_3gpp-nr-nrm-gnbdufunction';\n prefix gnbdu3gpp;\n revision\
+ \ '2020-09-15' {\n description\n 'Defines the YANG mapping of the\
+ \ GNBDUFunction Information \n Object Class (IOC) that is part of\
+ \ the NR Network Resource Model (NRM). \n Copyright 2024, 3GPP Organizational\
+ \ Partners (ARIB, ATIS, CCSA, ETSI, TSDSI,\n TTA, TTC). All rights\
+ \ reserved.';\n }\n}\n"
type: string
title: Module definitions
type: object
RestOutputCmHandle:
example:
cmHandle: my-cm-handle1
+ alternateId: "Subnetwork=Europe,ManagedElement=X123"
+ dataProducerIdentifier: my-data-producer-identifier
publicCmHandleProperties:
- - key: Book Type
- - key: Book Type
+ - key: 3gpp Type
+ - key: 3gpp Type
+ cmHandleProperties:
+ key: 3gpp Type
state:
dataSyncEnabled: false
dataSyncState:
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
publicCmHandleProperties:
items:
additionalProperties:
- example: Book Type
+ example: 3gpp Type
type: string
type: object
+ nullable: true
type: array
+ cmHandleProperties:
+ additionalProperties:
+ example: 3gpp Type
+ type: string
+ type: object
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: "Subnetwork=Europe,ManagedElement=X123"
+ 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
description: Current trust level of the relevant CM handle ID.
example: COMPLETE
type: string
- RestOutputCmHandlePublicProperties:
+ RestOutputPublicCmHandleProperties:
example:
publicCmHandleProperties:
- - key: Book Type
- - key: Book Type
+ - key: 3gpp Type
+ - key: 3gpp Type
properties:
publicCmHandleProperties:
items:
additionalProperties:
- example: Book Type
+ example: 3gpp Type
type: string
type: object
type: array
$ref: '#/components/schemas/CmHandleCompositeState'
type: object
DmiErrorMessage_dmi_response:
+ example:
+ body: Bad Request
+ http-code: 400
properties:
http-code:
example: 400
example: Bad Request
type: string
type: object
- securitySchemes:
- basicAuth:
- scheme: basic
- type: http