2 REST Specifications

In this chapter, you will learn about UDR REST Specifications.

Operations Supported for PCF Data

This section provides information about the operations supported for PCF Data (PCF as consumer).

Note:

All APIs supported are as per TS29.500 v16.2.

Resource Name: AccessAndMobilityPolicyData

HTTP Method: GET

Base URI: {apiRoot}/nudr-dr/{version}/policy-data/ues/{ueId}/am-data

Sample Request URL: https://10.75.212.116:31873/nudr-dr/v2/policy-data/ues/msisdn-7777777779/am-data

Possible Error Codes:
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"

Resource Name: SessionManagementPolicyData

HTTP Method: GET, PATCH

Base URI: {apiRoot}/nudr-dr/{version}/policy-data/ues/{ueId}/sm-data

Operation Type Sample REST URL Possible Error Codes
GET Different samples of GET
  • Complete SM data GET: https://10.75.212.116:31873/nudr-dr/v2/policy-data/ues/msisdn-7777777779/sm-data
  • Using query parameters
    • https://10.75.212.116:31873/nudr-dr/v2/policy-data/ues/msisdn-7777777779/sm-data?dnn=dnn1&snssai={"sst":11,"sd":"abc123"}&fields=umData
    • https://10.75.212.116:31873/nudr-dr/v2/policy-data/ues/msisdn-7777777779/sm-data?dnn=dnn1&fields=umData,smPolicySnssaiData
    • https://10.75.212.116:31873/nudr-dr/v2/policy-data/ues/msisdn-7777777779/sm-data?snssai={"sst":11,"sd":"abc123"}&fields=smPolicySnssaiData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
  • 404: "Requested data not found"
  • 400: "Invalid query parameters supplied"
PATCH

Base URI: {apiRoot}/nudr-dr/{version}/policy-data/ues/{ueId}/sm-data

Sample REST URL: See https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/sm-data

Payload: See PATCH-SessionManagementPolicyData
  • 400: "Blob syntax error with corresponding error details"
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
  • 404: Data field does not exist.

Resource Name: UEPolicySet

HTTP Method: PUT, GET, PATCH

Base URI: {apiRoot}/nudr-dr/{version}/policy-data/ues/{ueId}/ue-policy-set

Operation Type Sample REST URL Possible Error Codes
PUT https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/ue-policy-set

Payload: See PUT-UEPolicySet

  • 400: "Blob syntax error with corresponding error details"
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
GET

https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/ue-policy-set

  • 400: "Invalid URI sent from client"
  • 404:"Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
PATCH https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/ue-policy-set

Payload: See PATCH-UEPolicySet

  • 400 : "Blob syntax error with corresponding error details"
  • 400 : "Invalid URI sent from client"
  • 404 : "Subscriber does not exist"
  • 400 : "Unknown key, the key provided in the request is invalid"
  • 404: "Data field does not exist"

Resource Name: UsageMonitoringInformation

HTTP Method: GET, PUT, DELETE

Base URI: {apiRoot}/nudr-dr/{version}/policy-data/ues/{ueId}/sm-data/{usageMonId}

Operation Type Sample REST URL Possible Error Codes
GET https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/sm-data/mk1
  • 400 : "Invalid URI sent from client"
  • 404 : "Subscriber does not exist"
  • 404 : "Data field does not exist "
  • 400 : "Unknown key, the key provided in the request is invalid"
PUT https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/sm-data/mk1

Payload: See PUT-UsageMonitoringInformation

  • 400 : "Blob syntax error with corresponding error details"
  • 400 : "Invalid URI sent from client"
  • 404 : "Subscriber does not exist"
  • 400 : "Unknown key, the key provided in the request is invalid"
  • 404: "Data field does not exist"
DELETE https://localhost:9443/nudr-dr/v2/policy-data/ues/msisdn-1111111111/sm-data/mk1
  • 400 : "Invalid URI sent from client"
  • 404 : "Subscriber does not exist"
  • 400 : "Unknown key, the key provided in the request is invalid"
  • 404: "Data field does not exist"

Provisioning Operations for PCF Data

This section provides provisioning operations for PCF data.

Resource Name: AM, SM, UEPolicySet

HTTP Method: PUT, GET, DELETE

Base URI: {apiRoot}/nudr-dr-prov/v1/policy-data/{ueId}
Operation Type Sample REST URL Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v2/policy-data/msisdn-461772271137732

Payload: See PUT-AM SM UEPolicyData

  • 400 : "Blob syntax error with corresponding error details"
  • 400 : "Invalid URI sent from client"
  • 404 : "Subscriber does not exist"
PUT (update or delete PCF data) update am-data and delete sm-data

Payload: See PUT - update am-data and delete sm-data

 
GET http://localhost:8080/nudr-dr-prov/v2/policy-data/msisdn-461772271137732
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
DELETE http://localhost:8080/nudr-dr-prov/v2/policy-data/msisdn-461772271137732
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"

Subscription Operations for PCF Data

