- CPS-278Getting issue details... STATUS
Analyse all API API PUT, PATCH & DELETE calls listed on this page:
- Ensure use case is clear using model and data example
- Find out required (new) update functionality in CPS (several API call might need same CPS functionality.
- One API call might require more then one CPS-Core call, indicate in report if this is the case
- One API call might need to access more then one model (report!)
- Distinguish between NCMP (ran network data) and CPD-Core access for slicing specific data.
A/C
- Wiki Page with a conclusion for each API call (see toines example for API call no.2 https://wiki.onap.org/display/DW/CPS+APIs)
- Add new update functionality if needed to https://wiki.onap.org/display/DW/CPS-235%3A+Overview+of+%28early%29+CPS+Query+and+Update+Scenarios
- Review with the full team
1. Details of Config DB APIs supported in Guilin
Please refer to below ConfigDB API swagger document for a full list of API's supported: ConfigDB Swagger JSON
Following API's are currently used to support RAN Network Slicing and OOF SON use case:
S.No | API endpoint | HTTP Method | Description | API input/Request Payload | Yang sub-tree/element(s) accessed (for GET), or updated (for UPDATE) | Consuming Component | Usecase | Priority | Comments |
---|---|---|---|---|---|---|---|---|---|
3. | /api/sdnc-config-db/v4/nearRTRIC | PUT | Store nearRTRIC details | { "nearRTRICId":22, "gNBId":98763, "trackingArea":[ "Kingston" ], "resourceType":"NearRTRIC", "ranNFNSSIList":[ "11", "22" ], "pLMNInfoList":[ { "pLMNId":"310-410", "sNSSAI":{ "sNSSAI":"001-010000", "status":"ACTIVE", "globalSubscriberId":"Customer-001", "subscriptionServiceType":"Premium", "configData": { "dLThptPerSlice":25, "uLThptPerSlice":30, "maxNumberOfConns":3000 } } } ] } | cps-ran-schema-model +--rw NearRTRIC* [idNearRTRIC] | SDN-R | Slicing | 1 | suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too. Note 1. SNSSAIList is a list contained within each element of PLMNInfo Yes. Refer Section-3 for field mapping Note 2. Please note this action replace all existing list element, it is NOT an add-to-element action <Need to discuss> |
4. | /api/sdnc-config-db/v4/gNBCUCP | PUT | Store gNBCUCP, NRCellCU details | { | cps-ran-schema-model +--rw GNBCUCPFunction* [idGNBCUCPFunction] | SDN-R | Slicing | 1 | from CPS point of view this case is similar as previous case (#3), just different target (parent)data node. suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too! <Need to discuss> |
5. | /api/sdnc-config-db/v4/gNBCUUP | PUT | Store gNBCUUP details | { | cps-ran-schema-model +--rw GNBCUUPFunction* [idGNBCUUPFunction] | SDN-R | Slicing | 1 | from CPS point of view this case is similar as previous 2 cases (#3, #4), just different target (parent)data node. suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too! <Need to discuss> |
6. | /api/sdnc-config-db/v4/gNBDU | PUT | Store gNBDU, NRCellDU details | { | cps-ran-schema-model +--rw GNBDUFunction* [idGNBDUFunction] | SDN-R | Slicing | 1 | from CPS point of view this case is similar as previous 2 cases (#3, #4, #5), just different target (parent)data node. suggested CPS-action: Update DataNode with children (in this case a list) all children will be replaced! All unchanged data has to be provided too! <Need to discuss> |
7. | /api/sdnc-config-db/v4/rrmPolicy | PUT | Store network elements' RRMPolicy details | { | cps-ran-schema-model +--rw RRMPolicyRatio* [id] | SDN-R | Slicing | 1 | Currently, CPS has no option to replace an entire list without updating its parent which seems what is required here. <Need to discuss> |
8. | /api/sdnc-config-db/v4/ranslice-details | PUT | RAN Inventory. Store RAN slice details | { "ranNFNSSIId":"3f2f23fa-c567-4dd8-8f15-f95ae3e6fd82", "ranNSSIList":[ "ran4" ], "nsiList":[ "nsi1","nsi2" ], "nSSAIList":[ "001-010000" ], "sliceProfilesList":[ { "sliceProfileId": "878f32c0-3699-4dbd-95a3-1f01d6c763fd", "dLThptPerSlice": 25, "uLThptPerSlice": 30, "maxNumberofConns":3000, "sNSSAI":"001-010000", "pLMNIdList":"310-410" } ], "trackingAreaList": "Kingston" , "subnetStatus":"ACTIVE", "nsstId":"NSSTID1", "sliceType":"eMBB", "isShareable":"true" } | cps-ran-inventory +--rw ran-inventory | SDN-R | Slicing | 2 | little difference can be found between the request payload and the yang model. Yang model is the final one. For CPS this seems like populating the whole data tree for a given model in one go. i.e. replace all existing data Modified the YANG model to support storing a list of Slices |
14. | /api/sdnc-config-db/v3/insertData | PUT | Pre-load Cell Data | { | OOF-PCI MS | SON | 3 | ||
15. | /api/sdnc-config-db/v3/modifyPci/{cellId} | PATCH | Modfify PCI value of a cell | { "pci-value":1 } | SDNR | SON | 3 | ||
16. | /api/sdnc-config-db/v3/modifyNbrHO/{cellId}/{targetCellId} | PATCH | Modify HO (Handoff) flag for a target neighbor cell | { "ho":false } | SDNR | SON | 3 | ||
17. | /api/sdnc-config-db/v3/createNbr/{cellId} | PUT | Create a neigbor for a cell |
| SDNR | SON | 3 | ||
18. | /api/sdnc-config-db/v3/deleteNbr/{cellId}/{targetCellId} | DELETE | Delete a neighbor for a call | cellId - string trgetCellId - string | SDNR | SON | 3 |