6 API Definitions
29.5313GPP5G SystemNetwork Slice Selection ServicesRelease 18Stage 3TS
6.1 Nnssf_NSSelection Service API
6.1.1 API URI
The Nnssf_NSSelection service shall use the Nnssf_NSSelection API.
The API URI of the Nnssf_NSSelection API shall be:
{apiRoot}/nnssf-nsselection/<apiVersion>
The request URIs used in HTTP requests from the NF service consumer towards the NF service producer shall have the Resource URI structure defined in clause 4.4.1 of 3GPP TS 29.501 [5], i.e.:
{apiRoot}/nnssf-nsselection/<apiVersion>/<apiSpecificResourceUriPart>
with the following components:
– The {apiRoot} shall be set as described in 3GPP TS 29.501 [5].
– The <apiVersion> shall be "v2".
– The <apiSpecificResourceUriPart> shall be set as described in clause 6.1.3.
6.1.2 Usage of HTTP
6.1.2.1 General
HTTP/2, IETF RFC 7540 [10], shall be used as specified in clause 5 of 3GPP TS 29.500 [4].
An OpenAPI [6] specification of HTTP messages and content bodies for the Nnssf_NSSelection service is specified in Annex A.
6.1.2.2 HTTP standard headers
6.1.2.2.1 General
See clause 5.2.2 of 3GPP TS 29.500 [4] for the usage of HTTP standard headers.
6.1.2.2.2 Content type
The following content types shall be supported:
– JSON, as defined in IETF RFC 8259 [14], shall be used as content type of the HTTP bodies specified in the present specification as indicated in clause 5.4 of 3GPP TS 29.500 [4].
– The Problem Details JSON Object (IETF RFC 7807 [15]. The use of the Problem Details JSON object in a HTTP response body shall be signalled by the content type "application/problem+json".6.1.2.3 HTTP custom headers
6.1.2.3.1 General
In this release of this specification, no custom headers specific to the Nnssf_NSSelection service are defined. For 3GPP specific HTTP custom headers used across all service based interfaces, see clause 5.2.3 of 3GPP TS 29.500 [4].
6.1.3 Resources
6.1.3.1 Overview
Figure 6.1.3.1-1 describes the resource URI structure of the Nnssf_NSSelection API.
Figure 6.1.3.1-1: Resource URI structure of the nnssf_nsselection API
Table 6.1.3.1-1 provides an overview of the resources and applicable HTTP methods.
Table 6.1.3.1-1: Resources and methods overview
Resource name |
Resource URI |
HTTP method or custom operation |
Description |
Network Slice Information |
/ network–slice–information |
GET |
To retrieve network slice information. See clause 6.1.3.2.3.1. Maps to Nnssf_NSSelection_Get service operation. |
6.1.3.2 Resource: Network Slice Information
6.1.3.2.1 Description
This resource represents the network slice related information maintained by the NSSF.This resource is modelled with the Document resource archetype (see clause C.1 of 3GPP TS 29.501 [5]).
6.1.3.2.2 Resource Definition
Resource URI: {apiRoot}/nnssf-nsselection/<apiVersion>/network-slice-information
This resource shall support the resource URI variables defined in table 6.1.3.2.2-1.
Table 6.1.3.2.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 6.1.1 |
apiVersion |
string |
See clause 6.1.1 |
6.1.3.2.3 Resource Standard Methods
6.1.3.2.3.1 GET
This method retrieves the information related to the selected slice based on the input query parameters provided by the NF service consumer specified in table 6.1.3.2.3.1-1.
This method shall support input query parameters specified in table 6.1.3.2.3.1-1 and the response data structure and response codes specified in table 6.1.3.2.3.1-3.
Table 6.1.3.2.3.1-1: URI query parameters supported by the GET method on this resource
Name |
Data type |
P |
Cardinality |
Description |
nf-type |
NFType |
M |
1 |
This IE shall contain the NF type of the NF service consumer. |
nf-id |
NfInstanceId |
M |
1 |
This IE shall contain the NF identifier of the NF service consumer. |
slice-info-request-for-registration |
SliceInfoForRegistration |
C |
0..1 |
This IE shall be present when the network slice information is requested during the Registration procedure or during EPS to 5GS handover procedure using N26 interface towards an NSSF in the serving PLMN. |
slice-info-request-for-pdu-session |
SliceInfoForPDUSession |
C |
0..1 |
This IE shall be present when the network slice information is requested during the PDU session establishment procedure. |
slice-info-request-for-ue-cu |
SliceInfoForUEConfigurationUpdate |
C |
0..1 |
This IE shall be present when the network slice information is requested during UE configuration update procedure. |
home-plmn-id |
PlmnId |
C |
0..1 |
This IE shall be present in the request towards an NSSF in the serving PLMN if the subscriber is a roamer to the serving PLMN. When present, this IE shall contain the home PLMN Id of the UE. |
tai |
Tai |
C |
0..1 |
This IE shall be present in the request towards an NSSF in the serving PLMN. When present, this IE shall contain the TAI the UE is currently located. |
supported-features |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.1.8 is supported. |
Table 6.1.3.2.3.1-2: Data structures supported by the GET Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 6.1.3.2.3.1-3: Data structures supported by the GET Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
AuthorizedNetworkSliceInfo |
M |
1 |
200 OK |
This case represents a successful return of the authorized network slice information selected for the corresponding request. |
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
This represents the case, where the NF service consumer is not authorized to retrieve the slice selection information or the all of the SNSSAIs included in the requested slice selection information is not supported in the PLMN. The application specific error information shall be provided in the "cause" attribute. The "cause" attribute shall be set to: – SNSSAI_NOT_SUPPORTED, if the SNSSAI included in the requested slice selection information is not allowed and there is no default NSSAI value provided in the request. – NOT_AUTHORIZED, if the NF service consumer identified by the NF Id is not authorized to retrieve the slice selection information. See table 6.1.7.3-1 for the description of this error. |
NOTE 1: The mandatory HTTP error status codes for the GET method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.1.3.2.3.1-4: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.1.3.2.3.1-5: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.1.3.2.4 Resource Custom Operations
There are no custom methods supported on the network-slice-information collection resource.
6.1.4 Custom Operations without associated resources
There are no custom operations without associated resources defined for the Nnssf_NSSelection service in this version of this API.
6.1.5 Notifications
In this release of this specification, there are no notifications defined for the Nnssf_NSSelection service.
6.1.6 Data Model
6.1.6.1 General
This clause specifies the application data model supported by the API.
Table 6.1.6.1-1 specifies the data types defined for the Nnssf service based interface protocol.
Table 6.1.6.1-1: Nnssf_NSSelection specific Data Types
Data type |
Clause defined |
Description |
AuthorizedNetworkSliceInfo |
6.1.6.2.2 |
Contains the authorized network slice information. |
SubscribedSnssai |
6.1.6.2.3 |
Contains the subscribed S-NSSAI. |
AllowedSnssai |
6.1.6.2.5 |
Contains the authorized S-NSSAI and optional mapped home S-NSSAI and network slice instance information. |
AllowedNssai |
6.1.6.2.6 |
Contains an array of allowed S-NSSAI that constitute the Allowed NSSAI information for the authorized network slice information. |
NsiInformation |
6.1.6.2.7 |
Contains the API URIs of NRF services to be used to discover NFs/services, subscribe to NF status changes and/or request access tokens within the selected Network Slice instance and optional the Identifier of the selected Network Slice instance. |
MappingOfSnssai |
6.1.6.2.8 |
Contains the mapping of S-NSSAI in the serving network and the value of the home network. |
SliceInfoForRegistration |
6.1.6.2.10 |
Contains the slice information requested during a Registration procedure. |
SliceInfoForPDUSession |
6.1.6.2.11 |
Contains the slice information requested during PDU Session establishment procedure. |
ConfiguredSnssai |
6.1.6.2.12 |
Contains the configured S-NSSAI(s) authorized by the NSSF in the serving PLMN and optional mapped home S-NSSAI. |
SliceInfoForUEConfigurationUpdate |
6.1.6.2.13 |
Contains the slice information requested during UE configuration update procedure. |
NsagInfo |
6.1.6.2.14 |
Contains NSAG information. |
NsiId |
6.1.6.3.2 |
Contains the Identifier of the selected Network Slice instance. |
RoamingIndication |
6.1.6.3.3 |
Contains the indication on roaming. |
Table 6.1.6.1-2 specifies data types re-used by the Nnssf– service based interface protocol from other specifications, including a reference to their respective specifications and when needed, a short description of their use within the Nnssf service based interface.
Table 6.1.6.1-2: Nnssf re-used Data Types
Data type |
Reference |
Comments |
||
SupportedFeatures |
3GPP TS 29.571 [7] |
Used to negotiate the applicability of the optional features defined in table 6.1.8-1. |
||
AccessType |
3GPP TS 29.571 [7] |
Used to specify the access type for which a slice information is applicable. |
||
NfServiceSetId |
3GPP TS 29.571 [7] |
NF Service Set Identifier |
||
RedirectResponse |
3GPP TS 29.571 [7] |
|||
NFType |
3GPP TS 29.510 [13] |
Type of Network Function. |
||
NsSrg |
3GPP TS 29.571 [7] |
Network slice simultaneous registration groups |
||
NsagId |
3GPP TS 29.571 [7] |
Network Slice AS Group ID |
||
TaiRange |
3GPP TS 29.510 [13] |
Range of TAIs |
6.1.6.2 Structured data types
6.1.6.2.1 Introduction
This clause defines the structures to be used in resource representations.
6.1.6.2.2 Type: AuthorizedNetworkSliceInfo
Table 6.1.6.2.2-1: Definition of type AuthorizedNetworkSliceInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
allowedNssaiList |
array(AllowedNssai) |
C |
1..N |
This IE shall be included if: – the NSSF received the Requested NSSAI and the subscribed S-NSSAI(s); or – the "requestMapping" flag in the corresponding request was set to "true"; or – if neither Requested NSSAI nor the mapping of Requested NSSAI was provided to the NSSF or none of the S-NSSAIs in the Requested NSSAI are permitted (provided that there is at least a subscribed S-NSSAI marked as default which is available in the current TA). When present, this IE shall contain the allowed S-NSSAI(s) authorized by the NSSF in the serving PLMN per access type if the Requested NSSAI and the subscribed S-NSSAI(s) received, or this IE shall contain the mapping of S-NSSAI(s) of the VPLMN to corresponding HPLMN S-NSSAI(s) if requestMapping flag was set to "true". NSSF may consider load level information of a Network Slice instance, provided by the NWDAF, to exclude slices that are overloaded. |
|
configuredNssai |
array(ConfiguredSnssai) |
C |
1..N |
This IE shall be included if: – the NSSF did not receive any Requested NSSAI; or – the Requested NSSAI includes an S-NSSAI that is not valid in the Serving PLMN; or – the NSSF has received "defaultConfiguredSnssaiInd" set to "true"; or – the network slice information is requested during UE configuration update procedure. When present, this IE shall contain the configured S-NSSAI(s) authorized by the NSSF in the serving PLMN. This IE shall not be included if the "requestMapping" IE was included in the request message and was set to "true". NSSF may consider load level information of a Network Slice instance, provided by the NWDAF, to exclude slices that are overloaded. |
|
targetAmfSet |
string |
O |
0..1 |
This IE may be included by the NSSF based on configuration and if the NSSF received the Requested NSSAI and the subscribed S-NSSAI(s). When present, this IE shall contain the target AMF set which shall be constructed from PLMN-ID (i.e. three decimal digits MCC and two or three decimal digits MNC), AMF Region Id (8 bit), and AMF Set Id (10 bit). This IE shall not be included if the "requestMapping" IE was included in the request message and was set to "true". Pattern: ‘^[0-9]{3}-[0-9]{2-3}-[A-Fa-f0-9]{2}-[0-3][A-Fa-f0-9]{2}$’ (NOTE 1, NOTE 2) |
|
candidateAmfList |
array(NfInstanceId) |
O |
1..N |
This IE may be included by the NSSF based on configuration and if the NSSF received the Requested NSSAI and the subscribed S-NSSAI(s). When present, this IE shall contain the list of candidate AMF(s). This IE shall not be included if the "requestMapping" IE was included in the request message and was set to "true". (NOTE 2) |
|
rejectedNssaiInPlmn |
array(Snssai) |
O |
1..N |
This IE may be included by the NSSF if the NSSF received the Requested NSSAI and the subscribed S-NSSAI(s). When present, this IE shall contain the rejected NSSAI in the PLMN. NSSF may consider load level information of a Network Slice instance, provided by the NWDAF, to exclude slices that are overloaded. Such slices may be included in this attribute. |
|
rejectedNssaiInTa |
array(Snssai) |
O |
1..N |
This IE may be included by the NSSF if the NSSF received the Requested NSSAI and the subscribed S-NSSAI(s). When present, this IE shall contain the rejected NSSAI in the current TA. NSSF may consider load level information of a Network Slice instance, provided by the NWDAF, to exclude slices that are overloaded. Such slices may be included in this attribute. |
|
nsiInformation |
NsiInformation |
C |
0..1 |
This IE shall be included by the NSSF if the NSSF received the S-NSSAI. (i.e. during PDU session establishment procedure in non-roaming or LBO roaming). This IE shall also be included by the hNSSF and forwarded by the vNSSF if the hNSSF received the S-NSSAI. (i.e. during PDU session establishment procedure in HR roaming). This IE shall not be included if the "requestMapping" IE was included in the request message and was set to "true". |
|
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.1.8 is supported |
|
nrfAmfSet |
Uri |
O |
0..1 |
This IE may be included by the NSSF based on configuration and if the target AMF Set is included. When present, this IE shall contain the API URI of the NRF NFDiscovery Service (see clause 6.2.1 of 3GPP TS 29.510 [13]) to be used to determine the list of candidate AMF(s) from the AMF Set. (NOTE 2) |
|
nrfAmfSetNfMgtUri |
Uri |
C |
0..1 |
This IE should be present if the nrfAmfSet is present. When present, it shall contain the API URI of the NRF NFManagement Service (see clause 6.1.1 of 3GPP TS 29.510 [13]). (NOTE 2) |
|
nrfAmfSetAccessTokenUri |
Uri |
O |
0..1 |
When present, this IE shall contain the API URI of the NRF Access Token Service (see clause 6.3.2 of 3GPP TS 29.510 [13]). (NOTE 2) |
|
nrfOauth2Required |
map(boolean) |
O |
1..N |
This IE may be present if the nrfAmfSet IE or the nrfAmfSetNfMgtUri IE is present. When present, this IE shall indicate whether the NRF requires Oauth2-based authorization for accessing its services. The key of the map shall be the name of an NRF service, e.g. "nnrf-nfm" or "nnrf-disc". The value of each entry of the map shall be encoded as follows: – true: OAuth2 based authorization is required. – false: OAuth2 based authorization is not required. If this IE is present and set to true, then the nrfAmfSetAccessTokenUri IE shall be present and shall be used to request access token for NRF services. The absence of this IE means that the NRF has not provided any indication about its usage of Oauth2 for authorization. (NOTE 2) |
|
targetAmfServiceSet |
NfServiceSetId |
O |
0..1 |
When present, this IE shall contain the target AMF service set. (NOTE 1, NOTE 2) |
|
targetNssai |
array(Snssai) |
O |
1..N |
This IE may be included by the NSSF if the NSSF received the Requested NSSAI and TAI, or the NSSF received the rejected NSSAI of current Registration Area. When present, this IE shall contain S-NSSAI(s) as defined in clause 5.3.4.3.3 of 3GPP TS 23.501 [2]. |
TargetNssai |
nsagInfos |
array(NsagInfo) |
C |
1..N |
This attribute shall be present if the AMF has indicated the support of NSAG by the UE, and the NSAG information is available to the NSSF. This attribute contains the list of NSAG information |
|
NOTE 1: The NF Service Consumer uses the PLMN ID, AMF Region, AMF Set and AMF Service Set to perform a NF Discovery to the NRF. NOTE 2: These attributes should be absent if the NSSF provides a Target NSSAI in targetNssai attribute in order to redirect or handover the UE to a cell of another TA as defined in clause 5.15.5.2.1 of 3GPP TS 23.501 [2]. |
6.1.6.2.3 Type: SubscribedSnssai
Table 6.1.6.2.3-1: Definition of type SubscribedSnssai
Attribute name |
Data type |
P |
Cardinality |
Description |
subscribedSnssai |
Snssai |
M |
1 |
This IE shall contain the subscribed S-NSSAI. |
defaultIndication |
boolean |
O |
0..1 |
If it is set, the subscribed S-NSSAI is a default subscribed S-NSSAI. |
subscribedNsSrgList |
array(NsSrg) |
O |
1..N |
If present, this IE shall contain the subscribed network slice simultaneous registration groups applicable to the subscribedSnssai. |
6.1.6.2.4 Void
6.1.6.2.5 Type: AllowedSnssai
Table 6.1.6.2.5-1: Definition of type AllowedSnssai
Attribute name |
Data type |
P |
Cardinality |
Description |
allowedSnssai |
Snssai |
M |
1 |
This IE shall contain the allowed S-NSSAI in the serving PLMN. |
nsiInformationList |
array(NsiInformation) |
O |
1..N |
This IE may be present when the NSSF provides the Allowed NSSAI information to the NF service consumer (e.g AMF). If present, this IE shall include the information related to the network slice instance corresponding to the allowed S-NSSAI. |
mappedHomeSnssai |
Snssai |
O |
0..1 |
When present, this IE shall contain the mapped S-NSSAI value of home network corresponding to the allowed S-NSSAI in the serving PLMN. |
6.1.6.2.6 Type: AllowedNssai
Table 6.1.6.2.6-1: Definition of type AllowedNssai
Attribute name |
Data type |
P |
Cardinality |
Description |
allowedSnssaiList |
array(AllowedSnssai) |
M |
1..N |
This IE shall contain the allowed S-NSSAI in the serving PLMN. (NOTE) |
accessType |
AccessType |
M |
1 |
This IE shall contain the access type to which this Allowed NSSAI belongs. |
NOTE: The maximum number of allowed S-NSSAIs shall not exceed the maximum number defined in 3GPP TS 24.501 [20]. |
6.1.6.2.7 Type: NsiInformation
Table 6.1.6.2.7-1: Definition of type NsiInformation
Attribute name |
Data type |
P |
Cardinality |
Description |
nrfId |
Uri |
M |
1 |
This IE shall contain the API URI of the NRF NFDiscovery Service (see clause 6.2.1 of 3GPP TS 29.510 [13]) to be used to select the NFs/services within the selected Network Slice instance. |
nsiId |
NsiId |
O |
0..1 |
This IE may be optionally included by the NSSF. When present, this IE shall contain the Identifier of the selected Network Slice instance |
nrfNfMgtUri |
Uri |
O |
0..1 |
This IE should be present. When present, it shall contain the API URI of the NRF NFManagement Service (see clause 6.1.1 of 3GPP TS 29.510 [13]). |
nrfAccessTokenUri |
Uri |
O |
0..1 |
When present, this IE shall contain the API URI of the NRF Access Token Service (see clause 6.3.2 of 3GPP TS 29.510 [13]). |
nrfOauth2Required |
map(boolean) |
O |
1..N |
This IE may be present if the nrfId IE or the nrfNfMgtUri IE is present. When present, this IE shall indicate whether the NRF requires Oauth2-based authorization for accessing its services. The key of the map shall be the name of an NRF service, e.g. "nnrf-nfm" or "nnrf-disc". The value of each entry of the map shall be encoded as follows: – true: OAuth2 based authorization is required. – false: OAuth2 based authorization is not required. The absence of this IE means that the NRF has not provided any indication about its usage of Oauth2 for authorization. |
6.1.6.2.8 Type: MappingOfSnssai
Table 6.1.6.2.8-1: Definition of type MappingOfSnssai
Attribute name |
Data type |
P |
Cardinality |
Description |
servingSnssai |
Snssai |
M |
1 |
This IE shall contain the S-NSSAI value of serving network. |
homeSnssai |
Snssai |
M |
1 |
This IE shall contain the mapped S-NSSAI value of home network. |
6.1.6.2.9 Void
6.1.6.2.10 Type: SliceInfoForRegistration
Table 6.1.6.2.10-1: Definition of type SliceInfoForRegistration
Attribute name |
Data type |
P |
Cardinality |
Description |
subscribedNssai |
array(SubscribedSnssai) |
C |
1..N |
This IE shall be included during the initial registration procedure or during mobility registration procedure in 5GS. This IE may also be included during EPS to 5GS handover procedure/Idle mode Mobility Registration Procedure using N26 interface or the handover procedure within 5GS. When present, this IE shall contain the list of subscribed S-NSSAIs along with an indication for each S-NSSAI if it is a default S-NSSAI. |
allowedNssaiCurrentAccess |
AllowedNssai |
C |
0..1 |
This IE shall be included during an initial registration procedure in 5GS or during mobility registration update procedure in 5GS with a native 5G-GUTI as the old GUTI, and an Allowed NSSAI for the current access type of the UE is available at the NF service consumer (e.g AMF). |
allowedNssaiOtherAccess |
AllowedNssai |
C |
0..1 |
This IE shall be present during an initial registration procedure in 5GS or during mobility registration update procedure in 5GS with a native 5G-GUTI as the old GUTI, and if the UE was registered with the NF service consumer (e.g AMF) earlier for another access type and an Allowed NSSAI for the other access type is available at the NF service consumer (e.g AMF). |
sNssaiForMapping |
array(Snssai) |
C |
1..N |
This IE shall be included if the requestMapping IE is set to true. When included, this IE shall contain the set of S-NSSAIs obtained from PGW+SMF in the HPLMN for PDU sessions that are handed over from EPS to 5GS, or shall contain the set of HPLMN S-NSSAIs obtained from source AMF during handover procedure within 5GS, or shall contain the S-NSSAIs for the HPLMN received from the UE during EPS to 5GS Idle mode Mobility Registration Procedure using N26 interface/idle state mobility registration procedure in 5GS. |
mappingOfNssai |
array(MappingOfSnssai) |
O |
1..N |
This IE may be present when the network slice information is requested during the Registration procedure. If present, this IE shall contain the mapping of S-NSSAI of the VPLMN to corresponding HPLMN S-NSSAI, for the S-NSSAIs included in the requestedNssai and allowedNssai IEs for the current and other access types. This IE may also be present when the network slice information is requested during EPS to 5GS handover procedure using N26 interface or the handover procedure within 5GS. If present, this IE shall contain the mapping of S-NSSAI of the VPLMN to corresponding HPLMN S-NSSAI, for the S-NSSAIs included in the requestedNssai IE. |
requestedNssai |
array(Snssai) |
O |
1..N |
This IE may contain the set of S-NSSAIs requested by the UE, it shall be the S-NSSAIs in hPLMN in non-roaming scenario, or the S-NSSAIs in vPLMN in LBO/HR roaming scenario. During EPS to 5GS handover procedure using N26 interface, this IE may contain the set of S-NSSAIs in the serving PLMN obtained from PGW+SMF in VPLMN, or mapped from the set of S-NSSAIs obtained from PGW+SMF in the HPLMN. During handover procedure within 5GS, this IE may contain the set of S-NSSAIs in the serving PLMN obtained from the source AMF, or mapped from the set of HPLMN S-NSSAIs obtained from source AMF. |
defaultConfiguredSnssaiInd |
boolean |
C |
0..1 |
This IE shall be present when the UE includes the Default Configured NSSAI Indication during the Registration procedure. true: The Default Configured NSSAI is indicated by the UE; |
requestMapping |
boolean |
O |
0..1 |
This IE may be present when the Nnssf_NSSelection_Get procedure is invoked during EPS to 5GS Mobility Registration Procedure (Idle State) using N26 interface or during EPS to 5GS handover procedure using N26 interface. This IE may also be present when Nnssf_NSSelection_Get procedure is invoked during idle state Mobility Registration Procedure or handover procedure in 5GS. When present this IE shall indicate to the NSSF that the NSSF shall return the VPLMN specific mapped SNSSAI values for the S-NSSAI values in the sNssaiForMapping IE. |
ueSupNssrgInd |
boolean |
O |
0..1 |
This IE shall be present in the request towards an NSSF in the serving PLMN when UE has indicated the support of NSSRG feature. When present, this IE shall contain the indication of UE support of subscription-based restrictions to simultaneous registration of network slice feature. This IE shall be set as follows: – true: the UE supports NSSRG feature – false: the UE does not support NSSRG feature. |
suppressNssrgInd |
boolean |
O |
0..1 |
When present, this IE shall contain the UDM indication to provide all subscribed S-NSSAIs for UEs not indicating support of subscription-based restrictions to simultaneous registration of network slices. This IE may be present and set to true if the ueSupNssrgInd is set to false. This IE shall be set as follows: – true: UDM Indication to suppress NSSRG is present and set to TRUE – false: UDM Indication to suppress NSSRG is set to FALSE or not present |
nsagSupported |
boolean |
C |
0..1 |
This IE shall be present if the UE has indicated support of NSAG in the 5GMM procedure. true: the UE supports NSAG. false (default): the UE does not support NSAG. |
6.1.6.2.11 Type: SliceInfoForPDUSession
Table 6.1.6.2.11-1: Definition of type SliceInfoForPDUSession
Attribute name |
Data type |
P |
Cardinality |
Description |
sNssai |
Snssai |
M |
1 |
This IE shall contain the requested S-NSSAI for the PDU session, when the AMF queries the NSSF in the serving PLMN. When the vNSSF queries the hNSSF during PDU session establishment for home routed roaming case, this IE shall contain the S-NSSAI from the HPLMN that maps to the S-NSSAI from the Allowed NSSAI of the Serving PLMN, as obtained from the NF Service Consumer of the vNSSF. |
roamingIndication |
RoamingIndication |
M |
1 |
This IE shall contain the indication whether the UE is in non-roaming, LBO roaming or HR roaming. |
homeSnssai |
Snssai |
C |
0..1 |
This IE shall be included by the NF Service Consumer (e.g. AMF) towards the vNSSF during PDU session establishment procedure in home routed roaming scenario. This IE shall contain the S-NSSAI of the HPLMN that maps to the S-NSSAI from the Allowed NSSAI of the Serving PLMN when the UE in the roaming scenario. |
6.1.6.2.12 Type: ConfiguredSnssai
Table 6.1.6.2.12-1: Definition of type ConfiguredSNssai
Attribute name |
Data type |
P |
Cardinality |
Description |
configuredSnssai |
Snssai |
M |
1 |
This IE shall contain the configured S-NSSAI in the serving PLMN. |
mappedHomeSnssai |
Snssai |
O |
0..1 |
When present, this IE shall contain the mapped S-NSSAI value of home network corresponding to the configured S-NSSAI in the serving PLMN. |
6.1.6.2.13 Type: SliceInfoForUEConfigurationUpdate
Table 6.1.6.2.13-1: Definition of type SliceInfoForUEConfigurationUpdate
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
subscribedNssai |
array(SubscribedSnssai) |
C |
1..N |
This IE shall be included during UE configuration update procedure in 5GS. When present, this IE shall contain the list of subscribed S-NSSAIs along with an indication for each S-NSSAI if it is a default S-NSSAI. |
|
allowedNssaiCurrentAccess |
AllowedNssai |
O |
0..1 |
This IE may be included during UE configuration update procedure in 5GS. When present, this IE shall contain the list of allowed S-NSSAIs in the AMF for the current access type of the UE. |
|
allowedNssaiOtherAccess |
AllowedNssai |
O |
0..1 |
This IE may be included during UE configuration update procedure in 5GS. When present, this IE shall contain the list of allowed S-NSSAIs in the AMF for the other access type of the UE. |
|
defaultConfiguredSnssaiInd |
boolean |
O |
0..1 |
This IE may be present if the UE included the Default Configured NSSAI Indication during the recent Registration procedure. |
|
requestedNssai |
array(Snssai) |
O |
1..N |
This IE may contain the set of S-NSSAIs requested by the UE in the recent registration procedure, it shall be the S-NSSAIs in hPLMN in non-roaming scenario, or the S-NSSAIs in vPLMN in LBO/HR roaming scenario. |
|
mappingOfNssai |
array(MappingOfSnssai) |
O |
1..N |
This IE may be present when the network slice information is requested during UE configuration update procedure. If present, this IE shall contain the mapping of S-NSSAI of the VPLMN to corresponding HPLMN S-NSSAI, for the S-NSSAIs included in the requestedNssai and the allowedNssai IEs for the current and other access types. |
|
ueSupNssrgInd |
boolean |
O |
0..1 |
This IE shall be present in the request towards an NSSF in the serving PLMN when UE has indicated the support of NSSRG feature. When present, this IE shall contain the indication of UE support of subscription-based restrictions to simultaneous registration of network slice feature. This IE shall be set as follows: – true: the UE supports NSSRG feature – false: the UE does not support NSSRG feature. |
|
suppressNssrgInd |
boolean |
O |
0..1 |
When present, this IE shall contain the UDM indication to provide all subscribed S-NSSAIs for UEs not indicating support of subscription-based restrictions to simultaneous registration of network slices. This IE may be present and set to true if the ueSupNssrgInd is set to false. This IE shall be set as follows: – true: UDM Indication to suppress NSSRG is present and set to TRUE – false: UDM Indication to suppress NSSRG is set to FALSE or not present |
|
rejectedNssaiRa |
array(Snssai) |
O |
1..N |
This IE maybe present when the UE is needed to be redirected to the dedicated frequency band(s) for an S-NSSAI (as specified in clause 5.3.4.3.3 of 3GPP TS 23.501 [2]). When present, this IE shall indicate the rejected S-NSSAI(s) of the Registration Area. |
TargetNssai |
nsagSupported |
boolean |
C |
0..1 |
This IE shall be present if the UE has indicated support of NSAG in the 5GMM procedure. true: the UE supports NSAG. false (default): the UE does not support NSAG. |
6.1.6.2.14 Type: NsagInfo
Table 6.1.6.2.14-1: Definition of type NsagInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
nsagIds |
array(NsagId) |
M |
1..N |
The list of NSAG IDs, see 3GPP TS 38.413 [21] |
snssaiList |
array(Snssai) |
M |
1..N |
This attribute contains the S-NSSAI(s) which are associated with the NSAGs identified by the nsagIds. |
taiList |
array(Tai) |
O |
1..N |
This attribute indicates the TA(s) within which the association between the NSAGs identified by the nsagIds and the S-NSSAI(s) is valid. (NOTE) |
taiRangeList |
array(TaiRange) |
O |
1..N |
This attribute indicates the TA(s) within which the association between the NSAGs identified by the nsagIds and the S-NSSAI(s) is valid. (NOTE) |
NOTE: The absence of both taiList and taiRangeList attributes means the association between the NSAGs identified by the nsagIds and the S-NSSAI(s) is valid across the PLMN |
6.1.6.3 Simple data types and enumerations
6.1.6.3.1 Introduction
This clause defines simple data types and enumerations that can be referenced from data structures defined in the previous clauses.
6.1.6.3.2 Simple data types
The simple data types defined in table 6.1.6.3.2-1 shall be supported.
Table 6.1.6.3.2-1: Simple data types
Type Name |
Type Definition |
Description |
NsiId |
string |
Represents the Network Slice Instance Identifier |
6.1.6.3.3 Enumeration: RoamingIndication
Table 6.1.6.3.3-1: Enumeration RoamingIndication
Enumeration value |
Description |
NON_ROAMING |
This value indicates that the UE is not roaming. |
LOCAL_BREAKOUT |
This value indicates that the UE is roaming but is using a local breakout PDU session. |
HOME_ROUTED_ROAMING |
This value indicates that the UE is roaming and is using a home routed PDU session. |
6.1.6.4 Binary data
There is no binary data used for the Nnssf_NSSelection service in this version of the API.
6.1.7 Error Handling
6.1.7.1 General
HTTP error handling shall be supported as specified in clause 5.2.4 of 3GPP TS 29.500 [4].
6.1.7.2 Protocol Errors
Protocol Error Handling shall be supported as specified in clause 5.2.7.2 of 3GPP TS 29.500 [4].
6.1.7.3 Application Errors
The common application errors defined in the Table 5.2.7.2-1 in 3GPP TS 29.500 [4] may also be used for the Nnssf_NSSelection service. The following application errors listed in Table 6.1.7.3-1 are specific for the Nnssf_NSSelection service.
Table 6.1.7.3-1: Application errors
Application Error |
HTTP status code |
Description |
SNSSAI_NOT_SUPPORTED |
403 Forbidden |
This cause value shall be set when the requested slice selection information is for SNSSAI(s) not supported. |
NOT_AUTHORIZED |
403 Forbidden |
The request is rejected due to the NF service consumer is not authorized to retrieve the slice selection information. |
6.1.8 Feature negotiation
The feature negotiation mechanism specified in clause 6.6 of 3GPP TS 29.500 [4] shall be used to negotiate the optional features applicable between the NSSF and the NF Service Consumer, for the Nnssf_NSSelection service, if any.
The NF Service Consumer shall indicate the optional features it supports for the Nnssf_NSSelection service, if any, by including the supportedFeatures attribute in the HTTP GET request when requesting the NSSF to provide the Allowed NSSAI information.
The NSSF shall determine the supported features for the requested network slice information resource as specified in clause 6.6 of 3GPP TS 29.500 [4] and shall indicate the supported features by including the supportedFeatures attribute in the Allowed NSSAI information it returns in the HTTP response.
The syntax of the supportedFeatures attribute is defined in clause 5.2.2 of 3GPP TS 29.571 [7].
The following features are defined for the Nnssf_NSSelection service.
Table 6.1.8-1: Features of supportedFeatures attribute used by Nnssf_NSSelection service
Feature Number |
Feature |
M/O |
Description |
1 |
ES3XX |
M |
Extended Support of HTTP 307/308 redirection An NF Service Consumer (e.g. AMF) that supports this feature shall support handling of HTTP 307/308 redirection for any service operation of the Nnssf_NSSelection service. An NF Service Consumer that does not support this feature does only support HTTP redirection as specified for 3GPP Release 15. |
2 |
TargetNssai |
O |
Target NSSAI An NF Service Consumer (e.g. AMF) and NSSF that supports this feature shall support handling of Target NSSAI as specified in clause 5.3.4.3.3 and clause 5.15.5.2.1 of 3GPP TS 23.501 [2]. |
Feature number: The order number of the feature within the supportedFeatures attribute (starting with 1). Feature: A short name that can be used to refer to the bit and to the feature. M/O: Defines if the implementation of the feature is mandatory ("M") or optional ("O"). Description: A clear textual description of the feature. |
6.1.9 Security
As indicated in 3GPP TS 33.501 [11] and 3GPP TS 29.500 [4], the access to the Nnssf_NSSelection API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [12]), based on local configuration, using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [13]) plays the role of the authorization server.
If OAuth2 is used, an NF Service Consumer, prior to consuming services offered by the Nnssf_NSSelection API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [13], clause 5.4.2.2.
NOTE: When multiple NRFs are deployed in a network, the NRF used as authorization server is the same NRF that the NF Service Consumer used for discovering the Nnssf_NSSelection service.
The Nnssf_NSSelection API does not define any scopes for OAuth2 authorization.
6.1.10 HTTP redirection
An HTTP request may be redirected to a different NSSF service instance, within the same NSSF or a different NSSF of an NSSF set, e.g. when an NSSF service instance is part of an NSSF (service) set or when using indirect communications (see 3GPP TS 29.500 [4]). See the ES3XX feature in clause 6.1.8.
An SCP that reselects a different NSSF producer instance will return the NF Instance ID of the new NSSF producer instance in the 3gpp-Sbi-Producer-Id header, as specified in clause 6.10.3.4 of 3GPP TS 29.500 [4].
If an NSSF within an NSSF set redirects a service request to a different NSSF of the set using a 307 Temporary Redirect or 308 Permanent Redirect status code, the identity of the new NSSF towards which the service request is redirected shall be indicated in the 3gpp-Sbi-Target-Nf-Id header of the 307 Temporary Redirect or 308 Permanent Redirect response as specified in clause 6.10.9.1 of 3GPP TS 29.500 [4].
6.2 Nnssf_NSSAIAvailability Service API
6.2.1 API URI
The Nnssf_NSSAIAvailability service shall use the Nnssf_ NSSAIAvailability API.
The API URI of the Nnssf_NSSAIAvailability API shall be:
{apiRoot}/nnssf- nssaiavailability/<apiVersion>
The request URIs used in HTTP requests from the NF service consumer towards the NF service producer shall have the Resource URI structure defined in clause 4.4.1 of 3GPP TS 29.501 [5], i.e.:
{apiRoot}/nnssf- nssaiavailability/<apiVersion>/<apiSpecificResourceUriPart>
with the following components:
– The {apiRoot} shall be set as described in 3GPP TS 29.501 [5].
– The <apiVersion> shall be "v1".
– The <apiSpecificResourceUriPart> shall be set as described in clause 6.2.3.
6.2.2 Usage of HTTP
6.2.2.1 General
HTTP/2, IETF RFC 7540 [10], shall be used as specified in clause 5 of 3GPP TS 29.500 [4].
An OpenAPI [6] specification of HTTP messages and content bodies for the Nnssf_NSSAIAvailability service is specified in Annex A.
6.2.2.2 HTTP standard headers
6.2.2.2.1 General
See clause 5.2.2 of 3GPP TS 29.500 [4] for the usage of HTTP standard headers.
6.2.2.2.2 Content type
The JSON format shall be supported. The use of JSON format shall be as specified in clause 5.4 of 3GPP TS 29.500 [4].
The following content types shall be supported:
– JSON, as defined in IETF RFC 8259 [14], shall be used as content type of the HTTP bodies specified in the present specification as indicated in clause 5.4 of 3GPP TS 29.500 [4].
– The Problem Details JSON Object (IETF RFC 7807 [15]). The use of the Problem Details JSON object in a HTTP response body shall be signalled by the content type "application/problem+json".
– JSON Patch (IETF RFC 6902 [8]). The use of the JSON Patch format in a HTTP request body shall be signalled by the content type "application/json-patch+json".
6.2.2.2.3 Accept-Encoding
The NSSF should support gzip coding (see IETF RFC 1952 [16]) in HTTP requests and responses and indicate so in the Accept-Encoding header, as described in clause 6.9 of 3GPP TS 29.500 [4].
6.2.2.3 HTTP custom headers
6.2.2.3.1 General
In this release of this specification, no custom headers specific to the Nnssf_NSSAIAvailability service are defined. For 3GPP specific HTTP custom headers used across all service based interfaces, see clause 5.2.3 of 3GPP TS 29.500 [4].
6.2.3 Resources
6.2.3.1 Overview
Figure 6.2.3.1-1: Resource URI structure of the Nnssf_NSSAIAvailability API
Table 6.2.3.1-1 provides an overview of the resources and applicable HTTP methods.
Table 6.2.3.1-1: Resources and methods overview
Resource name |
Resource URI |
HTTP method or custom operation |
Description |
NSSAI Availability Store |
/nssai-availability |
OPTIONS |
Discover the communication options supported by the NSSF for this resource. |
NSSAI Availability Document |
/nssai-availability/{nfId} |
PUT |
Updates the NSSF with the S-NSSAIs the NF service consumer (e.g. AMF) supports per TA. |
PATCH |
Updates the NSSF with the S-NSSAIs the NF service consumer (e.g. AMF) supports per TA. |
||
DELETE |
Delete the resource of the S-NSSAIs supported per TA by the NF service consumer (e.g. AMF) |
||
NSSAI Availability Notification Subscriptions Collection |
/nssai-availability/subscriptions |
POST |
Create a subscription to the notification of any changes to the NSSAI availability information. |
Individual NSSAI Availability Notification Subscriptions |
/nssai-availability/subscriptions/{subscriptionId} |
DELETE |
Unsubscribe to the notification of any changes to the NSSAI availability information. |
PATCH |
Modify a subscription. |
6.2.3.2 Resource: NSSAI Availability Document
6.2.3.2.1 Description
This resource represents a single NSSAI Availability resource.
This resource is modelled with the Document resource archetype (see clause C.1 of 3GPP TS 29.501 [5]).
6.2.3.2.2 Resource Definition
Resource URI: {apiRoot}/nnssf-nssaiavailability/<apiVersion>/nssai-availability/{nfId}
This resource shall support the resource URI variables defined in table 6.2.3.2.2-1.
Table 6.2.3.2.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 6.2.1 |
apiVersion |
string |
See clause 6.2.1 |
nfId |
NfInstanceId |
Represents the Identifier of the AMF for which the NSSAI Availability information is updated. |
6.2.3.2.3 Resource Standard Methods
6.2.3.2.3.1 PUT
This method shall support the request data structures specified in table 6.2.3.2.3.1-1 and the response data structures and response codes specified in table 6.2.3.2.3.1-2.
Table 6.2.3.2.3.1-1: Data structures supported by the PUT Request Body on this resource
Data type |
P |
Cardinality |
Description |
NssaiAvailabilityInfo |
M |
1 |
This IE contains the information regarding the NssaiAvailabilityData for the NF Service Consumer (e.g AMF). |
Table 6.2.3.2.3.1-2: Data structures supported by the PUT Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
AuthorizedNssaiAvailabilityInfo |
M |
1 |
200 OK |
This case represents a successful update of the NSSF with the S-NSSAIs the AMF supports per TA. The authorized NSSAI availability (i.e. S-NSSAIs available per TA (unrestricted) and any S-NSSAIs restricted per PLMN in that TA in the serving PLMN of the UE) information shall be returned in the response payload body. |
N/A |
204 No Content |
This case represents a successful update of the NSSF with the S-NSSAIs the AMF supports per TA, and the authorized NSSAI availability is empty after the update. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
When the NF service consumer is not authorized to update the NSSAI availability information or the TAI/S-NSSAI information provided is not supported in the PLMN, the "cause" attribute shall be set to: – SNSSAI_NOT_SUPPORTED, if the S-NSSAI provided is not supported in the PLMN. – NOT_AUTHORIZED, if the NF service consumer identified by the NF Id is not authorized to update the NSSAI availability information. See table 6.2.7.3-1 for the description of this error. |
NOTE 1: The mandatory HTTP error status codes for the PUT method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.2.3.1-3: Headers supported by the PUT method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Content-Encoding |
string |
O |
0..1 |
Content-Encoding, described in IETF RFC 7231 [18] |
Table 6.2.3.2.3.1-4: Headers supported by the 200 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Accept-Encoding |
string |
O |
0..1 |
Accept-Encoding, described in IETF RFC 7694 [19] |
Table 6.2.3.2.3.1-5: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.2.3.1-6: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.2.3.2 PATCH
This method shall support the request data structures specified in table 6.2.3.2.3.2-1 and the response data structures and response codes specified in table 6.2.3.2.3.2-2.
Table 6.2.3.2.3.2-1: Data structures supported by the PATCH Request Body on this resource
Data type |
P |
Cardinality |
Description |
PatchDocument |
M |
1 |
This IE contains the information regarding the JSON patch instructions for updating the supportedSnssai(s) in NssaiAvailabilityInfo. |
Table 6.2.3.2.3.2-2: Data structures supported by the PATCH Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
AuthorizedNssaiAvailabilityInfo |
M |
1 |
200 OK |
This case represents a successful update of the NSSF with the S-NSSAIs the AMF supports per TA. If the authorized NSSAI availability (i.e. S-NSSAIs available per TA (unrestricted) and any S-NSSAIs restricted per PLMN in that TA in the serving PLMN of the UE) is changed, the NSSF shall return a data structure of type "AuthorizedNssaiAvailabilityInfo" in the response payload body. |
N/A |
204 |
This case represents a successful update of the NSSF with the S-NSSAIs the AMF supports per TA, and the authorized NSSAI availability is empty after the update. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, tThe URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
When the NF service consumer is not authorized to update the NSSAI availability information or the S-NSSAI information provided is not supported in the PLMN, the "cause" attribute shall be set to: – SNSSAI_NOT_SUPPORTED, if the S-NSSAI provided is not supported in the PLMN. – NOT_AUTHORIZED, if the NF service consumer identified by the NF Id is not authorized to update the NSSAI availability information. See table 6.2.7.3-1 for the description of this error. |
ProblemDetails |
O |
0..1 |
404 Not Found |
The "cause" attribute may be used to indicate one of the following application error: – RESOURCE_NOT_FOUND See table 6.2.7.3-1 for the description of this error. |
NOTE 1: The mandatory HTTP error status codes for the PATCH method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.2.3.2-3: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.2.3.2-4: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.2.3.3 DELETE
This method shall support the request data structures specified in table 6.2.3.2.3.3-1 and the response data structures and response codes specified in table 6.2.3.2.3.3-2.
Table 6.2.3.2.3.3-1: Data structures supported by the DELETE Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 6.2.3.2.3.3-2: Data structures supported by the DELETE Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No Content |
|||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, tThe URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, tThe URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
404 Not Found |
The "cause" attribute may be used to indicate one of the following application error: – RESOURCE_NOT_FOUND See table 6.2.7.3-1 for the description of this error. |
NOTE 1: The mandatory HTTP error status codes for the DELETE method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.2.3.3-3: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.2.3.3-4: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.3 Resource: NSSAI Availability Notification Subscriptions Collection
6.2.3.3.1 Description
This resource represents the collection of NSSAI Availability Notification Subscriptions in the NSSF.
This resource is modelled with the Collection resource archetype (see clause C.2 of 3GPP TS 29.501 [5]).
6.2.3.3.2 Resource Definition
Resource URI: {apiRoot}/nnssf-nssaiavailability/<apiVersion>/nssai-availability/subscriptions
This resource shall support the resource URI variables defined in table 6.2.3.3.2-1.
Table 6.2.3.3.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 6.2.1 |
apiVersion |
string |
See clause 6.2.1 |
6.2.3.3.3 Resource Standard Methods
6.2.3.3.3.1 POST
This method shall support the request data structures specified in table 6.2.3.3.3.1-1 and the response data structures and response codes specified in table 6.2.3.3.3.1-2.
Table 6.2.3.3.3.1-1: Data structures supported by the POST Request Body on this resource
Data type |
P |
Cardinality |
Description |
NssfEventSubscriptionCreateData |
M |
1 |
This IE contains the information regarding the SubscriptionData for the AMF to notify any changes to the NSSAI availability information. |
Table 6.2.3.3.3.1-2: Data structures supported by the POST Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
NssfEventSubscriptionCreatedData |
M |
1 |
201 Created |
This case represents a successful creation of subscription to the change of NSSAI availability information. |
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
The "cause" attribute may be used to indicate one of the following application error: – NOT_AUTHORIZED See table 6.2.7.3-1 for the description of these errors. |
NOTE 1: The mandatory HTTP error status codes for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.3.3.1-3: Headers supported by the 201 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
Contains the URI of the newly created resource, according to the structure: {apiRoot}/nnssf-nssaiavailability/v1/nssai-availability/subscriptions/{subscriptionId} |
Table 6.2.3.3.3.1-4: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.3.3.1-5: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.4 Resource: Individual NSSAI Availability Notification Subscriptions
6.2.3.4.1 Description
This resource represents an Individual NSSAI Availability Notification Subscriptions resources generated by the NSSF.
This resource is modelled with the Document resource archetype (see clause C.1 of 3GPP TS 29.501 [5]).
6.2.3.4.2 Resource Definition
Resource URI: {apiRoot}/nnssf-nssaiavailability/{apiVersion}/nssai-availability/subscriptions/{subscriptionId}
This resource shall support the resource URI variables defined in table 6.2.3.4.2-1.
Table 6.2.3.4.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 6.2.1 |
apiVersion |
string |
See clause 6.2.1 |
subscriptionId |
string |
Represents the Identifier of the subscription. |
6.2.3.4.3 Resource Standard Methods
6.2.3.4.3.1 DELETE
This method shall support the request data structures specified in table 6.2.3.4.3.1-1 and the response data structures and response codes specified in table 6.2.3.4.3.1-2.
Table 6.2.3.4.3.1-1: Data structures supported by the DELETE Request Body on this resource
Data type |
P |
Cardinality |
Description |
N/A |
Table 6.2.3.4.3.1-2: Data structures supported by the DELETE Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
N/A |
204 NO Content |
This case represents a successful deletion of the subscription. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
404 Not Found |
This represents the case when the subscription resource is unavailable. |
NOTE 1: The mandatory HTTP error status codes for the DELETE method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.4.3.1-3: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.3.3.1-4: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.4.3.2 PATCH
This method shall support the request data structures specified in table 6.2.3.4.3.2-1 and the response data structures and response codes specified in table 6.2.3.4.3.2-2.
Table 6.2.3.4.3.2-1: Data structures supported by the PATCH Request Body on this resource
Data type |
P |
Cardinality |
Description |
PatchDocument |
M |
1 |
This IE contains the information regarding the JSON patch instructions for updating the NssfEventSubscriptionCreateData. |
Table 6.2.3.4.3.2-2: Data structures supported by the PATCH Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
NssfEventSubscriptionCreatedData |
M |
1 |
200 OK |
This case represents a successful update of the subscription. |
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
404 Not Found |
Indicates the modification of subscription has failed due to application error. The "cause" attribute may be used to indicate one of the following application errors: – SUBSCRIPTION_NOT_FOUND. |
NOTE 1: The mandatory HTTP error status codes for the PATCH method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.4.3.2-3: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.4.3.2-4: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.3.5 Resource: NSSAI Availability Store
6.2.3.5.1 Description
This resource represents a collection of NSSAI Availability resources.
This resource is modelled with the Store resource archetype (see clause C.1 of 3GPP TS 29.501 [5]).
6.2.3.5.2 Resource Definition
Resource URI: {apiRoot}/nnssf-nssaiavailability/v1/nssai-availability
This resource shall support the resource URI variables defined in table 6.2.3.5.2-1.
Table 6.2.3.5.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 6.2.1 |
6.2.3.5.3 Resource Standard Methods
6.2.3.5.3.1 OPTIONS
This method queries the communication options supported by the NSSF (see clause 6.9 of 3GPP TS 29.500 [4]). This method shall support the URI query parameters specified in table 6.1.3.5.3.1-1.
Table 6.2.3.5.3.1-1: URI query parameters supported by the OPTIONS method on this resource
Name |
Data type |
P |
Cardinality |
Description |
n/a |
This method shall support the request data structures specified in table 6.2.3.5.3.1-2 and the response data structures and response codes specified in table 6.2.3.5.3.2-3.
Table 6.2.3.5.3.1-2: Data structures supported by the OPTIONS Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 6.2.3.5.3.1-3: Data structures supported by the OPTIONS Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
200 OK |
|||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
405 Method Not Allowed |
|
ProblemDetails |
O |
0..1 |
501 Not Implemented |
|
NOTE 1: The mandatory HTTP error status codes for the OPTIONS method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.3.5.3.1-4: Headers supported by the 200 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Accept-Encoding |
string |
O |
0..1 |
Accept-Encoding, described in IETF RFC 7694 [19] |
Table 6.2.3.5.3.1-5: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.3.5.3.1-6: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
An alternative URI of the resource located on an alternative service instance within the same NSSF or NSSF (service) set. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.4 Custom Operations without associated resources
There are no custom operations without associated resources for the Nnssf_NSSAIAvailability service in this version of the API.
6.2.5 Notifications
6.2.5.1 General
This clause specifies the notifications provided by the Nnssf_NSSAIAvailability service.
Table 6.2.5.1-1: Notifications overview
Notification |
Callback URI |
HTTP method or custom operation |
Description (service operation) |
NSSAI Availability Notification |
{nfNssaiAvailabilityUri} |
POST |
6.2.5.2 NSSAI Availability Notification
6.2.5.2.1 Description
If the NF Service Consumer (e.g. AMF) has provided the callback URI for getting notified about the NSSAI availability information, the NSSF shall notify the NF Service Consumer whenever the NSSAI availability information is updated.
6.2.5.2.2 Notification Definition
Callback URI: {nfNssaiAvailabilityUri}
This callback URI is provided by the NF Service Consumer (e.g. AMF) during NSSAI Availability Information update invoked by the NF Service Consumer.
Table 6.2.5.2.2-1: Resources and methods overview
Resource name |
Callback URI |
HTTP method or custom operation |
Description |
NSSAI Availability Notification Callback |
{nfNssaiAvailabilityUri} |
POST |
The NSSF uses this callback URI to Update the AMF with any S-NSSAIs restricted per TA in the serving PLMN of the UE. |
6.2.5.2.3 Notification Standard Methods
6.2.5.2.3.1 POST
This method shall support the request data structures specified in table 6.2.5.2.3.1-1 and the response data structures and response codes specified in table 6.2.5.2.3.1-2.
Table 6.2.5.2.3.1-1: Data structures supported by the POST Request Body on this resource
Data type |
P |
Cardinality |
Description |
NssfEventNotification |
M |
1 |
Representation of the data to be sent to the NF service consumer (e.g. AMF) to update NSSAI availability information, authorized by the NSSF in the serving PLMN. |
Table 6.2.5.2.3.1-2: Data structures supported by the POST Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No Content |
This case represents a successful update of the NF service consumer (e.g. AMF)with NSSAI availability information. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an URI pointing to the endpoint of another NF service consumer to which the notification should be sent. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection. The response shall include a Location header field containing a different URI, or the same URI if this is a redirection triggered by an SCP to the same target resource via another SCP. In the former case, the URI shall be an URI pointing to the endpoint of another NF service consumer to which the notification should be sent. (NOTE 2) |
ProblemDetails |
O |
0..1 |
400 Bad Request |
The "cause" attribute may be used to indicate one of the following application errors: – RESOURCE_CONTEXT_NOT_FOUND See table 6.2.7.3-1 for the description of this error. |
ProblemDetails |
O |
0..1 |
404 Not Found |
The "cause" attribute may be used to indicate one of the following application errors: – RESOURCE_URI_STRUCTURE_NOT_FOUND See table 6.2.7.3-1 for the description of this error. |
NOTE 1: The mandatory HTTP error status codes for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] other than those specified in the table above also apply, with a ProblemDetails data type (see clause 5.2.7 of 3GPP TS 29.500 [4]). NOTE 2: RedirectResponse may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.2.5.2.3.1-3: Headers supported by the 307 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
A URI pointing to the endpoint of another NF service consumer to which the notification should be sent. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
Table 6.2.5.2.3.1-4: Headers supported by the 308 Response Code on this resource
Name |
Data type |
P |
Cardinality |
Description |
Location |
string |
M |
1 |
A URI pointing to the endpoint of another NF service consumer to which the notification should be sent. Or the same URI, if a request is redirected to the same target resource via a different SCP. |
3gpp-Sbi-Target-Nf-Id |
string |
O |
0..1 |
Identifier of the target NF (service) instance ID towards which the request is redirected |
6.2.6 Data Model
6.2.6.1 General
This clause specifies the application data model supported by the API.
Table 6.2.6.1-1 specifies the data types defined for the Nnssf_NSSAIAvailability service based interface protocol.
Table 6.2.6.1-1: Nnssf_NSSAIAvailability specific Data Types
Data type |
Clause defined |
Description |
NssaiAvailabilityInfo |
6.2.6.2.2 |
This contains the Nssai availability information requested by the AMF. |
SupportedNssaiAvailabilityData |
6.2.6.2.3 |
This contains the Nssai availability data information per TA supported by the AMF. |
AuthorizedNssaiAvailabilityData |
6.2.6.2.4 |
This contains the Nssai availability data information per TA authorized by the NSSF |
RestrictedSnssai |
6.2.6.2.5 |
This contains the restricted SNssai information per PLMN. |
AuthorizedNssaiAvailabilityInfo |
6.2.6.2.6 |
This contains the Nssai availability data information authorized by the NSSF |
PatchDocument |
6.2.6.2.7 |
This contains the JSON Patch instructions for updating the Nssai availability data information at the NSSF. |
NssfEventSubscriptionCreateData |
6.2.6.2.8 |
This contains the information for event subscription. |
NssfEventSubscriptionCreatedData |
6.2.6.2.9 |
This contains the information for created event subscription. |
NssfEventNotification |
6.2.6.2.10 |
This contains the notification for created event subscription. |
NssfEventType |
6.2.6.3.3 |
This contains the event for the subscription. |
Table 6.2.6.1-2 specifies data types re-used by the Nnssf service based interface protocol from other specifications.
Table 6.2.6.1-2: Nnssf re-used Data Types
Data type |
Reference |
Comments |
SupportedFeatures |
3GPP TS 29.571 [7] |
Used to negotiate the applicability of the optional features defined in table 6.2.8-1. |
Snssai |
3GPP TS 29.571 [7] |
|
PatchItem |
3GPP TS 29.571 [7] |
Identifies the JSON Patch instructions |
DateTime |
3GPP TS 29.571 [7] |
|
RedirectResponse |
3GPP TS 29.571 [7] |
|
NfInstanceId |
3GPP TS 29.571 [7] |
|
ExtSnssai |
3GPP TS 29.571 [7] |
|
NsagId |
3GPP TS 29.571 [7] |
Network Slice AS Group ID |
TaiRange |
3GPP TS 29.510 [13] |
|
NsagInfo |
3GPP TS 29.531 |
See clause 6.1.6.2.14 |
6.2.6.2 Structured data types
6.2.6.2.1 Introduction
This clause defines the structures to be used in resource representations.
6.2.6.2.2 Type: NssaiAvailabilityInfo
Table 6.2.6.2.2-1: Definition of type NssaiAvailabilityInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
supportedNssaiAvailabilityData |
array(SupportedNssaiAvailabilityData) |
M |
1..N |
This IE shall contain the information regarding the S-NSSAIs the NF service consumer (e.g. AMF) and the 5G-AN supports per TA. |
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.2.8 is supported |
amfSetId |
string |
O |
0..1 |
This IE may be included to indicate the AMF set identifier for the AMFs serving the TAIs where the NSSAI is available. When present, this IE shall be constructed from PLMN-ID (i.e. three decimal digits MCC and two or three decimal digits MNC), AMF Region Id (8 bit), and AMF Set Id (10 bit). Pattern: ‘^[0-9]{3}-[0-9]{2-3}-[A-Fa-f0-9]{2}-[0-3][A-Fa-f0-9]{2}$’ |
6.2.6.2.3 Type: SupportedNssaiAvailabilityData
Table 6.2.6.2.3-1: Definition of type SupportedNssaiAvailabilityData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
tai |
Tai |
M |
1 |
This IE shall contain the identifier of the Tracking Area |
|
supportedSnssaiList |
array(ExtSnssai) |
M |
1..N |
This IE shall contain the S-NSSAI(s) supported by the AMF for the TA. |
|
taiList |
array(Tai) |
O |
1..N |
When present, this IE shall contain additional TAIs with the same list of supported S-NSSAIs. |
ONSSAI |
taiRangeList |
array(TaiRange) |
O |
1..N |
When present, this IE shall contain range(s) of TAIs with the same list of supported S-NSSAIs. |
ONSSAI |
nsagInfos |
array(NsagInfo) |
O |
1..N |
When present, this IE shall contain the associations between NSAGs and S-NSSAIs. |
|
NOTE: The taiList IE shall not include the TAI contained in the tai IE. The taiRangeList IE may encompass the TAI contained in the tai IE. |
6.2.6.2.4 Type: AuthorizedNssaiAvailabilityData
Table 6.2.6.2.4-1: Definition of type AuthorizedNssaiAvailabilityData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
tai |
Tai |
M |
1 |
This IE shall contain the identifier of the Tracking Area. |
|
supportedSnssaiList |
array(ExtSnssai) |
M |
1..N |
This IE shall contain the S-NSSAI(s) supported by the AMF and 5G-AN and authorized by the NSSF for the TA. |
|
restrictedSnssaiList |
array(RestrictedSnssai) |
O |
1..N |
This IE may contain the restricted S-NSSAI(s) per PLMN for the TA. If the restricted S-NSSAI is not present, the S-NSSAIs indicated in supportedSnssaiList are not restricted in this TA for any PLMN. When present, this IE shall be included only by the NSSF. |
|
taiList |
array(Tai) |
O |
1..N |
When present, this IE shall contain additional TAIs with the same lists of supported and restricted S-NSSAIs. |
ONSSAI |
taiRangeList |
array(TaiRange) |
O |
1..N |
When present, this IE shall contain range(s) of TAIs with the same lists of supported and restricted S-NSSAIs. |
ONSSAI |
nsagInfos |
array(NsagInfo) |
O |
1..N |
When present, this IE shall contain the associations between NSAGs and S-NSSAIs. |
|
NOTE: The taiList IE shall not include the TAI contained in the tai IE. The taiRangeList IE may encompass the TAI contained in the tai IE. |
6.2.6.2.5 Type: RestrictedSnssai
Table 6.2.6.2.5-1: Definition of type RestrictedSnssai
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
homePlmnId |
PlmnId |
M |
1 |
This IE shall contain the home PLMN ID of the PLMN with which the serving network has roaming agreement. This IE shall be ignored if the roamingRestriction is set to "true". |
|
sNssaiList |
array(ExtSnssai) |
M |
1..N |
This IE shall contain the array of restricted S-NSSAIs for the home PLMN Id. |
|
homePlmnIdList |
array(PlmnId) |
O |
1..N |
When present, this IE shall contain additional home PLMN IDs with which the serving network has roaming agreement and with the same list of restricted S-NSSAIs. |
ONSSAI |
roamingRestriction |
boolean |
O |
0..1 |
When present, it shall be set as follows: – true: the list of restricted S-NSSAIs are applicable to all of the home PLMN IDs with which the serving network has roaming agreement; – false (default): the list of restricted S-NSSAIs are applicable to part of the home PLMN IDs with which the serving network has roaming agreement as included in the homePlmnId and homePlmnIdList IEs. |
ONSSAI |
6.2.6.2.6 Type: AuthorizedNssaiAvailabilityInfo
Table 6.2.6.2.6 -1: Definition of type AuthorizedNssaiAvailabilityInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
authorizedNssaiAvailabilityData |
array(AuthorizedNssaiAvailabilityData) |
M |
1..N |
Contains the authorized NSSAI availability information. |
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.2.8 is supported |
6.2.6.2.7 Type: PatchDocument
Table 6.2.6.2.7-1: Definition of type PatchDocument
Attribute name |
Data type |
P |
Cardinality |
Description |
N/A |
array(PatchItem) |
M |
1..N |
An array of patch instructions to update the NSSAI availability information or the NssfEventSubscriptionCreateData at the NSSF. See 3GPP TS 29.571 [7]. |
6.2.6.2.8 Type: NssfEventSubscriptionCreateData
Table 6.2.6.2.8-1: Definition of type NssfEventSubscriptionCreateData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
nfNssaiAvailabilityUri |
Uri |
M |
1 |
Identifies the recipient of notifications sent by the NF service consumer (e.g. AMF) for this subscription |
|
taiList |
array(Tai) |
M |
0..N |
Identifies the TAIs supported by the NF service consumer (e.g. AMF). (NOTE) |
|
event |
NssfEventType |
M |
1 |
Describes the event to be subscribed for this subscription. |
|
expiry |
DateTime |
O |
0..1 |
This IE may be included by the NF service consumer. When present, this IE shall represent the suggested time after which the subscription becomes invalid. |
|
amfSetId |
string |
O |
0..1 |
This IE may be included to identify a specific AMF Set for which this subscription applies. When present, this IE shall be constructed from PLMN-ID (i.e. three decimal digits MCC and two or three decimal digits MNC), AMF Region Id (8 bit), and AMF Set Id (10 bit). Pattern: ‘^[0-9]{3}-[0-9]{2-3}-[A-Fa-f0-9]{2}-[0-3][A-Fa-f0-9]{2}$’ |
|
taiRangeList |
array(TaiRange) |
O |
1..N |
Identifies a list of TAI ranges supported by the NF service consumer (e.g. AMF). The NF service consumer shall only include this IE when it knows that the NSSF supports the "ONSSAI" feature. (NOTE) |
ONSSAI |
amfId |
NfInstanceId |
O |
0..1 |
This IE may be included to indicate the instance identity of the network function creating the subscription. |
|
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.2.8 is supported. |
|
allAmfSetTaiInd |
boolean |
O |
0..1 |
This IE may be present when amfSetId is present. When present, this IE shall indicate whether the subscription is for all TAIs of the AMF set: – ture: all TAIs of the AMF Set is subscribed. – false (default): indicated TAIs (in the taiList IE and/or taiRangeList IE) are subscribed. |
SATAS |
NOTE: The taiList attribute shall only be set to an empty array if the NSSF supports the "ONSSAI" feature and taiRangeList IE is present, or if the NSSF supports the "SATAS" feature and the allAmfSetTaiInd IE is present with value true. A NF service consumer (e.g. AMF) may provide both taiRangeList and taiList attributes, to carry individual TAI(s) in the taiList attribute and ranges of TAIs in the taiRangeList attribute. |
6.2.6.2.9 Type: NssfEventSubscriptionCreatedData
Table 6.2.6.2.9-1: Definition of type NssfEventSubscriptionCreatedData
Attribute name |
Data type |
P |
Cardinality |
Description |
subscriptionId |
string |
M |
1 |
Identifies the subscription Id for the created subscription. |
expiry |
DateTime |
C |
0..1 |
This IE shall be included, if, based on operator policy and taking into account the expiry time included in the request, the NSSF needs to include an expiry time. When present, it represents the time after which the subscribed event shall stop generating report and the subscription becomes invalid. Upon reaching this expiry time the NF service consumer shall delete the representation of the subscription it may have. |
authorizedNssaiAvailabilityData |
array(AuthorizedNssaiAvailabilityData) |
O |
1..N |
If the authorized NSSAI availability (i.e. S-NSSAIs available per TA (unrestricted) and any S-NSSAIs restricted per PLMN in that TA in the serving PLMN of the UE) is available, the NSSF may include this IE. |
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.2.8 is supported. |
6.2.6.2.10 Type: NssfEventNotification
Table 6.2.6.2.10-1: Definition of type NssfEventNotification
Attribute name |
Data type |
P |
Cardinality |
Description |
subscriptionId |
string |
M |
1 |
Indicates which subscription generated event notificaiton. This parameter is generated by NSSF and returned in "Location" header in HTTP responses. This can be useful if a NF use a common call-back URI for multiple subscriptions. |
authorizedNssaiAvailabilityData |
array(AuthorizedNssaiAvailabilityData) |
M |
0..N |
This IE shall contain the authorized NSSAI availability information for all TAs the AMF subscribed to. Each element shall contain the current status of the list of S-NSSAI available in a TA and the list of S-NSSAI restricted per PLMN in that TA. The NF Service Consumer shall replace any authorizedNssaiAvailabilityData received earlier by the new authorizedNssaiAvailabilityData received in the notification. When no supported S-NSSAIs authorized by the NSSF for all TAs, this IE shall contain an empty array indicating Authorized NSSAI Availability information is empty. When received this IE with empty array, the NF Service Consumer shall remove any locally stored authorizedNssaiAvailabilityData previously received from NSSF. (NOTE) |
NOTE: NSSF shall only send notificaiton with empty array to NF Service Consumer previously indicated support of "EANAN" feature, when there is no supported S-NSSAIs authorized by the NSSF for all TAs. |
6.2.6.3 Simple data types and enumerations
6.2.6.3.1 Introduction
This clause defines simple data types and enumerations that can be referenced from data structures defined in the previous clauses.
6.2.6.3.2 Simple data types
The simple data types defined in table 6.2.6.3.2-1 shall be supported.
Table 6.2.6.3.2-1: Simple data types
Type Name |
Type Definition |
Description |
<one simple data type, e.g. boolean, integer, null, number, string> |
6.2.6.3.3 Enumeration: NssfEventType
Table 6.2.6.3.3-1: Enumeration NssfEventType
Enumeration value |
Description |
"SNSSAI_STATUS_CHANGE_REPORT" |
A NF subscribes to this event to receive the status change about the current S-NSSAI available (i.e unrestricted) per TA and the status change about the list of restricted S-NSSAI per TA and per PLMN in the serving PLMN of the UE. |
6.2.6.4 Binary data
There is no binary data used for the Nnssf_NSSAIAvailability service in this version of the API.
6.2.7 Error Handling
6.2.7.1 General
HTTP error handling shall be supported as specified in clause 5.2.4 of 3GPP TS 29.500 [4].
6.2.7.2 Protocol Errors
Protocol Error Handling shall be supported as specified in clause 5.2.7.2 of 3GPP TS 29.500 [4].
6.2.7.3 Application Errors
The common application errors defined in the Table 5.2.7.2-1 in 3GPP TS 29.500 [4] may also be used for the Nnssf_NSSAIAvailability service. The following application errors listed in Table 6.1.7.3-1 are specific for the Nnssf_NSSAIAvailability service.
Table 6.2.7.3-1: Application errors
Application Error |
HTTP status code |
Description |
RESOURCE_CONTEXT_NOT_FOUND |
400 Bad Request |
Indicates that the NF Service Consumer (e.g. AMF) received a notification request from NSSF on an existing callback URI, but the corresponding context does not exist at the NF Service Consumer. |
SNSSAI_NOT_SUPPORTED |
403 Forbidden |
The request is rejected due to the SNSSAI provided in the request is not supported in the PLMN. |
NOT_AUTHORIZED |
403 Forbidden |
The request is rejected due to the NF service consumer is not authorized to update the NSSAI availability information, or subscribe for the NSSAI availability information notification. |
RESOURCE_NOT_FOUND |
404 Not Found |
The request is rejected due to the NF service consumer is authorized, but the resource related to the NF Id for which the NSSAI availability information is updated or deleted is unavailable. |
SUBSCRIPTION_NOT_FOUND |
404 Not Found |
Indicates the modification of subscription has failed due to an application error when the subscription is not found in the NSSF. |
RESOURCE_URI_STRUCTURE_NOT_FOUND |
404 Not Found |
Indicates that the NF Service Consumer (e.g. AMF) received a notification request from NSSF on a callback URI that is not known to the NF Service Consumer. |
6.2.8 Feature negotiation
The feature negotiation mechanism specified in clause 6.6 of 3GPP TS 29.500 [4] shall be used to negotiate the optional features applicable between the NSSF and the NF Service Consumer, for the Nnssf_NSSAIAvailability service, if any.
The NF Service Consumer shall indicate the optional features it supports for the Nnssf_NSSAIAvailability service, if any, by including the supportedFeatures attribute in the HTTP PUT request when requesting the NSSF to update the NSSAI Availability information.
The NSSF shall determine the supported features for the updated NSSAI Availability information resource as specified in clause 6.6 of 3GPP TS 29.500 [4] and shall indicate the supported features by including the supportedFeatures attribute in the authorized NSSAI availability information it returns in the HTTP response.
The syntax of the supportedFeatures attribute is defined in clause 5.2.2 of 3GPP TS 29.571 [7].
The following features are defined for the Nnssf_NSSAIAvailability service.
Table 6.2.8-1: Features of supportedFeatures attribute used by Nnssf_NSSAIAvailability service
Feature Number |
Feature |
M/O |
Description |
1 |
ONSSAI |
O |
Optimized NSSAI Availability Data encoding When this feature is supported: – NSSAI Availability data may be signalled per list or range(s) of TAIs (see clauses 6.2.6.2.3 and 6.2.6.2.4); and – RestrictedSnssai may encode a list of Home PLMN IDs or may be applicable to all of the Home PLMN IDs (see clause 6.2.6.2.5). – NSSF event subscription may encode a list of TAI ranges (see clause 6.2.6.2.8). |
2 |
SUMOD |
O |
Subscription Modification in Subscribe Service Operation When this feature is supported, the subscription of NSSAI availability information is supported to be modified (see clause 5.3.2.3.2). |
3 |
EANAN |
O |
Empty Authorized NSSAI Availability Notification A NSSF supporting this feature shall send a notification to NF consumer (as subscriber) with empty array of Authorized NSSAI Availability Data, when no supported NSSAI Authorized by the NSSF for all TAs after latest update and the NF consumer indicated support of this feature. A NF Consumer support this feature shall accept empty array of Authorized NSSAI Availability Data in a notification from NSSF and delete locally stored Authorized NSSAI Availability Data previously received. |
4 |
ES3XX |
M |
Extended Support of HTTP 307/308 redirection An NF Service Consumer (e.g. AMF) that supports this feature shall support handling of HTTP 307/308 redirection for any service operation of the Nnssf_NSSAIAvailability service. An NF Service Consumer that does not support this feature does only support HTTP redirection as specified for 3GPP Release 15. |
5 |
SATAS |
O |
Subscribe ALL TAIs for AMF Set A NSSF supporting this feature shall support the NF Consumer to subscribe to all TAI(s) for an AMF set. |
Feature number: The order number of the feature within the supportedFeatures attribute (starting with 1). Feature: A short name that can be used to refer to the bit and to the feature. M/O: Defines if the implementation of the feature is mandatory ("M") or optional ("O"). Description: A clear textual description of the feature. |
6.2.9 Security
As indicated in 3GPP TS 33.501 [11] and 3GPP TS 29.500 [4], the access to the Nnssf_NSSAIAvailability API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [12]), based on local configuration, using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [13]) plays the role of the authorization server.
If OAuth2 is used, an NF Service Consumer, prior to consuming services offered by the Nnssf_NSSAIAvailability API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [13], clause 5.4.2.2.
NOTE: When multiple NRFs are deployed in a network, the NRF used as authorization server is the same NRF that the NF Service Consumer used for discovering the Nnssf_NSSAIAvailability service.
The Nnssf_NSSAIAvailability API does not define any scopes for OAuth2 authorization.
6.2.10 HTTP redirection
An HTTP request may be redirected to a different NSSF service instance, within the same NSSF or a different NSSF of an NSSF set, e.g. when an NSSF service instance is part of an NSSF (service) set or when using indirect communications (see 3GPP TS 29.500 [4]). See the ES3XX feature in clause 6.2.8.
An SCP that reselects a different NSSF producer instance will return the NF Instance ID of the new NSSF producer instance in the 3gpp-Sbi-Producer-Id header, as specified in clause 6.10.3.4 of 3GPP TS 29.500 [4].
If an NSSF within an NSSF set redirects a service request to a different NSSF of the set using a 307 Temporary Redirect or 308 Permanent Redirect status code, the identity of the new NSSF towards which the service request is redirected shall be indicated in the 3gpp-Sbi-Target-Nf-Id header of the 307 Temporary Redirect or 308 Permanent Redirect response as specified in clause 6.10.9.1 of 3GPP TS 29.500 [4].
Annex A (normative):
OpenAPI specification