In this section, you will learn about PCF Subscription Notifiction Formats.
Request Notification Formats
PUT/PATCH
[{'ue-id': 'msisdn-7777777779', 'smPolicyData': {'umData': {'mk1': 
{'scopes': {'11-abc123': {'dnn': ['dnn1'], 'snssai': {'sd': 'abc123', 
'sst': 11}}, '22-abc123': {'dnn': ['dnn2'], 'snssai': {'sd': 'abc123', 
'sst': 22}}, '33-abc123': {'dnn': ['dnn1', 'dnn2'], 'snssai': {'sd': 
'abc123', 'sst': 33}}}, 'limitId': 'mk1', 'umLevel': 'SERVICE_LEVEL', 
'resetTime': {'period': 'YEARLY'}, 'allowedUsage': {'duration': 9000, 
'totalVolume': 8888, 'uplinkVolume': 6666, 'downlinkVolume': 7777}}}, 
'umDataLimits': {'mk1': {'scopes': {'11-abc123': {'dnn': ['dnn1'], 
'snssai': {'sd': 'abc123', 'sst': 11}}, '22-abc123': {'dnn': ['dnn2'], 
'snssai': {'sd': 'abc123', 'sst': 22}}, '33-abc123': {'dnn': ['dnn1', 
'dnn2'], 'snssai': {'sd': 'abc123', 'sst': 33}}}, 'endDate': 
'2018-11-05T08:17:14.090Z', 'limitId': 'mk1', 'umLevel': 'SESSION_LEVEL', 
'startDate': '2018-09-05T08:17:14.090Z', 'usageLimit': {'duration': 6000, 
'totalVolume': 9000, 'uplinkVolume': 5000, 'downlinkVolume': 4000}, 
'resetPeriod': '2018-01-02T08:17:14.090Z'}}, 'smPolicySnssaiData': 
{'11-abc123': {'snssai': {'sd': 'abc123', 'sst': 11}, 'smPolicyDnnData': 
{'dnn1': {'dnn': 'dnn1', 'gbrDl': '7788 Kbps', 'gbrUl': '5566 Kbps', 
'online': True, 'chfInfo': {'primaryChfAddress': '1.1.1.1', 
'secondaryChfAddress': '2.2.2.2'}, 'offline': True, 'praInfos': 
{'p1': {'praId': 'p1', 'ecgiList': [{'plmnId': {'mcc': '976', 'mnc': '32'}, 
'eutraCellId': '92FFdBE'}, {'plmnId': {'mcc': '977', 'mnc': '33'}, 
'eutraCellId': '8F868C4'}], 'ncgiList': [{'plmnId': {'mcc': '976', 'mnc':
 '32'}, 'nrCellId': 'b2fB6fE9D'}, {'plmnId': {'mcc': '977', 'mnc': '33'}, 
'nrCellId': '5d1B4127b'}], 'trackingAreaList': [{'tac': '5CB6', 'plmnId': 
{'mcc': '976', 'mnc': '32'}}, {'tac': '5CB7', 'plmnId': {'mcc': '977', 
'mnc': '33'}}], 'globalRanNodeIdList': [{'plmnId': {'mcc': '965', 'mnc': 
'235'}, 'n3IwfId': 'fFf0f2AFbFa16CEfE7'}, {'gNbId': {'gNBValue': '1A8F1D', 
'bitLength': 25}, 'plmnId': {'mcc': '967', 'mnc': '238'}}]}}, 'bdtRefIds': 
{'abc': 'xyz', 'xyz': 'bdtRefIds'}, 'ipv4Index': 0, 'ipv6Index': 0, 
'subscCats': ['cat1', 'cat2'], 'adcSupport': True, 'mpsPriority': True,
 'allowedServices': ['ser1', 'ser2'], 'mpsPriorityLevel': 2, 
'imsSignallingPrio': True, 'refUmDataLimitIds': {'mk1': {'monkey': 
['monkey1'], 'limitId': 'mk1'}}, 'subscSpendingLimits': True}}}, 
'22-abc123': {'snssai': {'sd': 'abc123', 'sst': 22}, 'smPolicyDnnData': 
{'dnn2': {'dnn': 'dnn2', 'gbrDl': '7788 Kbps', 'gbrUl': '5566 Kbps', 
'online': True, 'chfInfo': {'primaryChfAddress': 
'1.1.1.1', 'secondaryChfAddress': '2.2.2.2'}, 'offline': True, 
'praInfos': {'p1': {'praId': 'p1', 'ecgiList': [{'plmnId': {'mcc': '976',
 'mnc': '32'}, 'eutraCellId': '92FFdBE'}, {'plmnId': {'mcc': '977', 'mnc'
: '33'}, 'eutraCellId': '8F868C4'}], 'ncgiList': 
[{'plmnId': {'mcc': '976', 'mnc': '32'}, 'nrCellId': 'b2fB6fE9D'},
 {'plmnId': {'mcc': '977', 'mnc': '33'}, 'nrCellId': '5d1B4127b'}], 
'trackingAreaList': [{'tac': '5CB6', 'plmnId': {'mcc': '976', 'mnc': '32'}},
 {'tac': '5CB7', 'plmnId': {'mcc': '977', 'mnc': '33'}}], 
'globalRanNodeIdList': [{'plmnId': {'mcc': '965', 'mnc': '235'}, 
'n3IwfId': 'fFf0f2AFbFa16CEfE7'}, {'gNbId': {'gNBValue': '1A8F1D', 
'bitLength': 25}, 'plmnId': {'mcc': '967', 'mnc': '238'}}]}}, 
'ipv4Index': 0, 'ipv6Index': 0, 'subscCats': ['cat1', 'cat2'], 
'adcSupport': True, 'mpsPriority': True, 'allowedServices': 
['ser1', 'ser2'], 'mpsPriorityLevel': 2, 'imsSignallingPrio': True,
 'refUmDataLimitIds': {'mk1': {'monkey': ['monkey1'], 'limitId': 'mk1'}},
 'subscSpendingLimits': True}}}, '33-abc123': {'snssai': {'sd': 'abc123',
 'sst': 33}, 'smPolicyDnnData': {'dnn1': {'dnn': 'dnn1', 'gbrDl': 
'7788 Kbps', 'gbrUl': '5566 Kbps', 'online': True, 'chfInfo': 
{'primaryChfAddress': '1.1.1.1', 'secondaryChfAddress': '2.2.2.2'},
 'offline': True, 'praInfos': {'p1': {'praId': 'p1', 'ecgiList': 
[{'plmnId': {'mcc': '976', 'mnc': '32'}, 'eutraCellId': '92FFdBE'}, 
{'plmnId': {'mcc': '977', 'mnc': '33'}, 'eutraCellId': '8F868C4'}]
, 'ncgiList': [{'plmnId': {'mcc': '976', 'mnc': '32'}, 'nrCellId': 
'b2fB6fE9D'}, {'plmnId': {'mcc': '977', 'mnc': '33'}, 'nrCellId': 
'5d1B4127b'}], 'trackingAreaList': [{'tac': '5CB6', 'plmnId': 
{'mcc': '976', 'mnc': '32'}}, {'tac': '5CB7', 'plmnId': 
{'mcc': '977', 'mnc': '33'}}], 'globalRanNodeIdList': [{'plmnId': 
{'mcc': '965', 'mnc': '235'}, 'n3IwfId': 'fFf0f2AFbFa16CEfE7'}, {'gNbId': 
{'gNBValue': '1A8F1D', 'bitLength': 25}, 'plmnId': {'mcc': '967', 
'mnc': '238'}}]}}, 'ipv4Index': 0, 'ipv6Index': 0, 'subscCats': 
['cat1', 'cat2'], 'adcSupport': True, 'mpsPriority': True, 
'allowedServices': ['ser1', 'ser2'], 'mpsPriorityLevel': 2, 
'imsSignallingPrio': True, 'refUmDataLimitIds': {'mk1': {'monkey': 
['monkey1'], 'limitId': 'mk1'}}, 'subscSpendingLimits': True}, 'dnn2': 
{'dnn': 'dnn2', 'gbrDl': '7788 Kbps', 'gbrUl': '5566 Kbps', 'online': 
True, 'chfInfo': {'primaryChfAddress': '1.1.1.1', 'secondaryChfAddress':
 '2.2.2.2'}, 'offline': True, 'praInfos': {'p1': {'praId': 'p1', 
'ecgiList': [{'plmnId': {'mcc': '976', 'mnc': '32'}, 'eutraCellId': 
'92FFdBE'}, {'plmnId': {'mcc': '977', 'mnc': '33'}, 'eutraCellId': 
'8F868C4'}], 'ncgiList': [{'plmnId': {'mcc': '976', 'mnc': '32'}, 
'nrCellId': 'b2fB6fE9D'}, {'plmnId': {'mcc': '977', 'mnc': '33'}, 
'nrCellId': '5d1B4127b'}], 'trackingAreaList': [{'tac': '5CB6', 
'plmnId': {'mcc': '976', 'mnc': '32'}}, 
{'tac': '5CB7', 'plmnId': {'mcc': '977', 'mnc': '33'}}], 
'globalRanNodeIdList': [{'plmnId': {'mcc': '965', 'mnc': '235'},
 'n3IwfId': 'fFf0f2AFbFa16CEfE7'}, {'gNbId': {'gNBValue': '1A8F1D',
 'bitLength': 25}, 'plmnId': {'mcc': '967', 'mnc': '238'}}]}}, 
'ipv4Index': 0, 'ipv6Index': 0, 'subscCats': ['cat1', 'cat2'], 
'adcSupport': True, 'mpsPriority': True, 'allowedServices': 
['ser1', 'ser2'], 'mpsPriorityLevel': 2, 'imsSignallingPrio': True,
 'refUmDataLimitIds': {'mk1': {'monkey': ['monkey1'], 
'limitId': 'mk1'}}, 'subscSpendingLimits': 
True}}}}}}]
DELETE DATA

[{'ueId': 'msisdn-7777777779', 'smPolicyData': None}]
DELETE SUBSCRIBER
[{'ueId': 'msisdn-7777777779', 'uePolicySet': None, 
'amPolicyData': None, 'smPolicyData': None, 'usageMonData'
: None}]

Operations Supported for UDM

This section provides information about the operations supported for UDM as per 29.505 v16.2.

Sub-level Name: Authentication Data

Resource Name: AuthenticationSubscriptionData

HTTP Method: GET, PATCH

