3 NSSF REST Specifications
This chapter provides information about REST specifications used in Oracle Communications Oracle Communication Cloud Native Core Network Selection Slice Function (NSSF).
NSSF can be configured using Helm configurations, REST APIs, and Cloud Native Core (CNC) Console. The NSSF deployment configurations are performed during NSSF installation using Helm, and a few configurations are modified using REST APIs. REST configurations can also be performed using the Cloud Native Core (CNC) Console.
For HELM configurations, see Oracle Communications Cloud Native Core, Network Slice Selection Function Installation, Upgrade, and Fault Recovery Guide .
For the configurations using CNC Console, see Oracle Communications Cloud Native Core Network Slice Selection Function User Guide.
3.1 AMF Set
AMF Set is a mandatory Managed Object (MO). It contains information on supported AMF Sets per PLMN and their salience. This MO can also be configured automatically with default 0 salience by configuring NSI Profile. The operator must ensure that the salience of AMF Sets in a PLMN is not the same. If more than one AMF set supports an NSI, the set with the lowest salience is picked.
- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/amfset
- REST message sample - AMF Set
- Content-Type: application/json
- Initiated By: API Invoker
AMF Set Supported REST APIs
An operator can configure AMF Set by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the AMF Set Managed Object:
Table 3-1 AMF Set - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/amfset | Create an AMF Set |
Data Type: amfset HTTP Method: POST |
/nnssf-configuration/v1/amfset | Read all AMF Sets |
Data Type: amfset HTTP Method: GET |
/nnssf-configuration/v1/amfset/{setId} | Update an AMF Set |
Data Type: amfset HTTP Method: PUT |
/nnssf-configuration/v1/amfset/{setId} | Read an AMF Set |
Data Type: amfset HTTP Method: GET |
/nnssf-configuration/v1/amfset/{setId} | Delete a AMF Set |
Data Type: amfset HTTP Method: DELETE |
Request or Response Body Parameters
The AMF Set Managed Object is mandatory. It comprises the MCC (Mobile Country Code), MNC (Mobile Network Code), AMF Region ID, AMF Set ID and AMF Pointer. This AMF Set contains information on supported AMF Sets per PLMN and their salience. This Managed Object can also be configured automatically with default 0 salience by configuring NSI-Profile.
Table 3-2 AMF Set - Parameters
Parameter | Description | Details |
---|---|---|
regionId
|
This is a mandatory parameter.
Region ID of the target AMF list. |
Data Type: String |
setId
|
This is a mandatory parameter.
Set ID of the target AMF list. |
Data Type: String |
mcc |
This is a mandatory parameter.
Mobile Country Code. |
Data Type: String |
mnc |
This is a mandatory parameter.
Mobile Network Code. |
Data Type: String |
salience |
This is an optional parameter.
Order of importance (higher salience, more important). Default value is 0. |
Data Type: String |
Supported Response Codes
Table 3-3 Supported Response Codes
Code | Description |
---|---|
201
|
AMF Set configured successfully |
400
|
Bad Request |
Examples
The following example shows how an AMF Set is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/amfset -H 'Content-Type: application/json' -d '{ "regionId": "01","setId":
"101","plmnId": { "mcc": "100","mnc": "101" }, "salience": 1
}'
{
"regionId": "01",
"setId": "101",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"salience": 1
}
{
"regionId": "01",
"setId": "101",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"salience": 1
}
3.2 Nss Rules
Nss Rules is a mandatory Managed Object. It maps SNSSAI+TAI+AMF-ID to the Network Slice Instance. If TOD is enabled, it adds in slice selection based on TOD. NSS Rules are policy rules which allow the operator to ALLOW or REJECT a request for a Network Slice Selection request, and if allowed, then map to a Network Slice.
- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/nssrules
- REST message sample - Nss Rules
- Content-Type: application/json
- Initiated By: API Invoker
Nss Rules - Supported REST APIs
The operator can configure Nss Rules by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the Nss Rules Managed Object:
Table 3-4 Nss Rules - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/nssrules | Get all NssRules. |
Data Type: array(NssRule) HTTP Method: GET |
/nnssf-configuration/v1/nssrules | Create a network slice selection rule |
Data Type: NssRule HTTP Method: POST |
/nnssf-configuration/v1/nssrules/{name} | Read a network slice selection rule |
Data Type: NssRule HTTP Method: GET |
/nnssf-configuration/v1/nssrules/{name} | Delete a network slice selection rule |
Data Type: NssRule HTTP Method: DELETE |
/nnssf-configuration/v1/nssrules/{name} | Update a network slice selection rule |
Data Type: NssRule HTTP Method: PUT |
Nss Rules - Dependencies
To configure Nss Rules Managed Object, configure the following Managed Objects as a pre-requisite:
- Nssai Auth: An Auth with Grant "Allowed" encompassing range of TACs, default for PLMN, or a single matching TAC with rule is mandatory.
- Nsi Profile: Profile name being used in rule must be configured.
- Time Profile: If the rule is to return different profiles based on time of the day, then configuring the time profile is mandatory.
Request or Response Body Parameters
The Nss Rules Managed Object enables the configuration of policy rules. It allows an operator to allow, reject, or associate a Network slice based on NSSAI (SST and SD), PLMN (MCC and MNC), TAC, and AMF_ID. The operator can configure salience value to prioritize one rule over other.
Table 3-5 Nss Rules - Parameters
Parameter | Description | Details |
---|---|---|
name
|
This is a mandatory parameter.
It contains Network Slice Selection Rule Name. |
Data Type: String |
amfId
|
This is an optional parameter.
It contains AMF Identifier. |
Data Type: String |
plmnId
|
This is a mandatory parameter.
It contains Public Land Mobile Network ID (MCC:MNC). |
Data Type: String |
tac
|
This is a conditional parameter.
It contains Tracking Area Code (TAC). |
Data Type: String |
tacrange |
This is a conditional parameter.
Either tac or tacrange would be present. If both are not present, or if tac is null, then the rule corresponds to the PLMN. |
Data Type: TacRange |
snssai
|
This is a mandatory parameter.
It contains Single Network Slice Selection Assistance Information. |
Data Type: Snssai |
salience
|
This is an optional parameter.
It contains the order of importance (higher salience, more important). |
Data Type: Integer |
behavior
|
This is a mandatory parameter.
It contains the behavior of the parameter. To know more, see Behavior section of the Primitive Tables. |
Data Type: String |
Supported Response Codes
Table 3-6 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
403 |
Forbidden |
409 |
Request conflict |
406 |
Not Acceptable client error |
Examples
The following example shows how an NSS Rules is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/nssrules/ -H 'Content-Type: application/json' -d '{"name": "IR-RULE-1","plmnId":{"mcc": "100","mnc": "101"},"tac": "100001","snssai":{"sst": 1,"sd": "EABB01"},"salience": "0","behavior":{"accessType": "3GPP_ACCESS","nsiProfiles": [{"name": "NSI-PROFILE-1"}]}}'
{
"name": "TACRANGE-RULE-1",
"amfId": "12345678-abcd-efAB-CDEF-123456789012",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tac": null,
"tacrange": {
"starttac": "100000",
"endtac": "200000"
},
"snssai": {
"sst": "1",
"sd": "EABB01"
},
"salience": "1",
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": [
{
"name": "NSI-PROFILE-1",
"salience": 1
}
]
}
}
{
"name": "TACRANGE-RULE-1",
"amfId": "12345678-abcd-efAB-CDEF-123456789012",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": "100000",
"endtac": "200000"
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"salience": 1,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": [
{
"name": "NSI-PROFILE-1",
"salience": 1
}
]
}
}
3.3 Time Profile
Time profile is a conditional configuration only configured if TOD is enabled. This MO consists of time spans used to create a separate policy based on the time of day.
- Request_Type: POST
- URL: http://host:port/nnssf-configuration/v1/timeprofiles
- REST message sample - Time Profiles
- Content-Type: application/json
- Initiated By: API Invoker
Time Profile - Supported REST APIs
The operator can configure Time Profiles by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the Time Profile Managed Object.
Table 3-7 Time Profile - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/timeprofiles | Create a time profile |
Data Type: TimeProfile HTTP Method: POST |
/nnssf-configuration/v1/timeprofiles | Read all time profiles |
Data Type: array(TimeProfile) HTTP Method: GET |
/nnssf-configuration/v1/timeprofiles/{name} | Read a time profile by name |
Data Type: TimeProfile HTTP Method: GET |
/nnssf-configuration/v1/timeprofiles/{name} | Delete a time profile by name |
Data Type: TimeProfile HTTP Method: DELETE |
/nnssf-configuration/v1/timeprofiles/{name} | Update a time profile by name.
If Time profile with name not found, return 404 Immutable Param: name Mutable Param: Start date, End date, Days of week, timespan(s) |
Data Type: TimeProfile HTTP Method: PUT |
Time Profile - Dependencies
This Managed Object is not dependent on other Managed Objects. Hence, configuration of any other Managed Objects is not a pre-requisite to configuring Time Profile.
Note:
It is applicable only when "Time of the Day Based Network Slice Instance Selection" feature is enabled. For for information, see Time of the Day Based Network Slice Instance Selection section in Oracle Communications Cloud Native Core, Network Slice Selection Function User Guide.Request or Response Body Parameters
The Time Profile Managed Object enables the configuration of time or date based slice selection policies. This allows an operator to create a Time Profile and associate it to a network slice when creating a NSS Rule Managed Object.
Table 3-8 Time Profile - Parameters
Parameter | Description | Details |
---|---|---|
name
|
This is a mandatory parameter.
Time Profile Name. |
Data Type: String |
startDate
|
This is a mandatory parameter.
Date in the format of yy-mm-dd. |
Data Type: Date |
endDate
|
This is a mandatory parameter.
Date in the format of yy-mm-dd. |
Data Type: Date |
daysOfWeek
|
This is an optional parameter.
See Enumerations section. |
Data Type: array(Daysofweek) |
timespans
|
This is an optional parameter.
See Primitive Tables section. |
Data Type: array(TimeSpan) |
Supported Response Codes
Table 3-9 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
Examples
The following example shows how an Time Profile is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/timeprofiles -H 'Content-Type: application/json' -d '{ "name": "WEEKDAY-BUSY", "startDate": "2021-09-10", "endDate": "2025-12-31", "daysOfWeek": [ "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY" ], "timeSpans": [ { "startTime": "07:00:00", "endTime": "45:00:00" }, { "startTime": "17:00:00", "endTime": "22:00:00" } ] }'
{
"name": "WEEKDAY-BUSY",
"startDate": "2021-09-10",
"endDate": "2025-12-31",
"daysOfWeek":
[
"MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"
],
"timeSpans":
[
{
"startTime": "07:00:00",
"endTime": "45:00:00"
},
{
"startTime": "17:00:00",
"endTime": "22:00:00"
}
]
}
{
"name": "WEEKDAY-BUSY",
"startDate": "2021-09-10",
"endDate": "2025-12-31",
"daysOfWeek": [
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY"
],
"timeSpans": [
{
"startTime": "07:00:00",
"endTime": "45:00:00"
},
{
"startTime": "17:00:00",
"endTime": "22:00:00"
}
]
}
3.4 Configured NSSAI
Configured NSSAI is a mandatory Managed Object. It signifies default configured NSSAI per PLMN. NSSF enables operator to configure default SNSSAI per TAC also.
- Request_Type: POST
- URL:
- http://{apiRoot}/nnssf-configuration/v1/configuredsnssais
- REST message sample - Configured S-NSSAIs
- Content-Type: application/json
- Initiated by: API Invoker
Configured NSSAIs - Supported REST APIs
The operator can configure Configured NSSAIs by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the Configured NSSAIs Managed Object:
Table 3-10 Configured NSSAIs - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/configuredsnssais | Create a configured NSSAI. |
Data Type: array(ConfiguredNssai) HTTP Method: POST |
/nnssf-configuration/v1/configuredsnssais | Read all configured NSSAIs. |
Data Type: array(ConfiguredNssai) HTTP Method: GET |
/nnssf-configuration/v1/configuredsnssais/{mcc}-{mnc} |
If combination of AmfId, MCC, MNC, TAC is not found, then responds with 404 Mutable parameters: Snssai List, Salience Immutable parameters: AMF-Id , MCC, MNC, TAC |
Data Type: ConfiguredNssai HTTP Method: PUT |
/nnssf-configuration/v1/configuredsnssais/{mcc}-{mnc} |
Per AMF + TAI configured NSSAI Per TAI configured NSSAI Per PLMN configured NSSAI |
Data Type: ConfiguredNssai ConfiguredNssai array(ConfiguredNssai) HTTP Method: GET |
/nnssf-configuration/v1/configuredsnssais/{mcc}-{mnc} |
Delete a configured NSSAI. |
Data Type: ConfiguredNssai HTTP Method: DELETE |
/nnssf-configuration/v1/configuredsnssais/{mcc}-{mnc}-{sst}-{sd} | Delete a configured NSSAI. |
Data Type: ConfiguredNssai HTTP Method: DELETE |
ConfiguredNssai - Dependencies
To configure ConfiguredNssai Managed Object, you need to first configure the following Managed Objects as a prerequisite:
- NssaiAuth: A default PLMN level Auth with grant ALLOWED.
- NSSRule: A default PLMN level Rule with AMF_ID as null (No dependency on AMF).
Request or Response Body Parameters
The Configured NSSAIs Managed Object enables the configuration of default NSSAI based on one or more of the following parameters: PLMN, TAC, and AMF-ID. The operator can configure default behavior when none of the rules match and UE has set default indication flag to true.
Table 3-11 Configured NSSAIs - Parameters
Parameter | Description | Details |
---|---|---|
plmnid |
This is a mandatory parameter.
Public Land Mobile Network ID (MCC:MNC). |
Data Type: plmnid |
nssai |
This is a mandatory parameter.
See Primitive Table section. |
Data Type: array(Snssai) |
Supported Response Codes
Table 3-12 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
403 |
Forbidden |
404 |
Not Found |
406 |
Not Acceptable client error |
Examples
The following example shows how an Configured NSSAI is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/configuredsnssais -H 'Content-Type: application/json' -d '{ "plmn": { "mcc": "100", "mnc": "101" }, "nssai": [ { "sst": 1, "sd": "EABB01" } ] }'
{
"plmn": {
"mcc": "100",
"mnc": "101"
},
"nssai": [
{
"sst": 1,
"sd": "EABB01"
}
]
}
{
"plmn": {
"mcc": "100",
"mnc": "101"
},
"nssai": [
{
"sst": 1,
"sd": "EABB01"
}
]
}
3.5 NSSAI Auth
NSSAI Auth is a mandatory Managed Object. It consists of network slice, TAI and Grant value. The configuration signifies a mapping of allowed and restricted S-NSSAI per TAI.
- Request_Type: POST
- URL: http://localhost:5755/nnssf-configuration/v1/nssaiauth/
- REST message sample - NSSAI Auth
- Initiated by: API Invoker
NSSAI Auth - Supported REST APIs
An operator can configure NSSAI Auth by following the information provided in the table below. The supported operations are POST, GET, and DELETE. The following table provides information about the REST APIs supported by the NSSAI Auth Managed Object.
Table 3-13 NSSAI Auth - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/nssaiauth | Create an NSSAIAuth Profile. |
Data Type: NssaiAuth HTTP Method: POST |
nnssf-configuration/v1/nssaiauth/ | Return all configured NssaiAuth Managed Objects |
Data Type: array(NssaiAuth) HTTP Method: GET |
nnssf-configuration/v1/nssaiauth/{name} | Returns an NssaiAuth Managed Object if present with the name |
Data Type: NssaiAuth HTTP Method: GET |
nnssf-configuration/v1/nssaiauth/{name} | Updates an NssaiAuth Managed Object if present with the name |
Data Type: NssaiAuth HTTP Method: PUT |
/nnssf-configuration/v1/nssaiauth/{name} | Delete an NssaiAuth Managed Object if a Managed Object with name is found. |
Data Type: NssaiAuth HTTP Method: DELETE |
NSSAI Auth - Dependencies
This Managed Object is not dependent on other Managed Objects. Hence, configuration of any other Managed Objects is not a prerequisite to configure NSSAI Auth.
Request or Response Body Parameters
The NSSAI Auth Managed Object enables the configuration of network slice authentication rules by configuring Grant status (Allowed_PLMN, Rejected_PLMN, or Rejected_TAC) for S-NSSAI on a per TAI basis.
Table 3-14 NSSAI Auth - Parameters
Parameter | Description | Details |
---|---|---|
name
|
This is a mandatory parameter.
Network Slice Authentication Rule Name. |
Data Type: String |
plmnId
|
This is a mandatory parameter.
Public Land Mobile Network ID (MCC:MNC). |
Data Type: plmnid |
tac
|
This is a conditional parameter.
Tracking Area Code. |
Data Type: String |
tacrange |
This is a conditional parameter.
Range of TAC represented by |
Data Type: TacRange |
snssai
|
This is a mandatory parameter.
Single Network Slice Selection Assistance Information. |
Data Type: Snssai |
grant
|
This is a mandatory parameter.
Whether the requested s-NSSAI is allowed or restricted. |
Data Type: Grant |
Supported Response Codes
Table 3-15 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
403 |
Forbidden |
409 |
Request conflict |
406 |
Not Acceptable client error |
Examples
The following example shows how an NSSAI Auth is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/nssaiauth/ -H 'Content-Type: application/json' -d '{ "name": "NSSAI-AUTH-1", "plmnId": { "mcc": "100", "mnc": "101" }, "tac": null, "tacrange": { "starttac": "100000", "endtac": "200000" }, "snssai": { "sst":"1", "sd":"EABB01" }, "grant": "ALLOWED" }'
{
"name": "NSSAI-AUTH-1",
"plmnId":
{
"mcc": "100",
"mnc": "101"
},
"tac": null,
"tacrange":
{
"starttac": "100000",
"endtac": "200000"
},
"snssai":
{
"sst":"1",
"sd":"EABB01"
},
"grant": "ALLOWED"
}
{
"name": "NSSAI-AUTH-1",
"plmnId":
{
"mcc": "100",
"mnc": "101"
},
"tacrange":
{
"starttac": "100000",
"endtac": "200000"
},
"snssai":
{
"sst":"1",
"sd":"EABB01"
},
"grant": "ALLOWED"
}
3.6 AMF Resolutions
AMF Resolutions is a conditional Managed Object, only configured if subscription to NRF helm parameter (nsconfig.nrf.subscription) is not set. AMF Resolutions enables operator to configure mapping candidate AMF list to a Target AMF set ID and Region ID. If a subscription to NRF is set, this MO is auto-populated.
- Request_Type: POST
- URL: http: //{apiRoot}/nnssf-configuration/v1/amfresolutions
- REST message sample - AMF Resolutions
- Content-Type: application/json
- Initiated By: API Invoker
AMF Resolutions - Supported REST APIs
An operator can configure AMF Resolutions by following the information provided in the table below. The supported operations are POST and GET. The following table provides information about the REST APIs supported by the AMF Resolutions Managed Object:
Table 3-16 AMF Resolutions - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/amfresolutions | Get all AMFs for all set-ids |
Data Type: array(AmfResolution) HTTP Method: GET |
/nnssf-configuration/v1/amfresolutions | Create a AMF Resolutions |
Data Type: AmfResolution HTTP Method: POST |
/nnssf-configuration/v1/amfresolutions/{set_id} | Get all AMFs inside the set-id |
Data Type: AmfResolution HTTP Method: GET |
AMF Resolutions -Dependencies
This Managed Object is not dependent on other Managed Objects. Hence, configuration of any other Managed Objects is not a prerequisite to configure AMF Resolution.
Request or Response Body Parameters
The AMF Resolutions Managed Object enables the configuration of mapping list of candidate AMFs to a pair of Target AMF set ID and Region ID. The operator can provide a static candidate AMF list. This configuration is used in cases where customer has disabled discovery service with NRF.
Table 3-17 AMF Resolutions - Parameters
Attribute | Description | Details |
---|---|---|
regionId
|
This is a mandatory parameter.
Region ID of the target AMF list. |
Data Type: Integer |
setId
|
This is a mandatory parameter.
Set ID of the target AMF list. |
Data Type: Integer |
mcc |
This is a mandatory parameter.
Mobile Country Code. |
Data Type: String |
mnc |
This is a mandatory parameter.
Mobile Network Code. |
Data Type: String |
candidateAmfList
|
This is a conditional parameter.
For more information, see in the Primitive Table section . Note: This parameter is mandatory,non empty, and valid when NRF subscription is not enabled. When NRF subscription is enabled, this parameter is ignored. |
Data Type: Array(candidateAmf) |
Supported Response Codes
Table 3-18 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
404 |
Not Found |
406 |
Not Acceptable client error |
Examples
The following example shows how an AMF Resolution is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/amfresolutions/ -H 'Content-Type: application/json' -d '{ "regionId": "01", "setId": "102", "mcc":"100", "mnc":"101", "candidateAmfList": [ { "instanceId": "12345678-abcd-efAB-CDEF-123456789012" }, { "instanceId": "12345678-abcd-efAB-CDEF-123456789013" } ] } }'
{
"regionId": "01",
"setId": "102",
"mcc":"100",
"mnc":"101",
"candidateAmfList":
[
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789012"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789013"
}
]
}
}
{
"regionId": "01",
"setId": "102",
"mcc":"100",
"mnc":"101",
"candidateAmfList":
[
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789012"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789013"
}
]
}
3.7 NSI Profiles
Note:
If Target AMF sets associated with network slice is not present then NSSF adds AMF set with salience 0.- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/nsiprofiles
- REST message sample - NSI Profiles
- Content-Type: application/json
- Initiated By: API Invoker
NSI Profiles - Supported REST APIs
Customer can configure NSI Profiles by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the NSI Profiles Managed Object:
Table 3-19 NSI Profiles - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/nsiprofiles | Returns array of all configured NsiProfiles. |
Data Type: array(NsiProfile) HTTP Method: GET |
/nnssf-configuration/v1/nsiprofiles | Create a network slice instance profile. |
Data Type: NsiProfile HTTP Method: POST |
/nnssf-configuration/v1/nsiprofiles/{name} | Read a network slice instance profile. Returns NsiProfile based on name |
Data Type: NsiProfile HTTP Method: GET |
/nnssf-configuration/v1/nsiprofiles/{name} | Delete a network slice instance profile based on name. |
Data Type: NsiProfile HTTP Method: DELETE |
/nnssf-configuration/v1/nsiprofiles/{name} | Update a network slice instance profile based on
name.
Immutable parameter is It performs a Delete and POST only for targetamfsets. |
Data Type: NsiProfile HTTP Method: PUT |
NSI Profiles - Dependencies
This Managed Object is not dependent on other Managed Objects. Hence, configuration of any other Managed Objects is not a prerequisite to configure NSI Profile.
Request or Response Body Parameters
The NSI Profiles Managed Object enables the configuration of Network Slice Instance profile. The operator can create a Network Slice by providing a name, id, NRF URL corresponding to the slice, and a list of Target AMF sets that support this slice.
Table 3-20 NSI Profiles - Parameters
Parameter | Description | Details |
---|---|---|
name |
This is a mandatory parameter.
Contains Network Slice Instance Profile Name. |
Data Type: String |
nrfUri |
This is a mandatory parameter.
Contains URI of the Network Repository Function. Note: It must contain NRF NF Discovery URL. |
Data Type: String |
nsiId |
This is an optional parameter.
Contains Network Slice Instance Identifier. |
Data Type: String |
targetAmfSets |
This is a mandatory parameter.
Contains an array of
|
Data Type: Array (TargetAmfSet) |
nrfNfMgtUri |
This is a mandatory parameter.
Contains Management URI of Network Resource Function. |
Data Type: String |
nrfAccessTokenUri |
This is a mandatory parameter.
Contains Access Token URI of Network Resource Function. |
Data Type: String |
plmn |
This is a mandatory parameter.
Contains PLMN ID. |
Data Type: plmn |
Supported Response Codes
Table 3-21 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
Examples
The following example shows how an NSI Profiles is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/nsiprofiles/ -H 'Content-Type: application/json' -d '{ "name": "NSI-PROFILE-1", "nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1", "nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1", "nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token", "nsiId": "SLICE1", "plmn": { "mcc": "100", "mnc": "101" }, "targetAmfSets": [ { "regionId": "01", "setId": "101", "salience": "1" }, { "regionId": "01", "setId": "102", "salience": "2" } ] }'
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "101",
"salience": "1"
},
{
"regionId": "01",
"setId": "102",
"salience": "2"
}
]
}
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "101",
"salience": 1
},
{
"regionId": "01",
"setId": "102",
"salience": 2
}
]
}
3.8 GrSite
GrSite is a conditional Managed Object. It is relevant only if georedundancy
(global.grEnabled
) is enabled. GrSite enables the customer to configure
GrSite information.
- Request_Type: POST/GET /PUT
- URL: http: //{apiRoot}/nnssf-configuration/v1/grsites
- REST message sample - GrSite
- Content-Type: application/json
- Initiated By: API Invoker
GrSite - Supported REST APIs
Configure the GrSite by using the information provided in the table below. The supported operations are POST, GET, and PUT. The following table provides information about the REST APIs supported by the GrSite Managed Object:
Table 3-22 GrSite - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/grsites | It returns array of all configured GrSites. |
Data Type: Array(GrSite) HTTP Method: GET |
/nnssf-configuration/v1/grsites/{NfId} | It returns GrSite for corresponding nfId. |
Data Type: Array(GrSite) HTTP Method: GET |
/nnssf-configuration/v1/grsites | It creates a GrSite. |
Data Type: GrSite HTTP Method: POST |
/nnssf-configuration/v1/grsites/{nfId}:{rank} | It updates the rank of GrSite. |
Data Type: Integer(GrSite) HTTP Method: PUT |
/nnssf-configuration/v1/grsites/{NfId} | It deletes GrSite for corresponding nfId. |
Data Type: GrSite HTTP Method: DELETE |
GrSite - Dependencies
This Managed Object is not dependent on other Managed Objects. Hence, configuration of any other Managed Objects is not a prerequisite to configure GrSite.
Note:
It is applicable only when Georedundency is enabled in the helm options. For for information about enabling Georedundency, see Two-site Georedundency section in Oracle Communications Cloud Native Core, Network Slice Selection Function User Guide.Request or Response Body Parameters
Note:
Currently, NSSF supports only two-site Georedundency.Table 3-23 GrSite - Parameters
Parameter | Description | Details |
---|---|---|
nfId |
This is a mandatory parameter.
Contains the instance ID of the site NSSF. |
Data Type: String |
Rank |
This is a mandatory parameter.
Contains the priority given by the operator to related georedundant sites. |
Data Type: Integer |
grSiteStatus |
This is a mandatory parameter.
It contains the current status of the site or NSSF. Note: To know more about data type, see enumerations section. |
Range: ACTIVE or DOWN Data Type: enum |
Supported Response Codes
Table 3-24 Supported Response Codes
Code | Description |
---|---|
201
|
NSS Rules configured successfully |
400
|
Bad Request |
406 |
Not Acceptable client error |
Examples
The following example shows how a GrSite is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/grsites/ -H 'Content-Type: application/json' -d '{ "rank": "1", "nfId": "fe7d992b-0541-4c7d-ab84-c6d70b1b01b1", "grSiteStatus":"ACTIVE" }'
{
"rank": "1",
"nfId": "fe7d992b-0541-4c7d-ab84-c6d70b1b01b1",
"grSiteStatus":"ACTIVE"
}
{
"rank": "1",
"nfId": "fe7d992b-0541-4c7d-ab84-c6d70b1b01b1",
"grSiteStatus":"ACTIVE"
}
3.9 NSSF Backup and Restore Configurations
These APIs provide functionality to back up existing configuration, delete existing configuration, and to restore a (stored) back up.
- Request_Type: POST/GET/DELETE
- URL: http://{apiRoot}/nnssf-configuration/v1/upload
- Content-Type: application/json
- Initiated By: API Invoker
NSSF Backup and Restore Configurations - Supported REST APIs
Configure the ConfigurationBackup Managed Object by following the information provided in the table below. The supported operations are POST, GET, and DELETE. Perform the configuration of ConfigurationBackup Managed Object as follows:
Table 3-25 NSSF Backup and Restore Configurations - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/upload | Restores a backup configuration. |
Data Type: ConfigBackup HTTP Method: POST |
/nnssf-configuration/v1/backup | Returns backup of existing configuration. |
Data Type: ConfigBackup HTTP Method: GET |
/nnssf-configuration/v1/deleteConfiguration/ | Deletes existing configuration. |
HTTP Method: DEL |
Request or Response Body Parameters
ConfigurationBackup consists of list of following parameters:
Table 3-26 NSSF Backup and Restore Configurations - Parameters
Parameter | Description | Details |
---|---|---|
nsiProfileDto
|
If NsiProfile is configured, this parameter contains list of NsiProfile |
Data Type: Array(NsiProfile) |
nssaiAuthDto
|
If NssaiAuth is configured, this parameter contains list of NssaiAuth |
Data Type: Array(NssaiAuth) |
timeProfileDto |
If TimeProfile is configured, this parameter contains list of TimeProfile |
Data Type: Array(TimeProfile) |
nssRuleDto |
If NssRule is configured, this parameter contains list of NssRule |
Data Type: Array(NssRule) |
amfResolutionDto |
If AmfResolution is configured, this parameter contains list of AmfResolution |
Data Type: Array(AmfResolution) |
configuredSnssaiDto |
If ConfiguredSnssai is configured, this parameter contains list of ConfiguredSnssai |
Data Type: Array(ConfiguredSnssai) |
Supported Response Codes
Table 3-27 Supported Response Codes
Code | Description |
---|---|
201
|
AMF Set configured successfully |
400
|
Bad Request |
404 |
Not Found |
406 |
Not Acceptable client error |
Examples
The following example shows how ConfigurationBackup is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST http://{{host}}:{{port}}/nnssf-configuration/v1/upload -H 'Content-Type: application/json' -d '{ "nsiProfileDto": [ { "name": "NSI-PROFILE-1", "nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1", "nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1", "nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token", "nsiId": "SLICE1", "plmn": { "mcc": "100", "mnc": "101" }, "targetAmfSets": [ { "regionId": "01", "setId": "101", "salience": 1 } ] }, { "name": "NSI-PROFILE-2", "nrfUri": "https://nrf.slice2.oracle.com/nnrf-disc/v1", "nrfNfMgtUri": "https://nrf.slice2.oracle.com/nnrf-nfm/v1", "nrfAccessTokenUri": "https://nrf.slice2.oracle.com/oauth2/token", "nsiId": "SLICE2", "plmn": { "mcc": "100", "mnc": "101" }, "targetAmfSets": [ { "regionId": "01", "setId": "102", "salience": 2 } ] } ], "nssaiAuthDto": [ { "name": "NSSAI_AUTH_1", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB01" }, "grant": "ALLOWED" }, { "name": "NSSAI_AUTH_3", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB03" }, "grant": "ALLOWED" }, { "name": "NSSAI_AUTH_4", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB04" }, "grant": "ALLOWED" }, { "name": "NSSAI_AUTH_9", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB09" }, "grant": "ALLOWED" }, { "name": "NSSAI_AUTH_10", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB10" }, "grant": "ALLOWED" }, { "name": "NSSAI_AUTH_11", "plmnId": { "mcc": "100", "mnc": "101" }, "tacrange": { "starttac": null, "endtac": null }, "snssai": { "sst": 1, "sd": "EABB16" }, "grant": "ALLOWED" } ], "configuredSnssaiDto": [ { "plmn": { "mcc": "100", "mnc": "101" }, "nssai": [ { "sst": 1, "sd": "EABB03" }, { "sst": 1, "sd": "EABB01" }, { "sst": 1, "sd": "EABB04" }, { "sst": 1, "sd": "EABB09" }, { "sst": 1, "sd": "EABB10" }, { "sst": 1, "sd": "EABB16" } ] } ], "timeProfileDto": [ { "name": "WEEKDAY_BUSY", "startDate": "2019-01-01", "endDate": "2025-12-31", "daysOfWeek": [ "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY" ], "timeSpans": [ { "startTime": "07:00:00", "endTime": "12:00:00" } ] }, { "name": "DEFAULT", "startDate": "2019-01-01", "endDate": "2099-12-31", "daysOfWeek": [], "timeSpans": [] }, { "name": "DELETE_TIME_PROFILE", "startDate": "2019-01-01", "endDate": "2099-12-31", "daysOfWeek": [], "timeSpans": [] } ], "nssRuleDto": [ { "name": "IR-RULE-1", "amfId": "12345678-abcd-efAB-CDEF-123456789012", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB01" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [ { "name": "NSI-PROFILE-1", "timeProfile": "WEEKDAY_BUSY", "salience": 1 } ] } }, { "name": "IR-RULE-2", "amfId": "12345678-abcd-efAB-CDEF-123456789013", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB09" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [] } }, { "name": "IR-RULE-3", "amfId": "12345678-abcd-efAB-CDEF-123456789014", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB03" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [] } }, { "name": "IR-RULE-4", "amfId": "12345678-abcd-efAB-CDEF-123456789015", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB04" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [] } }, { "name": "IR-RULE-5", "amfId": "12345678-abcd-efAB-CDEF-123456789016", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB10" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [] } }, { "name": "IR-RULE-6", "amfId": "12345678-abcd-efAB-CDEF-123456789016", "plmnId": { "mcc": "100", "mnc": "101" }, "snssai": { "sst": 1, "sd": "EABB16" }, "salience": 0, "behavior": { "accessType": "3GPP_ACCESS", "nsiProfiles": [] } } ], "amfResolutionDto": [ { "regionId": "01", "setId": "101", "mcc": "100", "mnc": "101", "candidateAmfList": [ { "instanceId": "12345678-abcd-efAB-CDEF-123456789010" }, { "instanceId": "12345678-abcd-efAB-CDEF-123456789011" }, { "instanceId": "12345678-abcd-efAB-CDEF-123456789012" }, { "instanceId": "12345678-abcd-efAB-CDEF-123456789013" } ] } ] }'
{
"nsiProfileDto": [
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "101",
"salience": 1
}
]
},
{
"name": "NSI-PROFILE-2",
"nrfUri": "https://nrf.slice2.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice2.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice2.oracle.com/oauth2/token",
"nsiId": "SLICE2",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "102",
"salience": 2
}
]
}
],
"nssaiAuthDto": [
{
"name": "NSSAI_AUTH_1",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_3",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_4",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_9",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_10",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_11",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"grant": "ALLOWED"
}
],
"configuredSnssaiDto": [
{
"plmn": {
"mcc": "100",
"mnc": "101"
},
"nssai": [
{
"sst": 1,
"sd": "EABB03"
},
{
"sst": 1,
"sd": "EABB01"
},
{
"sst": 1,
"sd": "EABB04"
},
{
"sst": 1,
"sd": "EABB09"
},
{
"sst": 1,
"sd": "EABB10"
},
{
"sst": 1,
"sd": "EABB16"
}
]
}
],
"timeProfileDto": [
{
"name": "WEEKDAY_BUSY",
"startDate": "2019-01-01",
"endDate": "2025-12-31",
"daysOfWeek": [
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY"
],
"timeSpans": [
{
"startTime": "07:00:00",
"endTime": "12:00:00"
}
]
},
{
"name": "DEFAULT",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
},
{
"name": "DELETE_TIME_PROFILE",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
}
],
"nssRuleDto": [
{
"name": "IR-RULE-1",
"amfId": "12345678-abcd-efAB-CDEF-123456789012",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": [
{
"name": "NSI-PROFILE-1",
"timeProfile": "WEEKDAY_BUSY",
"salience": 1
}
]
}
},
{
"name": "IR-RULE-2",
"amfId": "12345678-abcd-efAB-CDEF-123456789013",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-3",
"amfId": "12345678-abcd-efAB-CDEF-123456789014",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-4",
"amfId": "12345678-abcd-efAB-CDEF-123456789015",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-5",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-6",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
}
],
"amfResolutionDto": [
{
"regionId": "01",
"setId": "101",
"mcc": "100",
"mnc": "101",
"candidateAmfList": [
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789010"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789011"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789012"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789013"
}
]
}
]
}
{
"nsiProfile": [
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "101",
"salience": 1
}
]
},
{
"name": "NSI-PROFILE-2",
"nrfUri": "https://nrf.slice2.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice2.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice2.oracle.com/oauth2/token",
"nsiId": "SLICE2",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "102",
"salience": 2
}
]
}
],
"nssaiAuth": [
{
"name": "NSSAI_AUTH_1",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_3",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_4",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_9",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_10",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_11",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"grant": "ALLOWED"
}
],
"timeProfile": [
{
"name": "WEEKDAY_BUSY",
"startDate": "2019-01-01",
"endDate": "2025-12-31",
"daysOfWeek": [
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY"
],
"timeSpans": [
{
"startTime": "07:00:00",
"endTime": "12:00:00"
}
]
},
{
"name": "DEFAULT",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
},
{
"name": "DELETE_TIME_PROFILE",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
}
],
"nssRule": [
{
"name": "IR-RULE-1",
"amfId": "12345678-abcd-efAB-CDEF-123456789012",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": [
{
"name": "NSI-PROFILE-1",
"timeProfile": "WEEKDAY_BUSY",
"salience": 1
}
]
}
},
{
"name": "IR-RULE-2",
"amfId": "12345678-abcd-efAB-CDEF-123456789013",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-3",
"amfId": "12345678-abcd-efAB-CDEF-123456789014",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-4",
"amfId": "12345678-abcd-efAB-CDEF-123456789015",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-5",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-6",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
}
],
"amfResolution": [
{
"regionId": "01",
"setId": "101",
"mcc": "100",
"mnc": "101",
"candidateAmfList": [
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789010"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789011"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789012"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789013"
}
]
}
],
"configuredSnssai": [
{
"plmn": {
"mcc": "100",
"mnc": "101"
},
"nssai": [
{
"sst": 1,
"sd": "EABB01"
},
{
"sst": 1,
"sd": "EABB03"
},
{
"sst": 1,
"sd": "EABB04"
},
{
"sst": 1,
"sd": "EABB09"
},
{
"sst": 1,
"sd": "EABB10"
},
{
"sst": 1,
"sd": "EABB16"
}
]
}
]
}
{
"plmnLevelNsiProfileDto": [],
"nsiProfileDto": [
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "101",
"salience": 1
}
]
},
{
"name": "NSI-PROFILE-2",
"nrfUri": "https://nrf.slice2.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice2.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice2.oracle.com/oauth2/token",
"nsiId": "SLICE2",
"plmn": {
"mcc": "100",
"mnc": "101"
},
"targetAmfSets": [
{
"regionId": "01",
"setId": "102",
"salience": 2
}
]
}
],
"nssaiAuthDto": [
{
"name": "NSSAI_AUTH_1",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_3",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_4",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_9",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_10",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"grant": "ALLOWED"
},
{
"name": "NSSAI_AUTH_11",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"tacrange": {
"starttac": null,
"endtac": null
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"grant": "ALLOWED"
}
],
"timeProfileDto": [
{
"name": "WEEKDAY_BUSY",
"startDate": "2019-01-01",
"endDate": "2025-12-31",
"daysOfWeek": [
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY"
],
"timeSpans": [
{
"startTime": "07:00:00",
"endTime": "12:00:00"
}
]
},
{
"name": "DEFAULT",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
},
{
"name": "DELETE_TIME_PROFILE",
"startDate": "2019-01-01",
"endDate": "2099-12-31",
"daysOfWeek": [],
"timeSpans": []
}
],
"nssRuleDto": [
{
"name": "IR-RULE-1",
"amfId": "12345678-abcd-efAB-CDEF-123456789012",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB01"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": [
{
"name": "NSI-PROFILE-1",
"timeProfile": "WEEKDAY_BUSY",
"salience": 1
}
]
}
},
{
"name": "IR-RULE-2",
"amfId": "12345678-abcd-efAB-CDEF-123456789013",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB09"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-3",
"amfId": "12345678-abcd-efAB-CDEF-123456789014",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB03"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-4",
"amfId": "12345678-abcd-efAB-CDEF-123456789015",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB04"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-5",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB10"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
},
{
"name": "IR-RULE-6",
"amfId": "12345678-abcd-efAB-CDEF-123456789016",
"plmnId": {
"mcc": "100",
"mnc": "101"
},
"snssai": {
"sst": 1,
"sd": "EABB16"
},
"salience": 0,
"behavior": {
"accessType": "3GPP_ACCESS",
"nsiProfiles": []
}
}
],
"amfResolutionDto": [
{
"regionId": "01",
"setId": "101",
"mcc": "100",
"mnc": "101",
"candidateAmfList": [
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789010"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789011"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789012"
},
{
"instanceId": "12345678-abcd-efAB-CDEF-123456789013"
}
]
}
],
"configuredSnssaiDto": [
{
"plmn": {
"mcc": "100",
"mnc": "101"
},
"nssai": [
{
"sst": 1,
"sd": "EABB03"
},
{
"sst": 1,
"sd": "EABB01"
},
{
"sst": 1,
"sd": "EABB04"
},
{
"sst": 1,
"sd": "EABB09"
},
{
"sst": 1,
"sd": "EABB10"
},
{
"sst": 1,
"sd": "EABB16"
}
],
"plmnId": "100-101"
}
],
"amfSetDto": [],
"mappingofNssaisDto": []
}
3.10 NRF-Client
The NRF-Client manages configuration of profiles by retrieving the NfProfiles and performing complete update of the NfProfiles used for registering with NRF.
Table 3-28 NRF-Client- Parameters
Parameter | Description | Details |
---|---|---|
fqdn |
This is a mandatory parameter. |
Data Type: Array(FQDN) |
load |
This is a mandatory parameter. |
Data Type: Integer |
nfType |
This is a mandatory parameter. |
Data Type: String |
amfInfo |
This is a mandatory parameter. |
Data Type: Array |
amfSetId |
This is a mandatory parameter. |
Data Type: Integer |
guamiList |
This is a mandatory parameter. |
Data Type: Array |
amfId |
This is a mandatory parameter. |
Data Type: String |
plmnId |
This is a mandatory parameter. |
Data Type: Array |
amfRegionId |
This is a mandatory parameter. |
Data Type: String |
capacity |
This is a mandatory parameter. |
Data Type: Integer |
locality |
This is a mandatory parameter. |
Data Type: String |
nfStatus |
This is a mandatory parameter. |
Data Type: String |
plmnList |
This is a mandatory parameter. |
Data Type: Array(plmnId) |
priority |
This is a mandatory parameter. |
Data Type: Integer |
nfServices |
This is a mandatory parameter. |
Data Type: Array(String) |
scheme |
This is a mandatory parameter. |
Data Type: String |
versions |
This is a mandatory parameter. |
Data Type: Array(String) |
expiry |
This is a mandatory parameter. |
Data Type: String |
apiFullVersion |
This is a mandatory parameter. |
Data Type: String |
apiVersionInUri |
This is a mandatory parameter. |
Data Type: String |
ipEndPoints |
This is a mandatory parameter. |
Data Type: Array |
port |
This is a mandatory parameter. |
Data Type: Integer |
transport |
This is a mandatory parameter. |
Data Type: String |
ipv4Address |
This is a mandatory parameter. |
Data Type: String |
serviceName |
This is a mandatory parameter. |
Data Type: String |
interPlmnFqdn |
This is a mandatory parameter. |
Data Type: String |
allowedNfTypes |
This is a mandatory parameter. |
Data Type: Array |
nfServiceStatus |
This is a mandatory parameter. |
Data Type: String |
serviceInstanceId |
This is a mandatory parameter. |
Data Type: String |
nfInstanceId |
This is a mandatory parameter. |
Data Type: String |
ipv4Addresses |
This is a mandatory parameter. |
Data Type: Array |
ipv6Addresses |
This is a mandatory parameter. |
Data Type: Array |
NRF-Client - Supported REST APIs
The operator can configure the NRF-Client by following the information provided in the table below. The supported operations are GET and PUT. The following table provides information about the REST APIs supported by the NRF-Client Managed Object:
Table 3-29 NRF-Client - Supported REST APIs
URI | Description | Details |
---|---|---|
{nfType}/nf-common-component/v1/nrf-client-nfmanagement/nfProfileList | Retrieve the NfProfiles used to register with NRF |
Data Type: Array(NFProfile) HTTP Method: GET |
{nfType}/nf-common-component/v1/nrf-client-nfmanagement/nfProfileList | Complete update of the NfProfiles used to register with NRF |
Data Type: Array(NFProfile) HTTP Method: PUT |
3.11 Runtime Log Level Update
The Runtime Log Level Update Managed Object enables an operator to centralize the configuration and update it dynamically without restarting NSSF.
Table 3-30 Runtime Log Level Update - Parameters
Parameter | Description | Details |
---|---|---|
commonCfgClient.enabled |
This is a mandatory parameter.
It is used to enable or disable client. |
Data Type: Boolean Range: true or false Default Value: true |
commonCfgClient.pollingInterval |
This is a mandatory parameter.
It is used to set polling interval in Milliseconds. |
Data Type: Integer Default Value: 5000 |
Runtime Log Level Update - Supported REST APIs
The operator can configure the Runtime Log Level Update by following the information provided in the table below. The supported operations are GET and PUT. The following table provides information about the REST APIs supported by the Runtime Log Level Update Managed Object:
Table 3-31 Runtime Log Level Update - Supported REST APIs
URI | Description | Details |
---|---|---|
http://<nssf-url>/nssf/nf-common-component/v1/services | Get the list of microservices registered with common config service for dynamic logging. |
Data Type: array HTTP Method: GET |
http://<nssf-url>/nssf/nf-common-component/v1/<microservice-name>/logging | To get the current Logging information of the microservice. |
Data Type: array HTTP Method: GET |
http://<nssf-url>/nssf/nf-common-component/v1/<microservice-name>/logging | To update the Logging information of the microservice. |
Data Type: array HTTP Method: PUT |
3.12 PLMN Level NSI Profiles
PLMN Level NSI Profiles is a mandatory Managed Object. It is Default Network Slice Instance Profile per PLMN and consists of network slice ID, NRF-ID, and PLMN.
It is important to configure Rules based on NsAvailability Update, as all autoconfigured NSS_Rules are dependent on PLMN Level NSI Profiles. If this configuration is not provided for autoconfiguration of the Rules, the NsAvailability update will fail.
Note:
Without this configuration, PDU establishment can fail for autoconfigured Auth.- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/plmnlevelnsiprofiles
- REST message sample - PLMN Level NSI Profile
- Content-Type: application/json
- Initiated by: API Invoker
PLMN Level NSI Profile - Supported REST APIs
The operator can configure PLMN Level NSI Profile by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the PLMN Level NSI Profile Managed Object:
Table 3-32 PLMN Level NSI Profile - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/plmnlevelnsiprofiles | Returns PLMNLevelNsiProfile for all supported PLMNs. |
Data Type: array(PLMNLevelNsiProfile) HTTP Method: GET |
/nnssf-configuration/v1/plmnlevelnsiprofiles/{mcc-mnc} | Create a generic fall back NSI profile (Nrf, Network slice instance). |
Data Type: PLMNLevelNsiProfile HTTP Method: POST |
/nnssf-configuration/v1/plmnlevelnsiprofiles/{mcc-mnc} | Get PLMNLevelNsiProfile for supported PLMN. |
Data Type: PLMNLevelNsiProfile HTTP Method: GET |
/nnssf-configuration/v1/plmnlevelnsiprofiles/{mcc-mnc} | Delete PLMNLevelNsiProfile for supported PLMN. |
Data Type: PLMNLevelNsiProfile HTTP Method: DELETE |
/nnssf-configuration/v1/plmnlevelnsiprofiles/{mcc-mnc} | Update PLMNLevelNsiProfile for supported PLMN. |
Data Type: PLMNLevelNsiProfile HTTP Method: PUT |
PLMN Level NSI Profiles- Dependencies
This managed object is not dependent on other managed objects.
Request or Response Body Parameters
The PLMN Level NSI Profiles managed object enables the configuration of Network Slice Instance profile. This allows an operator to create an Network Slice, by providing a name, id, NRF URL corresponding to the slice and list of Target AMF sets which support this slice.
Table 3-33 PLMN Level NSI Profiles - Parameters
Parameter | Description | Details |
---|---|---|
nrfUri
|
This is a mandatory parameter.
Contains URI of the Network Repository Function. Note: It must contain NRF NF Discovery URL. |
Data Type: String |
nsiId
|
This is an optional parameter.
Contains Network Slice Instance Identifier. |
Data Type: String |
nrfNfMgtUri |
This is a mandatory parameter.
Contains Management URI of Network Resource Function. |
Data Type: String |
nrfAccessTokenUri |
This is an optional parameter.
Contains Access Token URI of Network Resource Function. |
Data Type: String |
plmn |
This is a mandatory parameter.
Contains PLMN ID. |
Data Type: plmn |
plmnid |
This is a mandatory parameter.
Contains value of MCC and MNC in the format "MCC"-"MNC" |
Data Type: String |
Supported Response Codes
Table 3-34 Supported Response Codes
Code | Description |
---|---|
201
|
API invoker onboarded successfully |
400
|
Bad Request |
Examples
The following example shows how a PLMN Level NSI Profile is onboarded by submitting a POST request on the REST resource using cURL:
curl --http2-prior-knowledge -X POST 'http://{{host}}:{{port}}/nnssf-configuration/v1/plmnlevelnsiprofiles/' --header 'Content-Type: application/json' --data-raw '{"name":"NSI-PROFILE-1","nrfUri":"https://nrf.slice1.oracle.com/nnrf-disc/v1","nrfNfMgtUri":"https://nrf.slice1.oracle.com/nnrf-nfm/v1","nrfAccessTokenUri":"https://nrf.slice1.oracle.com/oauth2/token","nsiId":"SLICE1","plmn":{"mcc":"100","mnc":"101"}}'
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
}
}
{
"name": "NSI-PROFILE-1",
"nrfUri": "https://nrf.slice1.oracle.com/nnrf-disc/v1",
"nrfNfMgtUri": "https://nrf.slice1.oracle.com/nnrf-nfm/v1",
"nrfAccessTokenUri": "https://nrf.slice1.oracle.com/oauth2/token",
"nsiId": "SLICE1",
"plmn": {
"mcc": "100",
"mnc": "101"
}
}
3.13 MappingOfNssai
MappingOfNssai is a mandatory Managed Object to support request mapping. It is added to support EPS to 5G handover and contains mapping of 4G S-NSSAI to 5G S-NSSAI for a given PLMN.
Note:
This Managed Object must be configured for each supported PLMN.- Request_Type: POST
- URL: http://{apiRoot}/nnssf-configuration/v1/mappingOfNssais
- REST message sample - MappingOfNssai
- Content-Type: application/json
- Initiated by: API Invoker
MappingOfNssai - Supported REST APIs
The operator can configure MappingOfNssai by following the information provided in the table below. The supported operations are POST, GET, DELETE, and PUT. The following table provides information about the REST APIs supported by the MappingOfNssai managed object:
Table 3-35 MappingOfNssai - Supported REST APIs
URI | Description | Details |
---|---|---|
/nnssf-configuration/v1/mappingOfNssais/{mcc-mnc} | Returns MappingOfNssais for the PLMN in request parameters. |
Data Type: array(MappingOfNssai HTTP Method: GET |
/nnssf-configuration/v1/mappingOfNssais | Returns MappingOfNssais for all supported PLMNs. |
Data Type: array(PlmnMappingOfNssai) HTTP Method: GET |
/nnssf-configuration/v1/mappingOfNssais | Create MappingOfNssais for the PLMN. |
Data Type: array(MappingOfNssai) HTTP Method: POST |
/nnssf-configuration/v1/mappingOfNssais/{mcc-mnc} | Update MappingOfNssais for the PLMN. |
Data Type: array(MappingOfNssai) HTTP Method: PUT |
/nnssf-configuration/v1/mappingOfNssais/{mcc-mnc} | Delete MappingOfNssais for the PLMN. |
Data Type: NA HTTP Method: DELETE |
/nnssf-configuration/v1/mappingOfNssais{mcc=?mnc=?homeSnssai=? } | Delete a MappingOfNssai for homeSnssai the PLMN. |
Data Type: NA HTTP Method: DELETE |
/nnssf-configuration/v1/mappingOfNssais{mcc=?mnc=?homeSnssai=? } | Update ServingSnssai for homeSnssai the PLMN. |
Data Type: MappingOfNssai HTTP Method: PUT |
/nnssf-configuration/v1/mappingOfNssaisrequestparam | Create MappingOfNssais for the PLMN. |
Data Type: array(PlmnMappingOfNssai ) HTTP Method: POST |
/nnssf-configuration/v1/mappingOfNssaisrequestparam | Returns MappingOfNssais for all supported PLMNs. |
Data Type: array(PlmnMappingOfNssai ) HTTP Method: GET ALL |
/nnssf-configuration/v1/mappingOfNssaisrequestparam{mcc=?mnc=?} | Returns MappingOfNssais for the PLMN in request parameters. |
Data Type: array(MappingOfNssai ) HTTP Method: GET |
/nnssf-configuration/v1/mappingOfNssaisrequestparam{mcc=?mnc=?} | Update MappingOfNssais for the PLMN. |
Data Type: array(MappingOfNssai) HTTP Method: PUT |
/nnssf-configuration/v1/mappingOfNssaisrequestparam{mcc=?mnc=?} | Delete MappingOfNssais for the PLMN. |
Data Type: NA HTTP Method: DELETE |
MappingOfNssai- Dependencies
This managed object is not dependent on other managed objects.
Request or Response Body Parameters
Table 3-36 MappingOfNssai - Parameters
Parameter | Description | Details |
---|---|---|
mcc
|
This is a mandatory parameter.
Specifies Mobile Country Code. |
Data Type: Integer |
mnc
|
This is a mandatory parameter.
Specifies Mobile Network Code. |
Data Type: Integer |
mappingOfNssai |
This is a mandatory parameter.
Specifies an array of MappingOfSnssai. For more information, see MappingOfSnssai. |
Data Type: array(MappingOfSnssai) |
Supported Response Codes
Table 3-37 Supported Response Codes
Code | Description |
---|---|
201
|
API invoker onboarded successfully |
400
|
Bad Request (PLMN not supported, request parameter is not valid) |
Examples
The following example shows how a MappingOfNssai is onboarded by submitting a POST request on the REST resource using cURL:
curl -v --http2-prior-knowledge -X POST "http://{{host}}:{{port}}/nnssf-configuration/v1/mappingOfNssais" -H 'Content-Type: application/json' -d '{"plmnId": {"mcc": "100","mnc": "102"},"mappingOfNssai": [{"servingSnssai": {"sst": 1,"sd": "EABB01"},"homeSnssai": {"sst": 7,"sd": "EABB07"}},{"servingSnssai": {"sst": 2,"sd": "EABB02"},"homeSnssai": {"sst": 8,"sd": "EABB08"}}]}'
{
"plmnId": {
"mcc": "100",
"mnc": "102"
},
"mappingOfNssai": [
{
"servingSnssai": {
"sst": 1,
"sd": "EABB01"
},
"homeSnssai": {
"sst": 7,
"sd": "EABB07"
}
},
{
"servingSnssai": {
"sst": 2,
"sd": "EABB02"
},
"homeSnssai": {
"sst": 8,
"sd": "EABB08"
}
}
]
}
{
"plmnId": {
"mcc": "100",
"mnc": "102"
},
"mappingOfNssai": [
{
"servingSnssai": {
"sst": 1,
"sd": "EABB01"
},
"homeSnssai": {
"sst": 7,
"sd": "EABB07"
}
},
{
"servingSnssai": {
"sst": 2,
"sd": "EABB02"
},
"homeSnssai": {
"sst": 8,
"sd": "EABB08"
}
}
]
}