Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand



Req/usecase

REST

Method

 URI / Payload

Request/Response ExampleRelease I
1Read of a data resource getting specific fields for a given cmHandle
Sync call
GET

ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}?fields={fields}


Note 'topic' and 'fields' are only supported in passthrough mode at this time (ONAP Release I). If not passhrough
then an exception is thrown from NCMP at this time.

Accept : application/yang-data+json
Always return the yang-data+json in the "data" event payload

Scenario : Read the GNBCUCPFunction for cmhandle "335ff" as passthrough
Method : GET
URI : {ncmp-root}/ncmp/v1/data/ch/335ff/ManagedElement[@id=Kista-001]
/GNBCUCPFunction[@id=1]?fields=pLMNId;gNBId;gNBIdLength
Header :
Accept: application/yang-data+json


Response :

{
"_3gpp-common-managed-element:ManagedElement" : [
{
"id"="Kista-001",
_3gpp-nr-nrm-gnbcucpfunction:GNBCUCPFunction : [
{
"id"="1",
"attributes" : {
"pLMNId : [ { "mcc" : "01", "mnc" : "123" }],
"gNBId" : 123,
"gNBIdLength" : 3
}
}
]
}
]
}
Y
2Async read of a data resource getting
specific fields from ncmp-datastores:
passthrough-running for a given
cmHandle
GET

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}?fields={fields}&topic={topicId}

Note 'topic' and 'fields' are only supported in passthrough mode at this time (ONAP Release I). If not passhrough then an exception is thrown from NCMP at this time.

Accept : application/json


Always return the yang-data+json in the "data" event payload

Scenario : Read the GNBCUCPFunction for cmhandle "335ff" as passthrough
Method : GET
URI : {ncmp-root}/ncmp/v1/data/ch/335ff/ManagedElement[@id=Kista-001]
/GNBCUCPFunction[@id=1]?fields=pLMNId;gNBId;gNBIdLength&topic=anr-app:
anr24234234:v2
OR
{ncmp-root}/ncmp/v1/data/ch/335ff/ds/ncmp-datastores:passthrough-running?
fields=_3gpp-common-managed-element:ManagedElement/_3gpp-nr-nrm-gnbcucpfunction:GNBCUCPFunction(pLMNId;gNBId;gNBIdLength)&topic=anr-app:
anr24234234:v2


Header :
Accept: application/json


Response :
{
responseId : 323234
}
Event Response:
{
"requestId" :

anr24234234:v2Header :
Accept: application/json
 "dd3434",
"data" : {
"_3gpp-common-managed-element:ManagedElement" : [
{
"id"="Kista-001",
? _3gpp-nr-nrm-gnbcucpfunction:GNBCUCPFunction : [
{
"id"="1",
"attributes" : {
"pLMNId : [ { "mcc" : "01", "mnc" : "123" }],
"gNBId" : 123,
"gNBIdLength" : 3
}
}
]
}
]
}
}

Note : async not supported by NCMP locally in ONAP Rel I

?
3

Read a data resource directly from source (passthrough) for a
cmHandle. Only return specific field(s).

Synchronous call

GET

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}?fields={fields}

Accept: application/yang-data+json

Scenario : Read the EUtranCellFDD.(administrativeState, operationalState, tac,
earfcndl, cellId, physicalLayerCellId) for cmhandle "335ff"
Method : GET
URI : {ncmp-root}/ncmp/v1/data/ch/335ff/ManagedElement[@id=Kista-001]
/ENodeBFunction ?fields=ericsson-enm-lrat:EUtranCellFDD(administrativeState;
operationalState;tac;earfcndl;cellId;
physicalLayerCellId)
Header :
Accept: application/yang-data+json
Y
4

Read a data resource with some leaf value condition directly from the source
(passthrough) for a cmHandle. Only
return specific field(s).

Synchronous call

GET

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier[<condition<condition>]}?fields={fields}


Accept: application/yang-data+json

Scenario : Read the LocalSctpEndpoint.(interfaceUsed==X2, sctpEndpointRef) for
cmhandle "335ff" as passthrough
Method : GET
URI
cps-path
{ncmp-root}/ncmp/v1/query/ch/335ff

/

/LocalSctpEndpoint[interfaceUsed=X2]?
fields=sctpEndpointRef



5

Read descendant data resources with 
specified fields under a  given data 
resource for a given cmHandle

GET

{ncmp-root}/ncmp/v1/ch/<cm-handle>/{data-resource-identifier}?fields={fields-expression}

options 

OptionDescription
fieldsRequest a subset of the target
resource contents


Scenario : Read all NRCellDU MOs with attributes userLabel and id under the _3gpp-nr-nrm-gnbdufunction:GNBDUFunction MO

Method  : GET

URI         :{ncmp-root}/ncmp/v1/ch/3445fff/data/ManagedElement[@id=Kista-001]
/GNBCUCPFunction[@id=1]?fields=_3gpp-nr-nrm-nrcelldu:NRCellDU/attributes
(administrativeState;operationalState)

Header :
      Accept : application/yang-data+json