Base URI: /subscription-data/{ueId}/authentication-data/authentication-subscription

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-subscription Output:
{
    "encOpcKey": "ABED",
    "encTopcKey": "ACED",
    "algorithmId": "algoID",
    "sequenceNumber": {
        "sqn": "123456789ABE",
        "difSign": "NEGATIVE",
        "indLength": 5,
        "sqnScheme": "GENERAL",
        "lastIndexes": {
            "ausf": 5
        }
    },
    "encPermanentKey": "ABBA",
    "authenticationMethod": "5G_AKA",
    "protectionParameterId": "ProtecID",
    "authenticationManagementField": "ABBE"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-subscription?fields=encOpcKey,algorithmId

Output:
{
    "encOpcKey": "ABED",
    "algorithmId": "algoID"
}
PATCH

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-subscription

Payload:
case1: REPLACE
[{
    "op" : "replace",
    "path" : "/sequenceNumber/sqn",
    "value" : "123456789ABC"
}]
 
 
case2: ADD
case3: REMOVE
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Resource Name: AuthenticationStatus

HTTP Method: PUT, GET

Base URI: /subscription-data/{ueId}/authentication-data/authentication-status

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI:
http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-status Payload:
{
  "nfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
  "success" : true,
  "timeStamp" : "2018-01-02T08:17:14.090Z",
  "authType" : "5G_AKA",
  "servingNetworkName" : "5G:mnc123.mcc456.3gppnetwork.org"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-status?fields=nfInstanceId,success Output:
{
    "nfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
    "success": true
}
 
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/authentication-data/authentication-status Output:
{
    "success": true,
    "authType": "5G_AKA",
    "timeStamp": "2018-01-02T08:17:14.090Z",
    "nfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
    "servingNetworkName": "5G:mnc123.mcc456.3gppnetwork.org"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: Context Data

Resource Name: ContextData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/context-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data Output: See GET-ContextData
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data?context-dataset-names=SMSF_3GPP Output: GET - Context Data - SMSF

Resource Name: Amf3GppAccessRegistration

HTTP Method: PUT, PATCH, GET

Base URI: subscription-data/{ueId}/context-data/amf-3gpp-access

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-3gpp-access

Payload: See PUT - Amf3GppAccessRegistration

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
PATCH Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-3gpp-access Payload: See PATCH - Amf3GppAccessRegistration
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-3gpp-access Output: See GET-Amf3GppAccessRegistration
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-3gpp-access?fields=pei,ratType,epsInterworkingInfo,backupAmfInfo,drFlag Output: See GET-Amf3GppAccessRegistration

Resource Name: AmfNon3GppAccessRegistration

HTTP Method: PUT, PATCH, GET

Base URI: subscription-data/{ueId}/ context-data/amf-non-3gpp-access

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access

Payload: See PUT-AmfNon3GppAccessRegistration

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
PATCH Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access Payload:
case1: REPLACE
[{
    "op" : "replace",
    "path" : "/backupAmfInfo/0/guamiList/0/plmnId/mcc",
    "value" : "998"
}]
case2: ADD
[{
    "op" : "add",
    "path" : "/backupAmfInfo/0/guamiList/1",
    "value" : {
                    "amfId": "5678AA",
                    "plmnId": {
                        "mcc": "666",
                        "mnc": "456"
                    }
              }
}]
case3: REMOVE
[{
    "op" : "remove",
    "path" : "/backupAmfInfo/0/guamiList/2"
}]
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access Output: See GET-AmfNon3GppAccessRegistration
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access?fields=amfInstanceId,guami Output: See GET-AmfNon3GppAccessRegistration

Resource Name: SmfRegistrations

HTTP Method: GET

Base URI: subscription-data/{ueId}/context-data/smf-registrations

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI:

http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smf-registrations

Output:
[
    {
        "supportedFeatures": "supFeature1",
        "dnn": "dnn2",
        "singleNssai": {
            "sd": "abcdef",
            "sst": 32
        },
        "smfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
        "emergencyServices": true,
        "pcscfRestorationCallbackUri": "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
        "plmnId": {
            "mnc": "011",
            "mcc": "001"
        },
        "pduSessionId": 123,
        "pgwFqdn": "abcdefgh"
    }
]
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Resource Name: IndividualSmfRegistration

HTTP Method: PUT, DELETE, GET

Base URI: subscription-data/{ueId}/context-data /smf-registrations/{pduSessionId}

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smf-registrations/123
Payload:
{
  "smfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
  "pduSessionId" : 123,
  "singleNssai" : {
  "sst" : 32,
  "sd" : "abcdef"
  },
  "plmnId" : {
  "mcc" : "001",
  "mnc" : "011"
  },
  "supportedFeatures" : "supFeature1",
  "dnn" : "dnn2",
  "emergencyServices" : true,
  "pcscfRestorationCallbackUri" : "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
  "pgwFqdn" : "abcdefgh"
  }

Output:
{
  "smfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
  "pduSessionId" : 123,
  "singleNssai" : {
  "sst" : 32,
  "sd" : "abcdef"
  },
  "plmnId" : {
  "mcc" : "001",
  "mnc" : "011"
  },
  "supportedFeatures" : "supFeature1",
  "dnn" : "dnn2",
  "emergencyServices" : true,
  "pcscfRestorationCallbackUri" : "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
  "pgwFqdn" : "abcdefgh"
  }

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smf-registrations/123  
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smf-registrations/123 Output:
{
    "dnn": "dnn2",
    "plmnId": {
        "mcc": "001",
        "mnc": "011"
    },
    "pgwFqdn": "abcdefgh",
    "singleNssai": {
        "sd": "abcdef",
        "sst": 32
    },
    "pduSessionId": 123,
    "smfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
    "emergencyServices": true,
    "supportedFeatures": "supFeature1",
    "pcscfRestorationCallbackUri": "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smf-registrations/123?fields=singleNssai,smfInstanceId

Output:
{
    "singleNssai": {
        "sd": "abcdef",
        "sst": 32
    },
    "smfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9"
}

Resource Name: Smf3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Base URI: subscription-data/{ueId}/context-data /smsf-3gpp-access

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access
Payload:
{
    {
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access Output:
{
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "smsfMAPAddress": "977347916",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access?fields=smsfDiameterAddress,smsfMAPAddress Output:
{
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}

Resource Name: SmfNon3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Base URI: subscription-data/{ueId}/context-data /smsf-non-3gpp-access

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

Payload:
{
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "smsfMAPAddress": "977347916",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

GET

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

Output:
{
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "smsfMAPAddress": "977347916",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access?fields=smsfMAPAddress,smsfDiameterAddress Output:
{
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}

Resource Name: AccessAndMobilitySubscriptionData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/{servingPlmnId}/provisioned-data /am-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889//provisioned-data/am-data Output: See GET - AccessAndMobilitySubscriptionData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/am-data?fields=gpsis,nssai,sorInfo Output: See PUT-AccessAndMobilitySubscriptionData

Resource Name: SmfSelectionSubscriptionData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/{servingPlmnId}/provisioned-data/smf-selection-subscription-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data Output:
{
    "supportedFeatures": "692F296F2Cb3BCA76Bc1E126FeEC12",
    "sharedSnssaiInfosId": "96367-9z}MD*",
    "subscribedSnssaiInfos": {
        "snsai1": {
            "dnnInfos": [{
                    "dnn": "Dnn1",
                    "iwkEpsInd": true,
                    "lboRoamingAllowed": true,
                    "defaultDnnIndicator": true
                },
                {
                    "dnn": "Dnn2",
                    "iwkEpsInd": true,
                    "lboRoamingAllowed": true,
                    "defaultDnnIndicator": false
                }
            ]
        }
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data?fields=subscribedSnssaiInfos,supportedFeatures Output:
{
    "supportedFeatures": "692F296F2Cb3BCA76Bc1E126FeEC12",
    "subscribedSnssaiInfos": {
        "snsai1": {
            "dnnInfos": [
                {
                    "defaultDnnIndicator": true,
                    "iwkEpsInd": true,
                    "dnn": "Dnn1",
                    "lboRoamingAllowed": true
                },
                {
                    "defaultDnnIndicator": false,
                    "iwkEpsInd": true,
                    "dnn": "Dnn2",
                    "lboRoamingAllowed": true
                }
            ]
        }
    }
}

Resource Name: SessionManagementSubscriptionData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/{servingPlmnId}/provisioned-data/sm-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data Output: GET-SessionManagementSubscriptionData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data?fields=internalGroupIds,singleNssai

Output:
[
    {
        "singleNssai": {
            "sd": "ABC654",
            "sst": 1
        },
        "internalGroupIds": [
            "9ABAB803-203-299-95A9",
            "9ABAB803-203-299-95A2",
            "79e0c480-719-085-f2A55e6DDc91Df802438"
        ]
    }
]

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/77889/provisioned-data/sm-data?single-nssai=1-ABC654&dnn=dnn1&fields=internalGroupIds,singleNssai

Output:
[
{
   "singleNssai": {
       "sd": "ABC654",
       "sst": 1
   },
   "internalGroupIds": [
       "9ABAB803-203-299-95A9",
       "9ABAB803-203-299-95A2",
       "79e0c480-719-085-f2A55e6DDc91Df802438"
   ]
}
]

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/77889/provisioned-data/sm-data?dnn=dnn1&fields=internalGroupIds,singleNssai

sm-data should be provisioned for a subscriber with same ueId, same servingPlmId but different single-Nssai

Output:
[
    {
        "singleNssai": {
            "sd": "ABC654",
            "sst": 1
        },
        "internalGroupIds": [
            "9ABAB803-203-299-95A9",
            "9ABAB803-203-299-95A2",
            "79e0c480-719-085-f2A55e6DDc91Df802438"
        ]
    },
    {
        "singleNssai": {
            "sst": 2
        },
        "internalGroupIds": [
            "9ABAB803-203-299-95A9",
            "9ABAB803-203-299-95A2",
            "79e0c480-719-085-f2A55e6DDc91Df802438"
        ]
    }
]

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/77889/provisioned-data/sm-data?single-nssai=1-ABC654&fields=internalGroupIds,singleNssai

Output:
[
{
   "singleNssai": {
       "sd": "ABC654",
       "sst": 1
   },
   "internalGroupIds": [
       "9ABAB803-203-299-95A9",
       "9ABAB803-203-299-95A2",
       "79e0c480-719-085-f2A55e6DDc91Df802438"
   ]
}
]

Resource Name: SMSManagementSubscriptionData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/{servingPlmnId}/provisioned-data/sms-mng-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data/sms-mng-data Output:
{
    "moSmsBarringAll": true,
    "moSmsSubscribed": false,
    "mtSmsBarringAll": true,
    "mtSmsSubscribed": true,
    "supportedFeatures": "CAe8de215CFa721BB2AE7Ef9c5f71a2e",
    "moSmsBarringRoaming": true,
    "mtSmsBarringRoaming": false,
    "sharedSmsMngDataIds": [
        "16994-'JD",
        "693599-9~~GX"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Resource Name: TraceData

HTTP Method: GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/77889/provisioned-data/trace-data Output:
{
    "traceRef": "070207-baE6Dd",
    "eventList": "855B5bf7beC3AFB8c",
    "neTypeList": "0f4FBEfe95bF8",
    "traceDepth": "MINIMUM",
    "collectionEntityIpv4Addr": "26.118.255.253",
    "collectionEntityIpv6Addr": "2001:db8:85a3::8a2e:370:7334"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Resource Name: SMSSubscriptionData

HTTP Method: GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/77889/provisioned-data/sms-data Output:
{ 
   "smsSubscribed":true,
   "sharedSmsSubsDataId":"63472-BTkzoYkBL1"
}

Sub-level Name: Provisioned Data

Resource Name: ProvisionedData

HTTP Method: GET

Base URI: /subscription-data/{ueId}/{servingPlmnId}/provisioned-data

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI:

http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data

Output: GET-ProvisionedData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sample URI: http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000089/77889/provisioned-data?dataset-names=AM,SM

Output: GET-ProvisionedData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: ue-update-confirmation-data

Resource Name: Sor-data

HTTP Method: GET, PUT

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/ue-update-confirmation-data/sor-data Output:
{
    "sorMacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1A",
    "sorXmacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1F",
    "ueUpdateStatus": "NOT_SENT",
    "provisioningTime": "2012-04-23T18:25:43.511Z"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
PUT Sample URI:

http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/ue-update-confirmation-data/sor-data

Payload:

{
    "provisioningTime": "2012-04-23T18:25:43.511Z",
    "ueUpdateStatus": "NOT_SENT",
    "sorXmacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1F",
    "sorMacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1A"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"

Sub-level Name: OperatorSpecificData

HTTP Method: GET, PATCH

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/operator-specific-data Output:
{
    "NumberTypeElements": {
        "1": 1.1
    },
    "StringTypeElements": {
        "1": "s"
    },
    "BooleanTypeElements": {
        "1": true
    },
    "IntegerTypeElements": {
        "1": 1
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
PATCH http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/operator-specific-data
Payload:
case1: REPLACE
[{
    "op" : "replace",
    "path" : "/IntegerTypeElements/1",
    "value" : 2
}]
Case2: ADD

case3: REMOVE
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: OperatorDeterminedBarringData

HTTP Method: GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/operator-determined-barring-data Output:
{
    "roamingOdb": "OUTSIDE_HOME_PLMN"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: ProvisionedParameterData

HTTP Method: PATCH, GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PATCH http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/pp-data
Payload:
case1: REPLACE
[{
    "op" : "replace",
    "path" : "/communicationCharacteristics/ppSubsRegTimer/subsRegTimer",
    "value" : 13
}]
case2: ADD
case3: REMOVE
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/pp-data Output:
{
    "supportedFeatures": "751b",
    "communicationCharacteristics": {
        "ppActiveTime": {
            "activeTime": 23,
            "referenceId": 2,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4"
        },
        "ppSubsRegTimer": {
            "referenceId": 1,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4",
            "subsRegTimer": 12
        },
        "ppDlPacketCount": 1
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: EeProfileData

HTTP Method: GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/ee-profile-data Output:
{
    "supportedFeatures": "fcB2fFC084Fc2d5B4Afcfa2Df8614",
    "restrictedEventTypes": [
        "LOSS_OF_CONNECTIVITY",
        "CHANGE_OF_SUPI_PEI_ASSOCIATION"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/ee-profile-data?fields=restrictedEventTypes Output:
{
    "restrictedEventTypes": [
        "LOSS_OF_CONNECTIVITY",
        "CHANGE_OF_SUPI_PEI_ASSOCIATION"
    ]
}

Sub-level Name: IdentityData

HTTP Method: GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr/v2/subscription-data/imsi-911000000028/identity-data Output:
{
    "gpsiList": [
        "msisdn-101176983803402"
    ],
    "supiList": [
        "imsi-516737872",
        "imsi-516737873"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Provisioning Operations for UDM Data

This section provides information about the operations supported for UDM data through provisioning interface.

Resource Name: AuthenticationSubscriptionData

HTTP Method: GET, PUT, DELETE

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-subscription

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI:

https://10.75.212.116:31873/nudr-dr-prov/v1/subscription-data/msisdn-7777777779/authentication-data/authentication-subscription

{
    "encOpcKey": "ABED",
    "encTopcKey": "ACED",
    "algorithmId": "algoID",
    "sequenceNumber": {
        "sqn": "123456789ABE",
        "difSign": "NEGATIVE",
        "indLength": 5,
        "sqnScheme": "GENERAL",
        "lastIndexes": {
            "ausf": 5
        }
    },
    "encPermanentKey": "ABBA",
    "authenticationMethod": "5G_AKA",
    "protectionParameterId": "ProtecID",
    "authenticationManagementField": "ABBE"
}
  • 400: "Invalid URI sent from client"
  • 404: "Data field does not exist "
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-subscription?fields=encOpcKey,algorithmId

{
    "encOpcKey": "ABED",
    "algorithmId": "algoID"
}
 
PUT

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-subscription

Payload:
{
  "authenticationMethod" : "5G_AKA",
  "encPermanentKey" : "ABBA",
  "protectionParameterId" : "ProtecID",
  "sequenceNumber" : {
  "sqnScheme" : "GENERAL",
  "sqn" : "123456789ABE",
  "lastIndexes" : {
  "ausf" : 5
  },
  "indLength" : 5,
  "difSign" : "NEGATIVE"
  },
  "authenticationManagementField" : "ABBE",
  "algorithmId" : "algoID",
  "encOpcKey" : "ABED",
  "encTopcKey" : "ACED"
}
 
  • 400: " Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-subscription    

Resource Name: AuthenticationStatus

HTTP Method: PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-status Payload:
{
  "nfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
  "success" : true,
  "timeStamp" : "2018-01-02T08:17:14.090Z",
  "authType" : "5G_AKA",
  "servingNetworkName" : "5G:mnc123.mcc456.3gppnetwork.org"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-status

{
    "success": true,
    "authType": "5G_AKA",
    "timeStamp": "2018-01-02T08:17:14.090Z",
    "nfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
    "servingNetworkName": "5G:mnc123.mcc456.3gppnetwork.org"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-status?fields=nfInstanceId
{
    "nfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9"
}
 
DELETE Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/authentication-data/authentication-status

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"

Sub-level Name: Context Data

Resource Name: Amf3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-3gpp-access

Payload: See PUT-Amf3GppAccessRegistration

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-3gpp-access

Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-3gpp-access/all

   
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-3gpp-access?fields=pei,guami Output:
 {
    "pei": "imei-1000000000000001",
    "guami": {
        "plmnId": {
            "mnc": "123",
            "mcc": "001"
        },
        "amfId": "1234AA"
    }
}
 
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-3gpp-access/all Output: GET - Amf3GppAccessRegistration

Resource Name: AmfNon3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Base URI: subscription-data/{ueId}/ context-data/amf-non-3gpp-access

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access

Payload: See PUT-AmfNon3GppAccessRegistration

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE

Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000025/context-data/amf-non-3gpp-access/all    
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access Output: See GET-AmfNon3GppAccessRegistration
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/amf-non-3gpp-access?fields=backupAmfInfo,ratType Output:
{
    "ratType": "WLAN",
    "backupAmfInfo": [
        {
            "AmfName": "amf1.cluster1.net2.amf.5gc.mnc012.mcc345.3gppnetwork.org",
            "guamiList": [
                {
                    "plmnId": {
                        "mnc": "456",
                        "mcc": "002"
                    },
                    "amfId": "5678AA"
                },
                {
                    "plmnId": {
                        "mnc": "789",
                        "mcc": "003"
                    },
                    "amfId": "9876AA"
                }
            ]
        }
    ]
}

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000025/context-data/amf-non-3gpp-access/all    

Resource Name: SmfRegistrations

HTTP Method: GET, DELETE

Base URI: subscription-data/{ueId}/context-data/smf-registrations

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations Output:
[
    {
        "supportedFeatures": "supFeature1",
        "dnn": "dnn2",
        "singleNssai": {
            "sd": "abcdef",
            "sst": 32
        },
        "smfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
        "emergencyServices": true,
        "pcscfRestorationCallbackUri": "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
        "plmnId": {
            "mnc": "011",
            "mcc": "001"
        },
        "pduSessionId": 123,
        "pgwFqdn": "abcdefgh"
    }
]
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
DELETE

Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations

Resource Name: IndividualSmfRegistration

HTTP Method: PUT, DELETE, GET

Base URI: subscription-data/{ueId}/context-data /smf-registrations/{pduSessionId}

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations/123
Payload:
{
 "smfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
 "pduSessionId" : 123,
 "singleNssai" : {
 "sst" : 32,
 "sd" : "abcdef"
 },
 "plmnId" : {
 "mcc" : "001",
 "mnc" : "011"
 },
 "supportedFeatures" : "supFeature1",
 "dnn" : "dnn2",
 "emergencyServices" : true,
 "pcscfRestorationCallbackUri" : "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
 "pgwFqdn" : "abcdefgh"
 }
Output:
{
 "smfInstanceId" : "abae35e5-cc45-4016-8dd4-89598e5311b9",
 "pduSessionId" : 123,
 "singleNssai" : {
 "sst" : 32,
 "sd" : "abcdef"
 },
 "plmnId" : {
 "mcc" : "001",
 "mnc" : "011"
 },
 "supportedFeatures" : "supFeature1",
 "dnn" : "dnn2",
 "emergencyServices" : true,
 "pcscfRestorationCallbackUri" : "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances",
 "pgwFqdn" : "abcdefgh"
 }


  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations/123
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations/123 Output:
{
 "dnn": "dnn2",
 "plmnId": {
 "mcc": "001",
 "mnc": "011"
 },
 "pgwFqdn": "abcdefgh",
 "singleNssai": {
 "sd": "abcdef",
 "sst": 32
 },
 "pduSessionId": 123,
 "smfInstanceId": "abae35e5-cc45-4016-8dd4-89598e5311b9",
 "emergencyServices": true,
 "supportedFeatures": "supFeature1",
 "pcscfRestorationCallbackUri": "http://ocnrf-ambassador.default.svc.cluster.local/nnrf-nfm/v1/nf-instances"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smf-registrations/123?fields=dnn Output:

{
    "dnn": "dnn2",
    "emergencyServices": true
}

Resource Name: Smsf3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access
Payload:
{
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access Output:
{
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-3gpp-access?fields=plmnId,smsfInstanceId Output:
{
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "plmnId": {
        "mnc": "45",
        "mcc": "452"
    }
}

Resource Name: SmsfNon3GppAccessRegistration

HTTP Method: PUT, DELETE, GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

Payload:
{
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

GET

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access

Output:
{
    "smsfInstanceId": "69d3da66-9e25-11e9-a2a3-2a2ae2dbcce4",
    "supportedFeatures": "BA2b5d3b977eF2458EEC80592E",
    "plmnId": {
        "mcc": "452",
        "mnc": "45"
    },
    "smsfMAPAddress": "977347916",
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/context-data/smsf-non-3gpp-access?fields=plmnId,smsfDiameterAddress Output:
{
    "plmnId": {
        "mnc": "45",
        "mcc": "452"
    },
    "smsfDiameterAddress": {
        "name": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh",
        "realm": "uLmBAnz2b7S6OevNkC7tHvcEZidEXppNIp7Le9yXzucgboiXFRkYg6597LBi31nOBxEBV2ZePCfKpUiEB0ULZMxudPsPepud.emteshurwdldooeh"
    }
}

Resource Name: AccessAndMobilitySubscriptionData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/am-data Sample Output:GET-AccessAndMobilitySubscriptionData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist in data table"
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/am-data?fields=gpsis,nssai,sorInfo  
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist in data table"
PUT Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/am-data

Payload: See PUT - AccessAndMobilitySubscriptionData
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI:

http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/am-data

 

Resource Name: SmfSelectionSubscriptionData

HTTP Method: PUT, DELETE, GET

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data
Payload:
{
    "supportedFeatures": "692F296F2Cb3BCA76Bc1E126FeEC12",
    "subscribedSnssaiInfos" :{
        "snsai1":{"dnnInfos":[
            {
                "dnn":"Dnn1",
                "defaultDnnIndicator": true,
                "lboRoamingAllowed":true,
                "iwkEpsInd": true
            },
            {
                "dnn":"Dnn2",
                "defaultDnnIndicator": false,
                "lboRoamingAllowed":true,
                "iwkEpsInd": true
            }
        ]}
    },
    "sharedSnssaiInfosId":"96367-9z}MD*"
      
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data Output:
{
    "supportedFeatures": "692F296F2Cb3BCA76Bc1E126FeEC12",
    "sharedSnssaiInfosId": "96367-9z}MD*",
    "subscribedSnssaiInfos": {
        "snsai1": {
            "dnnInfos": [{
                    "dnn": "Dnn1",
                    "iwkEpsInd": true,
                    "lboRoamingAllowed": true,
                    "defaultDnnIndicator": true
                },
                {
                    "dnn": "Dnn2",
                    "iwkEpsInd": true,
                    "lboRoamingAllowed": true,
                    "defaultDnnIndicator": false
                }
            ]
        }
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/smf-selection-subscription-data?fields=subscribedSnssaiInfos Output:
{
    "subscribedSnssaiInfos": {
        "snsai1": {
            "dnnInfos": [
                {
                    "defaultDnnIndicator": true,
                    "iwkEpsInd": true,
                    "dnn": "Dnn1",
                    "lboRoamingAllowed": true
                },
                {
                    "defaultDnnIndicator": false,
                    "iwkEpsInd": true,
                    "dnn": "Dnn2",
                    "lboRoamingAllowed": true
                }
            ]
        }
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Resource Name: SessionManagementSubscriptionData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data Output: GET-SessionManagementSubscriptionData- Provisioning
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data?fields=internalGroupIds,dnnConfigurations Output: GET-SessionManagementSubscriptionData- Provisioning
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
PUT Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data

Payload: PUT-SessionManagementSubscriptionData

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sm-data

Resource Name: SMSManagementSubscriptionData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sms-mng-data Output:
{
    "moSmsBarringAll": true,
    "moSmsSubscribed": false,
    "mtSmsBarringAll": true,
    "mtSmsSubscribed": true,
    "supportedFeatures": "CAe8de215CFa721BB2AE7Ef9c5f71a2e",
    "moSmsBarringRoaming": true,
    "mtSmsBarringRoaming": false,
    "sharedSmsMngDataIds": [
        "16994-'JD",
        "693599-9~~GX"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sms-mng-data?fields=mtSmsSubscribed,sharedSmsMngDataIds Output:
{
    "mtSmsSubscribed": true,
    "sharedSmsMngDataIds": [
        "16994-'JD",
        "693599-9~~GX"
    ]
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
PUT

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sms-mng-data

Payload:

{
    "supportedFeatures":"CAe8de215CFa721BB2AE7Ef9c5f71a2e",
    "mtSmsSubscribed":true,
    "mtSmsBarringAll":true,
    "mtSmsBarringRoaming":false,
    "moSmsSubscribed":false,
    "moSmsBarringAll":true,
    "moSmsBarringRoaming":true,
    "sharedSmsMngDataIds":["16994-'JD","693599-9~~GX"]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE

Sample URI: http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000089/77889/provisioned-data/sms-mng-data

Resource Name: TraceData

HTTP Method: PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/trace-data
{
    "traceRef":"070207-baE6Dd",
    "traceDepth": "MINIMUM",
    "neTypeList": "0f4FBEfe95bF8",
    "eventList":  "855B5bf7beC3AFB8c",
    "collectionEntityIpv4Addr": "26.118.255.253",
    "collectionEntityIpv6Addr": "2001:db8:85a3::8a2e:370:7334"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/trace-data Output:
{
    "traceRef": "070207-baE6Dd",
    "eventList": "855B5bf7beC3AFB8c",
    "neTypeList": "0f4FBEfe95bF8",
    "traceDepth": "MINIMUM",
    "collectionEntityIpv4Addr": "26.118.255.253",
    "collectionEntityIpv6Addr": "2001:db8:85a3::8a2e:370:7334"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/trace-data

Resource Name: SMSSubscriptionData

HTTP Method:PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/sms-data

Payload:

{ 
   "smsSubscribed":true,
   "sharedSmsSubsDataId":"63472-BTkzoYkBL1"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/sms-data Output:
{ 
   "smsSubscribed":true,
   "sharedSmsSubsDataId":"63472-BTkzoYkBL1"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/77889/provisioned-data/sms-data

Sub-level Name: OperatorSpecificData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-specific-data Output:
{
    "NumberTypeElements": {
        "1": 1.1
    },
    "StringTypeElements": {
        "1": "s"
    },
    "BooleanTypeElements": {
        "1": true
    },
    "IntegerTypeElements": {
        "1": 1
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-specific-data?fields=NumberTypeElements Output:
{
    "NumberTypeElements": {
        "1": 1.1
    }
}
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-specific-data
Payload:
{
    "StringTypeElements": {
        "1": "s"
   },
    "IntegerTypeElements": {
        "1": 1
    },
    "NumberTypeElements": {
        "1": 1.1
    },
    "BooleanTypeElements": {
        "1": true
    }
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-specific-data

Sub-level Name: OperatorDeterminedBarringData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-determined-barring-data

Payload:

{
    "roamingOdb": "OUTSIDE_HOME_PLMN"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-determined-barring-data
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/operator-determined-barring-data Output:
{
    "roamingOdb": "OUTSIDE_HOME_PLMN"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: ProvisionedParameterData

HTTP Method: GET, PUT, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/pp-data
Payload:
{
    "communicationCharacteristics": {
        "ppSubsRegTimer": {
            "subsRegTimer": 12,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4",
            "referenceId": 1
        },
 
        "ppActiveTime": {
            "activeTime": 23,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4",
            "referenceId": 2
 
        },
        "ppDlPacketCount": 1
 
    },
 
    "supportedFeatures": "751b"
 
 
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/pp-data
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/pp-data Output:
{
    "supportedFeatures": "751b",
    "communicationCharacteristics": {
        "ppActiveTime": {
            "activeTime": 23,
            "referenceId": 2,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4"
        },
        "ppSubsRegTimer": {
            "referenceId": 1,
            "afInstanceId": "f9dc5b9c-a460-11e9-a2a3-2a2ae2dbcce4",
            "subsRegTimer": 12
        },
        "ppDlPacketCount": 1
    }
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "

Sub-level Name: EeProfileData

HTTP Method: PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ee-profile-data
Payload:
{
    "restrictedEventTypes":["LOSS_OF_CONNECTIVITY","CHANGE_OF_SUPI_PEI_ASSOCIATION"],
      "supportedFeatures":"fcB2fFC084Fc2d5B4Afcfa2Df8614"
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ee-profile-data Output:
{
    "supportedFeatures": "fcB2fFC084Fc2d5B4Afcfa2Df8614",
    "restrictedEventTypes": [
        "LOSS_OF_CONNECTIVITY",
        "CHANGE_OF_SUPI_PEI_ASSOCIATION"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ee-profile-data?fields=restrictedEventTypes Output:
{
    "restrictedEventTypes": [
        "LOSS_OF_CONNECTIVITY",
        "CHANGE_OF_SUPI_PEI_ASSOCIATION"
    ]
}

DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ee-profile-data

Sub-level Name: IdentityData

HTTP Method: PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/identity-data
{
    "supiList":["imsi-516737872","imsi-516737873"],
    "gpsiList": ["msisdn-101176983803402"]
}
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/identity-data Output:
{
    "gpsiList": [
        "msisdn-101176983803402"
    ],
    "supiList": [
        "imsi-516737872",
        "imsi-516737873"
    ]
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/identity-data

Sub-level Name: ue-update-confirmation-data

Resource Name: Sor-data

HTTP Method: PUT, GET, DELETE

Operation Type Sample Request REST URL Sample Response Possible Error Codes
PUT http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ue-update-confirmation-data/sor-data
{
    "provisioningTime": "2012-04-23T18:25:43.511Z",
    "ueUpdateStatus": "NOT_SENT",
    "sorXmacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1F",
    "sorMacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1A"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
GET http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ue-update-confirmation-data/sor-data Output:
{
    "sorMacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1A",
    "sorXmacIue": "3a84eBBb8C694Cce4ebA2FCC9307af1F",
    "ueUpdateStatus": "NOT_SENT",
    "provisioningTime": "2012-04-23T18:25:43.511Z"
}

  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist "
DELETE http://localhost:8080/nudr-dr-prov/v1/subscription-data/imsi-911000000028/ue-update-confirmation-data/sor-data

Subscription Operations for UDM Data

This table provides information about the subscription operations for UDM data.

Operations Type Sample Request REST URL Sample Response Possible Error codes
POST Header-Location: http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions RequestData:

See POST-SDMSubscriptions

Header-Location: http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions/5 Output: See POST-SDMSubscriptions
  • 400: "Duplicate subscription"
  • 404: "Subscriber does not exist"
  • 400: "Schema Validation failure "
  • 404: "Data does not exist "
PUT http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions/5 RequestData:

See PUT - SDMSubscriptions

-
  • 400: "Duplicate subscription"
  • 404: "Subscriber does not exist"
  • 400: "Schema Validation failure "
  • 404: "Data does not exist "
GET http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions Output See: GET-SDMSubscriptions
  • 404: "Subscriber does not exist"
  • 404: "Data does not exist "
PATCH http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions/5 RequestData:
[
    {
    "op": "replace",
    "path": "/dnn",
    "value": "sbsb"
    }
]
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data does not exist "
DELETE http://localhost:8080/nudr-dr/v2/subscription-data/nai-990991@nai/context-data/sdm-subscriptions/5
  • 404: "Subscriber does not exist"
  • 404: "Subscription not found"
POST http://localhost:8080/nudr-dr/v2/subscription-data/subs-to-notify RequestData: SeePost-SubscriptionDataSubscriptions Output: See Post-Output-SubscriptionDataSubscriptions
  • 400: "Invalid Data Content"
  • 400: "Duplicate subscription"
  • 404: "Subscriber does not exist"
  • 400: "Schema Validation failure "
  • 404: "Data does not exist "
GET http://localhost:8080/nudr-dr/v2/subscription-data/subs-to-notify?ue-id=nai-990991@nai Output: See Get-Output-SubscriptionDataSubscriptions
  • 400: "Invalid URI sent from client "
PATCH http://localhost:8080/nudr-dr/v2/subscription-data/subs-to-notify/7 RequestData:
[
    {
    "op": "replace",
    "path": "/supportedFeatures",
    "value": "sf"
    }
]
DELETE http://localhost:8080/nudr-dr/v2/subscription-data/subs-to-notify?ue-id=nai-990991@nai,delete-all-nfs=true,nf-instance-id=cb59c48c-a2fa-11e9-a2a3-2a2ae2dbcce4,implicit-unsubscribe-indication=true

Operations Supported for SLF Data

This section provides information about operations supported for SLF Data feature.

Note:

These APIs are compliant with 3GPP TS 29.504 v16.2.0
Operation Type Sample Request Sample Response Notes
GET http://localhost:8080/nudr-group-id-map/v1/nf-group-ids?subscriber-id=msisdn-1111111111&nf-type=udm

200 OK

Response Body:

{"nfGroupIDs": {"UDM":"udm-group-name"}}
subscriber-id and nf-type parameters are mandatory in URI
GET http://localhost:8080/nudr-group-id-map/v1/nf-group-ids?subscriber-id=msisdn-1111111111&nf-type=udm,ausf,nef 200 OK

{"nfGroupIDs": {"AUSF":"ausf-group-name","NEF":"nef-group-name","UDM":"udm-group-name"}}

subscriber-id and nf-type parameters are mandatory in URI

Provisioning Operations for SLF Data

The provisioning operations for SLF data are as follows:

Note:

The following table has provisioning operations for SLF GroupName.
Operation Type Sample Request Sample Response Notes
PUT http://localhost:8080/slf-group-prov/v1/slf-group
{
    "slfGroupName": "IMSGrp1",
    "slfGroupType": "LteHss",
    "nfGroupIDs": {
        "NEF": "nef-group-name1",
        "UDM": "udm-group-name1",
        "PCF": "pcf-group-name1",
        "AUSF": "ausf-group-name1"
    }
}

201 Created

 
DELETE http://localhost:8080/slf-group-prov/v1/slf-group?slfGroupName="IMSGrp1" 204 No Content  
GET http://localhost:8080/slf-group-prov/v1/slf-group?slfGroupName="IMSGrp1" 200 OK
{
    "slfGroupName": "IMSGrp1",
    "slfGroupType": "LteHss",
    "nfGroupIDs": {
        "NEF": "nef-group-name1",
        "UDM": "udm-group-name1",
        "PCF": "pcf-group-name1",
        "AUSF": "ausf-group-name1"
    }
}
 

Following table shows the SLF Subscriber Provisioning APIs on UDR (SLF).

Operation Type Sample request Sample response Notes
DELETE

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountID-12345678912345678912345678

204 No Content  
GET http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountID-12345678912345678912345678

200 OK

Response
{
    "profile-data": {
        "imsi": ["2222222221", "2222222222"],
        "nai": ["test@vzw.com"],
        "accountID": ["12345678912345678912345678"],
        "msisdn": ["19195225555", "19195225556"],
        "extid": ["user@vzw.com"]
    },
    "slfGroupName": "IMSGrp1"
}
You must provision SLFGroupName before provisioning subscriber.
PUT

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountID-12345678912345678912345678

Body
{
    "profile-data": {
        "imsi": ["2222222221", "2222222222"],
        "nai": ["test@vzw.com"],
        "accountID": ["12345678912345678912345678"],
        "msisdn": ["19195225555", "19195225556"],
        "extid": ["user@vzw.com"]
    },
    "slfGroupName": "IMSGrp1"
}
201 Created  

Operations Supported for Provgw

The provisioning operations for SLF using ProvGw are as follows:

Operation Type Sample Request Sample Response Possible Error Codes Action from provisioning system
Activation

PUT

Note 1

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

{"profile-data": {

“SUPI": “imsi-2222222221",

“accountID": "12345678910",

“GPSI”:”msisdn-19195226666”,

},

"slfGroupName": “IMSGrp1”}

201 Created

400 Bad Request:

"details": {"<FQDN>":"Schema validation failed"}

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

500 Internal Server Error:

"details":{"<SEG>"
: 
"{response}"}

Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

503 Service Unavailable:

"details"
:
{"<FQDN/SEG>":"{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

404 Not Found:

Destination not found

Provisioning request error. See Problem Details.Action: Correct the payload or the key and resend.

Modify SUPI

PUT

Note 1

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

{"profile-data": {

“SUPI": “imsi-3333333333",

“accountID": "12345678910",

“GPSI”:”msisdn-19195226666”,

},

"slfGroupName": “IMSGrp1”}

201 Created

400 Bad Request:

"details": {"<FQDN>":"Schema validation failed"}

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

500 Internal Server Error:

"details":{"<SEG>"
: 
"{response}"}

Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

503 Service Unavailable:

"details"
:
{<FQDN/SEG>":"{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

404 Not Found:

Destination not found

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

Modify GPSI

PUT

Note 1

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

{"profile-data": {

“SUPI": “imsi-2222222221",

“accountID": "12345678910",

“GPSI”:”msisdn-19999999999”,

},

"slfGroupName": “IMSGrp1”}

201 Created

400 Bad Request:

"details": {"<FQDN>":"Schema validation failed"}

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

500 Internal Server Error:

"details":{"<SEG>"
: 
"{response}"}

Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

503 Service Unavailable:
"details"
:
{<FQDN/SEG>":{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

404 Not Found:Destination not found

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

Modify IMS Group

PUT

Note 1

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

{"profile-data": {

“SUPI": “imsi-2222222221",

“accountID": "12345678910",

“GPSI”:”msisdn-19195226666”,

},

"slfGroupName": “IMSGrp2”}

201 Created

400 Bad Request:

"details": {"<FQDN>":"Schema validation failed"}

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

500 Internal Server Error:
"details":{"<SEG>"
: 
"{response}"}
Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

503 Service Unavailable:
"details"
:
{<FQDN/SEG>":{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

404 Not Found:Destination not found

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

Activation with multiple keys in SUPI and GPSI

PUT

Note 1

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

{"profile-data": {

“SUPI": [“imsi-2222222221",

“nai-test@vzw.com”],

“accountID": "12345678910",

“GPSI”: [”msisdn-19195225555” ,

“extid-user@vzw.com”],

},

"slfGroupName": “IMSGrp1”}

201 Created

400 Bad Request:

"details": {"<FQDN>":"Schema validation failed"}

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

500 Internal Server Error:
"details":{"<SEG>"
: 
"{response}"}
Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

503 Service Unavailable:
"details"
:
{<FQDN/SEG>":{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

404 Not Found:Destination not found

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

DELETE

DELETE

Note 2

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910 204 No Content

404 Not Found:

Subscriber does not exist

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

503 Service Unavailable:
"details"
:
{<FQDN/SEG>":{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

500 Internal Server Error:
"details":{"<SEG>"
: 
"{response}"}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

Query

GET

Note 3

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/accountid-12345678910

200 OK

{"profile-data": {

“SUPI": [“imsi-2222222221",

“nai-test@vzw.com”],

“accountID": "12345678910",

“GPSI”: [”msisdn-19195225555” ,

“extid-user@vzw.com”],

},

"slfGroupName": “IMSGrp1”}

404 Not Found:

Subscriber does not exist

Provisioning request error. See Problem Details.

Action: Correct the payload or the key and resend.

GET

Note 3

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/imsi-2222222221 500 Internal Server Error:
"details":{"<SEG>"
: 
"{response}"}
Prov gateway Processing Failed

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

GET

Note 3

http://localhost:8080/nudr-group-id-map-prov/v1/slf-group/msisdn-19195225555 503 Service Unavailable:
"details"
:
{"<FQDN/SEG>":{response}}

Transient error with UDR's Internal error.

Action: Provisioning system to queue and retry the command.

409 Response Conflict:
"details"
:
{"<FQDN/SEG>":{response}, "<FQDN'/SEG'>":{response'}}

Subscriber Data on segments do not match. See Problem Details.

Action: Correct the subscriber data and resend the request.

Note:

You can Provision/Re-provision subscriber based on accountid when a command has all keys and IMS group. Verify all keys that are already provisioned and point to one subscriber. Add keys that do not exist in SLF DB and remove keys that exist in SLF DB but are absent in command. Set IMS group value for the subscriber.
  • Delete subscriber on the basis of accountid. This deletes all keys for subscriber and IMSgroup association.
  • Retrieve subscriber. Return subscriber IMS group and all subscriber keys.

The SLF related error code details are as follows:

Error Codes Title Detail
400 Bad request

Schema Validation Failure

Invalid URI

Key Not Supported

Invalid JSON Format

404 Not Found

Subscriber does not exist

Destination Not Found

Key Not Found

405 Operation Not Allowed Operation Not Allowed
500 Internal Server Error

Invalid Result Set Access

Data Access Denied

Data Access Denied/Resource Failure

Temporary Resource Failure

Acquire Lock Failure

Transaction Rollback

501 Not Implemented Bad SQL Grammar

Management URI Schema Update

The table provides information about the operations supported for management URI schema update.

The OpenAPI for Management URI: mgmapi.yml

Operation Type URI Sample Schema Possible Error Codes
PUT https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data To add a new field, custom for am-data.
Payload:

PUT-schemablob

{ "$schema": "http://json-schema.org/draft-07/schema#"
, "additionalProperties": false, "type": "object", 
"properties": { "subscCats": { "minItems": 1, "type":
 "array", "items": { "type": "string" } }, "custom":
 { "type": "string" }, "praInfos": 
{ "patternProperties": { "^(.*)$": 
{ "additionalProperties": false, "type": "object", 
"properties": { "ecgiList": { "minItems": 1, "type":
 "array", "items": { "additionalProperties": false,
 "type": "object", "required": [ "plmnId", 
"eutraCellId" ], "properties": { "eutraCellId":
 { "pattern": "^[A-Fa-f0-9]{7}$", "type": 
"string" }, "plmnId": { "additionalProperties":
 false, "type": "object", "required": [ "mcc", 
"mnc" ], "properties": { "mnc": { "pattern": 
"^\\d{2,3}$", "type": "string" }, "mcc": 
{ "pattern": "^\\d{3}$", "type": "string" }
 } } } } }, "globalRanNodeIdList": { "minItems":
 1, "type": "array", "items": 
{ "additionalProperties": false, "type": "object",
 "required": [ "plmnId" ], "properties": { "gNbId":
 { "additionalProperties": false, "type": "object",
 "required": [ "bitLength", "gNbValue" ],
 "properties": { "bitLength": { "type": "integer" },
 "gNbValue": { "pattern": "^[A-Fa-f0-9]{6,8}$",
 "type": "string" } } }, "plmnId": 
{ "additionalProperties": false, "type": "object",
 "required": [ "mcc", "mnc" ], "properties":
 { "mnc": { "pattern": "^\\d{2,3}$", "type": "string"
 }, "mcc": { "pattern": "^\\d{3}$", "type": "string" }
 } }, "n3IwfId": { "pattern": "^[A-Fa-f0-9]+$",
 "type": "string" }, "ngeNbId": { "pattern":
 "^(MacroNGeNB-[A-Fa-f0-9]{5}|LMacroNGeNB-[A-Fa-f0-9]
{6}|SMacroNGeNB-[A-Fa-f0-9]{5})$", "type": "string" }
 } } }, "praId": { "type": "string" }, "ncgiList":
 { "minItems": 1, "type": "array", "items": 
{ "additionalProperties": false, "type": "object",
 "required": [ "plmnId", "nrCellId" ], "properties":
 { "plmnId": { "additionalProperties": false, "type":
 "object", "required": [ "mcc", "mnc" ], "properties":
 { "mnc": { "pattern": "^\\d{2,3}$", "type": "string"
 }, "mcc": { "pattern": "^\\d{3}$", "type": "string"
 } } }, "nrCellId": { "pattern": "^[A-Fa-f0-9]{9}$",
 "type": "string" } } } }, "trackingAreaList":
 { "minItems": 1, "type": "array", "items": 
{ "additionalProperties": false, "type": "object",
 "required": [ "plmnId", "tac" ], "properties": 
{ "tac": { "default": "", "pattern": 
"(^[A-Fa-f0-9]{4}$)|(^[A-Fa-f0-9]{6}$)", "type":
 "string" }, "plmnId": { "additionalProperties":
 false, "type": "object", "required": [ "mcc", "mnc" ],
 "properties": { "mnc": { "pattern": "^\\d{2,3}$",
 "type": "string" }, "mcc": { "pattern": "^\\d{3}$",
 "type": "string" } } } } } } } } }, 
"additionalProperties": false } } }

This operation adds one new schema with version tag as "v1" and database points to "v1" now.

To rollback to any other schema version, which already exists in database, see https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data/version/v0.

  • 405: "Operation not allowed" (for nudr-dr)
  • 400: Incase of json syntax error, an appropriate error message is sent from SQL db.
GET
  • To get currently supported schema: https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data
  • To get all schema versions supported by a resource. https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data?version=all
  • To get any specific schema version: https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data?version=v1
405: "Operation not allowed" (for nudr-dr)
DELETE
  • Schema, which is currently in use could not be deleted.
  • To delete any other stored schema: https://localhost:9443/nudr-dr-mgm/v1/policy-data/schema/am-data/version/v1

405: "Operation not allowed" (in case of deleting current schema)

UDSF Data Operations

The table given below provides information about the UDSF Data Operations.

Operations Type URI Notes Possible Error codes
PUT https://localhost:9443/nudsf-dr/v1/udsf/msisdn-1111111111/udsf-data Sample data blob for UDSF data is:
{
 "a": 1,
 "b": 2
 }
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
  • 400: "Blob syntax error with corresponding error details"
GET https://localhost:9443/nudsf-dr/v1/udsf/msisdn-1111111111/udsf-data  
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 404: "Data field does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"
DELETE https://localhost:9443/nudsf-dr/v1/udsf/msisdn-1111111111/udsf-data  
  • 400: "Invalid URI sent from client"
  • 404: "Subscriber does not exist"
  • 400: "Unknown key, the key provided in the request is invalid"

Policy Data Subscription Operations

The table given below provides information about the Policy Data Subscription Operations.

Note:

All APIs supported are as per TS29.500v16.2
Operations Type URI Notes Possible Error codes
POST http://localhost:8080/nudr-dr/v2/policy-data/subs-to-notify { "notificationUri":"http://mlu-pcf-api-gateway.mlu-pcf.svc/user-service/userservice/notification/msisdn-1871587819", "monitoredResourceUris":[ "https://localhost:9443/nudr-dr-prov/v1/policy-data/msisdn-1111111111/sm-data" ], "supportedFeatures":"f", "expires": "2022-04-23T18:25:43.511Z" } 400: "Schema validation failed for this request"
PUT http://localhost:8080/nudr-dr/v2/policy-data/subs-to-notify/4 { "notificationUri":"http://mlu-pcf-api-gateway.mlu-pcf.svc/user-service/userservice/notification/msisdn-1871587819", "monitoredResourceUris":[ "https://localhost:9443/nudr-dr-prov/v1/policy-data/msisdn-1111111111/sm-data" ], "supportedFeatures":"f", "expires": "2022-04-23T18:25:43.511Z" }
  • 400: "Schema validation failed for this request"
  • 404: "Not found "
GET http://localhost:8080/nudr-dr-prov/v2/policy-data/subs-to-notify/4 { "subscribedResources": [ "policy-data/msisdn-819191945001/am-data" ], "expires": "2022-04-23T18:25:43.511Z", "supportedFeatures": "f", "notificationUri": "http://http2-service.default.svc.cluster.local/policy-data/uri1/" } 404: "Requested data not found"
DELETE http://localhost:8080/nudr-dr/v2/policy-data/subs-to-notify/4 - 404: "Not found"

Generic - Title and its Types in Error Response

The following table lists the titles that can be accompanied by any of its type.

Error Codes Title Detail
400 Bad request

Invalid Data Content

Schema Validation Failure

Invalid URI

Occurrence Constraint Violation

Key Not Supported

Invalid Payload

Invalid Value

Invalid JSON Format

Invalid Number Format

404 Not Found Not Found
405 Operation Not Allowed Operation Not Allowed
500 Internal Server Error

Invalid Result Set Access

Data Access Denied

Data Access Denied/Resource Failure

Temporary Resource Failure

Acquire Lock Failure

Transaction Rollback

501 Not Implemented Bad SQL Grammar