Response :

      HTTP/1.1 200 OK
      Date: Thu, 26 Jan 2017 20:56:30 GMT
      Server: example-server
      Content-Type: application/yang-data+json

      {
       _3gpp-nr-nrm-gnbdufunction:GNBDUFunction=1 {

                                       _3gpp-nr-nrm-nrcelldu:NRCellDU=1 {
                                           "top3gpp:id" : "NR-Cell-001"
                                           "attributes" : {
                                                  "administrativeState " : "LOCKED",
                                                  "operationalState" : "disabled"
                                           }
                                        },
                                        _3gpp-nr-nrm-nrcelldu:NRCellDU=2 {
                                           "top3gpp:id" : "NR-Cell-002"
                                           "attributes" : {
                                                  "administrativeState " : "LOCKED",
                                                  "operationalState" : "disabled"
                                           }
                                        },  
                                         _3gpp-nr-nrm-nrcelldu:NRCellDU=3 {
                                           "top3gpp:id" : "NR-Cell-003"
                                            "attributes" : {
                                                  "administrativeState " : "LOCKED",
                                                  "operationalState" : "disabled"
                                           }
                                        },  

                                        _3gpp-nr-nrm-nrcelldu:NRCellDU=4 {
                                           "top3gpp:id" : "NR-Cell-004"
                                           "attributes" : {
                                                  "administrativeState " : "LOCKED",
                                                  "operationalState" : "disabled"
                                           }
                                        },  

                                        _3gpp-nr-nrm-nrcelldu:NRCellDU=5 {
                                           "top3gpp:id" : "NR-Cell-005"
                                           "attributes" : {
                                                  "administrativeState " : "LOCKED",
                                                  "operationalState" : "disabled"
                                           }
                                        }
                              }
                    }

6Create a data resource for a cmhandlePOST

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{parent-data-resource-identifier}

{

  <new-yang-data-resource>

}

Content: application/yang-data+json

Scenario : Create ericsson- nrsectorcarrier-vdu-add:NRSectorCarrier=4 under _3gppcommon-managed-element:ManagedElement=Kista-001/_3gpp-nr-nrm-gnbdufunction:
GNBDUFunction=1
Method : POST
URI : {ncmp-root}/ncmp/v1/data/ch/34l5k32/ManagedElement[@id=Kista-001]
/GNBDUFunction[@id=1]
Header :
Content-Type: application/yang-data+json
7Update a data resource for a cmhandle
with plain-patch update
PATCH

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}

{

}

Content: application/yang-data+json

Behaves as a merge - merge with existing if it exists or create if it does not exist.

Scenario : Update _3gpp-nr-nrm-nrsectorcarrier:NRSectorCarrier=4 txDirection
to "DL_AND_UL" under _3gpp-common-managed-element:ManagedElement=Kista001/_3gpp-nr-nrm-gnbdufunction:GNBDUFunction=1
Method : PATCH
URI : {ncmp-root}/ncmp/v1/data/ch/34l5k32/ManagedElement[@id=Kista-001]
/GNBDUFunction[@id=1]/NRSectorCarrier[@id=4]
Header :
Content-Type: application/yang-data+json
Body :
8Update a data resource with multiple
edits for a cmhandle with yang-patch
update
PATCH

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}

{

<updated-yang-data-resource>

}


Content: application/yang-patch+json

If using yang-patch content then ds/ncmp-datastore-passthrough-running must be used by rad apps until full
support is available from NCMP/CPS

Scenario : Update _3gpp-common-managed-element:ManagedElement=Kista-001/_3gpp-nr-nrm-gnbdufunction:GNBDUFunction=1 with multiple operations on the tree
Method : PATCH
URI : {ncmp-root}/ncmp/v1/data/ch/34l5k32/ds/ncmp-datastore-passthrough-running/ManagedElement[@id=Kista-001]/GNBDUFunction[@id=1]
9Replace a data resource for a cmhandlePUT

{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifier}

{

<yang-data-resource-for-replace>

}

Content: application/yang-data+json

Scenario : Replace _3gpp-nr-nrm-nrsectorcarrier:NRSectorCarrier=4 txDirection
to "DL_AND_UL" under _3gpp-common-managed-element:ManagedElement=Kista001/_3gpp-nr-nrm-gnbdufunction:GNBDUFunction=1 - removes all config params not
specified including sub-tree if one exists
Method : PUT
URI : {ncmp-root}/ncmp/v1/data/ch/34l5k32/ManagedElement[@id=Kista-001]
/GNBDUFunction[@id=1]/NRSectorCarrier[@id=4]
Header :
Content-Type: application/yang-data+json
10Delete a data resource for a cmhandleDELETE{ncmp-root}/ncmp/v1/data/ch/<cm-handle>/{data-resource-identifierScenario : Delete ericsson- nrsectorcarrier-vdu-add:NRSectorCarrier=4 under _3gppcommon-managed-element:ManagedElement=Kista-001/_3gpp-nr-nrm-gnbdufunction:
GNBDUFunction=1
Method : DELETE
URI : {ncmp-root}/ncmp/v1/data/ch/34l5k32/ManagedElement[@id=Kista-001]
/GNBDUFunction[@id=1]/NRSectorCarrier[@id=4]
Header :
Accept: application/json
Body :
{}
11Get all cmhandles that support a given
module
GET{ncmp-root}/ncmp/v1/data/ch?module={module-name}
Content: application/json
Scenario : Get the all cmhandles that support a given module
Method : GET
URI : {ncmp-root}/ncmp/v1/data/ch?module=_3gpp-nr-nrm-gnbdufunction
Header :
Accept: application/json
Response:
{
cm-handles : [ "ew534fe", "23ft4", "434fsdf", ... ]
}


...