6 API Definitions
29.5363GPP5G SystemNetwork Slice Admission Control ServicesRelease 18Stage 3TS
6.1 Nnsacf_NSAC Service API
6.1.1 Introduction
The Nnsacf_NSAC shall use the Nnsacf_NSAC API.
The API URI of the Nnsacf_NSAC API shall be:
{apiRoot}/<apiName>/<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}/<apiName>/<apiVersion>/<apiSpecificResourceUriPart>
with the following components:
– The {apiRoot} shall be set as described in 3GPP TS 29.501 [5].
– The <apiName> shall be "nnsacf-nsac".
– The <apiVersion> shall be "v1".
– The <apiSpecificResourceUriPart> shall be set as described in clause 5.3.
6.1.2 Usage of HTTP
6.1.2.1 General
HTTP/2, IETF RFC 7540 [11], shall be used as specified in clause 5 of 3GPP TS 29.500 [4].
HTTP/2 shall be transported as specified in clause 5.3 of 3GPP TS 29.500 [4].
The OpenAPI [6] specification of HTTP messages and content bodies for the Nnsacf_NSAC API is contained 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
JSON, IETF RFC 8259 [12], shall be used as content type of the HTTP bodies specified in the present specification as specified in clause 5.4 of 3GPP TS 29.500 [4]. The use of the JSON format shall be signalled by the content type "application/json".
"Problem Details" JSON object shall be used to indicate additional details of the error in a HTTP response body and shall be signalled by the content type "application/problem+json", as defined in IETF RFC 7807 [13].
6.1.2.3 HTTP custom headers
The mandatory HTTP custom header fields specified in clause 5.2.3.2 of 3GPP TS 29.500 [4] shall be supported, and the optional HTTP custom header fields specified in clause 5.2.3.3 of 3GPP TS 29.500 [4] may be supported.
6.1.3 Resources
6.1.3.1 Overview
The figure 6.1.3.1-1 describes the resource URI structure of the Nnsacf-NSAC API.
Figure 6.1.3.1-1: Resource URI structure of the Nnsacf_NSAC 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 |
Slice Collection Subject to NSAC for UEs |
/slices/ues |
POST |
Request the NSACF to perform network slice admission control related to the number of UEs registered to a network slice, or a group of network slices. |
Slice Collection Subject to NSAC for PDU sessions |
/slices/pdus |
POST |
Request the NSACF to perform network slice admission control related to the number of PDU sessions established to a network slice, or a group of network slices. |
6.1.3.2 Resource: Slice Collection Subject to NSAC for UEs
6.1.3.2.1 Description
This resource represents the collection of slice subject to NSAC for UEs.
This resource is modelled with the Store resource archetype (see clause C.2 of 3GPP TS 29.501 [5]).
6.1.3.2.2 Resource Definition
Resource URI: {apiRoot}/<apiName>/<apiVersion>/slices/ues
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 POST
This method shall support the URI query parameters specified in table 6.1.3.2.3.1-1.
Table 6.1.3.2.3.1-1: URI query parameters supported by the POST method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Applicability |
This method shall support the request data structures specified in table 6.1.3.2.3.1-2 and the response data structures and response codes specified in table 6.1.3.2.3.1-3.
Table 6.1.3.2.3.1-2: Data structures supported by the POST Request Body on this resource
Data type |
P |
Cardinality |
Description |
UeACRequestData |
M |
1 |
Request data for NSAC procedure related to the number of UEs per slice. |
Table 6.1.3.2.3.1-3: Data structures supported by the POST Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
UeACResponseData |
M |
1 |
200 OK |
Response data for NSAC procedure related to the number of UEs per slice, in the case of not all S-NSSAIs are successful in the NSAC procedure. |
n/a |
204 No Content |
Upon success. Indicates all S-NSSAIs are successful in the NSAC procedure. |
||
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 NSACF or NSACF (service) set. (NOTE 2) |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during a NSAC procedure. 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 NSACF or NSACF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
When used to represent the failure of NSAC procedure, the "cause" attribute of the "ProblemDetails" shall be set to one of the following application error codes: – SLICE_NOT_FOUND, if all S-NSSAIs provided in the request are not found from the NSSAI which are subject to NSAC procedure; – ALL_SLICE_FAILED, if the list of S-NSSAIs is fully failed in the NSAC procedure. |
NOTE 1: The manadatory HTTP error status code for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. 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 NSACF or NSACF (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 NSACF or NSACF (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
In this release of this specification, no custom operations associated to this resource is defined.
6.1.3.3 Resource: Slice Collection Subject to NSAC for PDU sessions
6.1.3.3.1 Description
This resource represents the collection of slice subject to NSAC for PDU sessions.
This resource is modelled with the Store resource archetype (see clause C.2 of 3GPP TS 29.501 [5]).
6.1.3.3.2 Resource Definition
Resource URI: {apiRoot}/<apiName>/<apiVersion>/slices/pdus
This resource shall support the resource URI variables defined in table 6.1.3.3.2-1.
Table 6.1.3.3.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.3.3 Resource Standard Methods
6.1.3.3.3.1 POST
This method shall support the URI query parameters specified in table 6.1.3.3.3.1-1.
Table 6.1.3.3.3.1-1: URI query parameters supported by the POST method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Applicability |
This method shall support the request data structures specified in table 6.1.3.3.3.1-2 and the response data structures and response codes specified in table 6.1.3.3.3.1-3.
Table 6.1.3.3.3.1-2: Data structures supported by the POST Request Body on this resource
Data type |
P |
Cardinality |
Description |
PduACRequestData |
M |
1 |
Request data for NSAC procedure related to the number of PDU sessions per slice. |
Table 6.1.3.3.3.1-3: Data structures supported by the POST Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
PduACResponseData |
M |
1 |
200 OK |
Response data for NSAC procedure related to the number of PDU sessions per slice, in the case of not all S-NSSAIs are successful in the NSAC procedure. |
n/a |
204 No Content |
Upon success. Indicates all S-NSSAIs are successful in the NSAC procedure. |
||
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 NSACF or NSACF (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 NSACF or NSACF (service) set. (NOTE 2) |
ProblemDetails |
O |
0..1 |
403 Forbidden |
When used to represent the failure of NSAC procedure, the "cause" attribute of the "ProblemDetails" shall be set to one of the following application error codes: – SLICE_NOT_FOUND, if all S-NSSAIs provided in the request are not found from the NSSAI which are subject to NSAC procedure; – ALL_SLICE_FAILED, if the list of S-NSSAIs is fully failed in the NSAC procedure. |
NOTE 1: The manadatory HTTP error status code for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. NOTE 2: RedirectResponses may be inserted by an SCP, see clause 6.10.9.1 of 3GPP TS 29.500 [4]. |
Table 6.1.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 NSACF or NSACF (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.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 NSACF or NSACF (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.3.4 Resource Custom Operations
In this release of this specification, no custom operations associated to this resource is defined.
6.1.4 Custom Operations without associated resources
In this release of this specification, no custom operations without associated resources are defined.
6.1.5 Notifications
6.1.5.1 General
Notifications shall comply to clause 6.2 of 3GPP TS 29.500 [4] and clause 4.6.2.3 of 3GPP TS 29.501 [5].
Table 6.1.5.1-1: Notifications overview
Notification |
Callback URI |
HTTP method or custom operation |
Description (service operation) |
EAC Mode Notification |
{EACNotificationUri} |
POST |
Notify the NF Service Customer (e.g. AMF) of the activation/deactivation of EAC mode. |
6.1.5.2 EAC Mode Notification
6.1.5.2.1 Description
The EAC Mode Notification is used by the NSACF to inform the NF Service Consumer (e.g. AMF) of the activation/deactivation of EAC mode.
6.1.5.2.2 Target URI
The Callback URI "{EACNotificationUri}" shall be used with the callback URI variables defined in table 6.1.5.2.2-1.
Table 6.1.5.2.2-1: Callback URI variables
Name |
Definition |
eacNotificationUri |
Notification URI for receiving EAC mode notification. |
6.1.5.2.3 Standard Methods
6.1.5.2.3.1 POST
This method shall support the request data structures specified in table 6.1.5.2.3.1-1 and the response data structures and response codes specified in table 6.1.5.2.3.1-1.
Table 6.1.5.2.3.1-1: Data structures supported by the POST Request Body
Data type |
P |
Cardinality |
Description |
EACNotification |
M |
1 |
EAC mode notification |
Table 6.1.5.2.3.1-2: Data structures supported by the POST Response Body
Data type |
P |
Cardinality |
Response codes |
Description |
NOTE: The mandatory HTTP error status codes for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
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 Nnsacf_NSAC service based interface protocol.
Table 6.1.6.1-1: Nnsacf_NSAC specific Data Types
Data type |
Clause defined |
Description |
Applicability |
UeACRequestData |
6.1.6.2.2 |
Input data for NSAC procedure related to the number of UEs per slice. |
|
UeACResponseData |
6.1.6.2.3 |
Response data of NSAC procedure for controlling the number of UEs. |
|
EACNotification |
6.1.6.2.4 |
EAC mode notification |
|
AcuOperationItem |
6.1.6.2.5 |
An operation item for NSAC procedure, indicating an S-NSSAI subject to NSAC and the associated operation. |
|
AcuFailureItem |
6.1.6.2.6 |
A failure item which indicates the failed S-NSSAI and the failure reason. |
|
PduACRequestData |
6.1.6.2.7 |
Input data for NSAC procedure related to the number of PDUs per slice. |
|
PduACResponseData |
6.1.6.2.8 |
Response data of NSAC procedure for controlling the number of PDU sessions. |
|
EACMode |
6.1.6.3.3 |
EAC mode |
|
AcuFlag |
6.1.6.3.4 |
Update Flag for NSAC procedure |
|
AcuFailureReason |
6.1.6.3.5 |
Indicates the failure reason for an S-NSSAI in the NSAC procedure |
|
UeACRequestInfo |
6.1.6.2.9 |
One item of a UE and associated NSAC action. |
|
PduACRequestInfo |
6.1.6.2.10 |
One item of a PDU session and associated NSAC action. |
Table 6.1.6.1-2 specifies data types re-used by the Nnsacf_NSAC 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 Nnsacf_NSAC service based interface.
Table 6.1.6.1-2: Nnsacf_NSAC re-used Data Types
Data type |
Reference |
Comments |
Applicability |
ProblemDetails |
3GPP TS 29.571 [16] |
Problem Details |
|
RedirectResponse |
3GPP TS 29.571 [16] |
Redirect Response |
|
Supi |
3GPP TS 29.571 [16] |
Subscription Permanent Identifier |
|
Snssai |
3GPP TS 29.571 [16] |
Single NSSAI |
|
NfInstanceId |
3GPP TS 29.571 [16] |
NF Instance ID |
|
Uri |
3GPP TS 29.571 [16] |
Resource or callback URI |
|
AccessType |
3GPP TS 29.571 [16] |
Access Type |
|
NFType |
3GPP TS 29.510 [17] |
NF Type |
|
Fqdn |
3GPP TS 29.571 [16] |
FQDN |
|
PduSessionId |
3GPP TS 29.571 [16] |
PDU Session Identifier |
|
PlmnId |
3GPP TS 29.571 [16] |
PLMN ID |
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: UeACRequestData
Table 6.1.6.2.2-1: Definition of type UeACRequestData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
ueACRequestInfo |
array(UeACRequestInfo) |
M |
1..N |
List of UEs and their associated NSAC action details |
|
nfId |
NfInstanceId |
M |
1 |
Indicates the NF Instance ID. When present, it shall carry one of the following values:
|
|
nfType |
NFType |
O |
0..1 |
Indicates the NF type of the requester NF. When present, it shall carry one of the following values:
|
|
eacNotificationUri |
Uri |
O |
0..1 |
Indicates the EAC notification callback URI. If the EAC notification callback URI is present, the AMF Instance ID shall also be present. |
|
NOTE: If the NF consumer is combined SMF+PGW-C, the combined SMF+PGW-C determines the Access Type based on the RAT type parameter in the PMIP or GTP message received from the ePDG; or alternatively it can internally determine the Access Type based on the source node (e.g. SGW) sending the request for the PDN Connection establishment. |
6.1.6.2.3 Type: UeACResponseData
Table 6.1.6.2.3-1: Definition of type UeACResponseData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
acuFailureList |
map(array(AcuFailureItem)) |
C |
1..N(1..M) |
Indicates a list of S-NSSAI which is failed in the NSAC procedure, and the reasons for each S-NSSAI. Key of the map is the SUPI of the UE. |
6.1.6.2.4 Type: EACNotification
Table 6.1.6.2.4-1: Definition of type EACNotification
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
eacModeList |
map(EACMode) |
O |
1..N |
a map of EAC Mode where the S-NSSAI serves as the key. |
6.1.6.2.5 Type: AcuOperationItem
Table 6.1.6.2.5-1: Definition of type AcuOperationItem
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
updateFlag |
AcuFlag |
M |
1 |
Indicates the operation (i.e. increase or decrease) to the impacted S-NSSAI. |
|
snssai |
Snssai |
M |
1 |
Indicates the S-NSSAI for the increase or decrease operation. It shall contain S-NSSAI in serving PLMN or the mapped S-NSSAI in home PLMN. |
|
plmnId |
PlmnId |
C |
0..1 |
Indicates the PLMN ID associated to the S-NSSAI for increase or decrease operation. It shall be present in the NSAC procedure for the HR or LBO roaming case, or if the NSACF serves multiple PLMNs. |
6.1.6.2.6 Type: AcuFailureItem
Table 6.1.6.2.6-1: Definition of type AcuFailureItem
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
snssai |
Snssai |
M |
1 |
Indicates the S-NSSAI which is failed in the NSAC procedure. It shall contain S-NSSAI in serving PLMN or the mapped S-NSSAI in home PLMN. |
|
reason |
AcuFailureReason |
M |
1 |
Indicates the reason of an S-NSSAI which is failed in the NSAC procedure. |
|
pduSessionId |
PduSessionId |
C |
0..1 |
The PDU session Identifier, shall be present when response is for pduAC. |
|
plmnId |
PlmnId |
C |
0..1 |
Indicates the PLMN ID associated to the S-NSSAI which is failed in the NSAC procedure. It shall be present in the NSAC procedure for the HR or LBO roaming case, or if the NSACF serves multiple PLMN. |
6.1.6.2.7 Type: PduACRequestData
Table 6.1.6.2.7-1: Definition of type PduACRequestData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
pduACRequestInfo |
array(PduACRequestInfo) |
M |
1..N |
List of UEs and their associated NSAC action details |
|
nfId |
NfInstanceId |
O |
0..1 |
Indicates the SMF Instance ID. |
|
pgwFqdn |
Fqdn |
O |
0..1 |
Indicates the PGW-C FQDN, if the request is from a combined SMF+PGW-C, in EPS interworking case. |
6.1.6.2.8 Type: PduACResponseData
Table 6.1.6.2.8-1: Definition of type PduACResponseData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
acuFailureList |
map(array(AcuFailureItem)) |
C |
1..2 |
Indicates a list of S-NSSAIs which are failed in the NSAC procedure, and the reasons for each S-NSSAI. Key of the map is the SUPI of the UE. |
6.1.6.2.9 Type: UeACRequestInfo
Table 6.1.6.2.x-1: Definition of type UeACRequestInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
Supi |
Supi |
M |
1 |
Supi |
|
anType |
AccessType |
M |
1 |
Indicates the access type over which the UE registers to the network or deregisters from the network. (NOTE) |
|
acuOperationList |
array(AcuOperationItem) |
M |
1..N |
A list of S-NSSAI to which the UE is to be registered or from which the UE is to be de-registered. |
|
additionalAnType |
AccessType |
O |
0..1 |
Indicates the additional access type, when the UE deregisters from the network, if the UE previously registered to the network over 3GPP access and Non-3GPP access |
6.1.6.2.10 Type: PduACRequestInfo
Table 6.1.6.2.7-1: Definition of type PduACRequestData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
supi |
Supi |
M |
1 |
Supi |
|
anType |
AccessType |
M |
1 |
Indicates the access type over which the PDU session is to be established or released. |
|
pduSessionId |
PduSessionId |
M |
1 |
The PDU session Identifier |
|
acuOperationList |
array(AcuOperationItem) |
M |
1..2 |
A list of S-NSSAI to which the PDU session is to be established or from which the PDU session is to be released. |
|
additionalAnType |
AccessType |
O |
0..1 |
Indicates the additional access type, for a Multiple-Access PDU session, if the PDU session is to be established over both 3GPP access and Non-3GPP access, or if the PDU session is to be released from both 3GPP access and Non-3GPP access. |
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 |
Applicability |
6.1.6.3.3 Enumeration: EACMode
The enumeration EACMode represents the mode of Early Admission Control. It shall comply with the provisions defined in table 6.1.6.3.3-1.
Table 6.1.6.3.3-1: Enumeration EACMode
Enumeration value |
Description |
Applicability |
"ACTIVE" |
EAC mode is enabled. |
|
"DEACTIVE" |
EAC mode is disabled. |
6.1.6.3.4 Enumeration: AcuFlag
The enumeration AcuFlag indicates the operation (i.e. increase or decrease) applied to a list of S-NSSAI during the NSAC procedure. It shall comply with the provisions defined in table 6.1.6.3.4-1.
Table 6.1.6.3.4-1: Enumeration AcuFlag
Enumeration value |
Description |
Applicability |
"INCREASE" |
Indicates the impacted list of S-NSSAI is to be added to the NSACF for a UE (or a PDU session). |
|
"DECREASE" |
Indicates the impacted list of S-NSSAI is to be removed from the NSACF for a UE (or a PDU session). |
|
"UPDATE" |
Indicates for the impacted S-NSSAIs the access type of a PDU session is to be replaced. |
6.1.6.3.5 Enumeration: AcuFailureReason
The enumerationAcuFailureReason indicates the operation result of the NSAC procedure for an individual S-NSSAI. It shall comply with the provisions defined in table 6.1.6.3.5-1.
Table 6.1.6.3.5-1: Enumeration AcuFailureReason
Enumeration value |
Description |
Applicability |
"SLICE_NOT_FOUND" |
Indicates that an S-NSSAI is not found by the NSACF from the list of S-NSSAIs which are subject to NSAC procedure. |
|
"EXCEED_MAX_UE_NUM" |
Indicates for an S-NSSAI the number of UEs has exceeded the configured maximum number of UEs, if network slice admission control is not specific to one access type. |
|
"EXCEED_MAX_UE_NUM_3GPP" |
Indicates for an S-NSSAI the number of UEs has exceeded the configured maximum number of UEs, if network slice admission control is required for 3GPP access. (NOTE) |
|
"EXCEED_MAX_UE_NUM_N3GPP" |
Indicates for an S-NSSAI the number of UEs has exceeded the configured maximum number of UEs, if network slice admission control is required for Non-3GPP access. (NOTE) |
|
"EXCEED_MAX_PDU_NUM" |
Indicates for an S-NSSAI the number of PDU sessions has exceeded the configured maximum number of PDU sessions if network slice admission control is not specific to one access type. |
|
"EXCEED_MAX_PDU_NUM_3GPP" |
Indicates for an S-NSSAI the number of PDU sessions has exceeded the configured maximum number of PDU sessions, if network slice admission control is required for 3GPP access. |
|
"EXCEED_MAX_PDU_NUM_N3GPP" |
Indicates for an S-NSSAI the number of PDU sessions has exceeded the configured maximum number of PDU sessions, if network slice admission control is required for Non-3GPP access. |
|
NOTE: If this value is returned in the NSAC response message, how the NF service consumer (e.g. AMF) utilizes the access information carried in the AcuFailureReason value is implementation specific. |
6.1.6.4 Data types describing alternative data types or combinations of data types
In this release, no alternative data types or combinations of data types are defined in this specification.
6.1.6.5 Binary data
In this release, no binary data types are defined in this specification.
6.1.7 Error Handling
6.1.7.1 General
For the Nnsacf_NSAC API, HTTP error responses shall be supported as specified in clause 4.8 of 3GPP TS 29.501 [5]. Protocol errors and application errors specified in table 5.2.7.2-1 of 3GPP TS 29.500 [4] shall be supported for an HTTP method if the corresponding HTTP status codes are specified as mandatory for that HTTP method in table 5.2.7.1-1 of 3GPP TS 29.500 [4].
In addition, the requirements in the following clauses are applicable for the Nnsacf_NSAC API.
6.1.7.2 Protocol Errors
No specific procedures for the Nnsacf_NSAC service are specified.
6.1.7.3 Application Errors
The application errors defined for the Nnsacf_NSAC service are listed in Table 6.1.7.3-1.
Table 6.1.7.3-1: Application errors
Application Error |
HTTP status code |
Description |
SLICE_NOT_FOUND |
403 Forbidden |
All S-NSSAIs provided in the request are not found by the NSACF from the list of S-NSSAIs which are subjected to NSAC procedure. |
ALL_SLICE_FAILED |
403 Forbidden |
All S-NSSAIs are failed in the NSAC procedure, e.g. due to exceed the configured maximum number of UEs. |
6.1.8 Feature negotiation
The optional features in table 6.1.8-1 are defined for the Nnsacf_NSAC API. They shall be negotiated using the extensibility mechanism defined in clause 6.6 of 3GPP TS 29.500 [4].
Table 6.1.8-1: Supported Features
Feature number |
Feature Name |
Description |
6.1.9 Security
As indicated in 3GPP TS 33.501 [8] and 3GPP TS 29.500 [4], the access to the Nnsacf_NSAC API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [9]), based on local configuration, using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [10]) plays the role of the authorization server.
If OAuth2 is used, an NF Service Consumer, prior to consuming services offered by the Nnsacf_NSAC API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [10], 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 Nnsacf_NSAC service.
The Nnsacf_NSAC API defines a single scope nnsacf-nsac" for the entire service, and it does not define any additional scopes at resource or operation level.
6.2 Nnsacf_SliceEventExposure Service API
6.2.1 Introduction
The Nnsacf_SliceEventExposure shall use the Nnsacf_SliceEventExposure API.
The API URI of the Nnsacf_SliceEventExposure API shall be:
{apiRoot}/<apiName>/<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}/<apiName>/<apiVersion>/<apiSpecificResourceUriPart>
with the following components:
– The {apiRoot} shall be set as described in 3GPP TS 29.501 [5].
– The <apiName> shall be "nnsacf-slice-ee".
– 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 [11], shall be used as specified in clause 5 of 3GPP TS 29.500 [4].
HTTP/2 shall be transported as specified in clause 5.3 of 3GPP TS 29.500 [4].
The OpenAPI [6] specification of HTTP messages and content bodies for the Nnsacf_SliceEventExposure API is contained 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
JSON, IETF RFC 8259 [12], shall be used as content type of the HTTP bodies specified in the present specification as specified in clause 5.4 of 3GPP TS 29.500 [4]. The use of the JSON format shall be signalled by the content type "application/json".
"Problem Details" JSON object shall be used to indicate additional details of the error in a HTTP response body and shall be signalled by the content type "application/problem+json", as defined in IETF RFC 7807 [13].
6.2.2.3 HTTP custom headers
The mandatory HTTP custom header fields specified in clause 5.2.3.2 of 3GPP TS 29.500 [4] shall be supported, and the optional HTTP custom header fields specified in clause 5.2.3.3 of 3GPP TS 29.500 [4] may be supported.
6.2.3 Resources
6.2.3.1 Overview
The figure 6.2.3.1-1 describes the resource URI structure of the Nnsacf_SliceEventExposure API.
Figure 6.2.3.1-1: Resource URI structure of the Nnsacf_SliceEventExposure 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 |
Subscriptions Collection |
/subscriptions |
POST |
Mapped to the service operation Subscribe, when to create a subscription |
Individual subscription |
/subscriptions/{subscriptionId} |
PATCH |
Mapped to the service operation Subscribe, when to modify the subscription partially |
PUT |
Mapped to the service operation Subscribe, when to modify the subscription completely |
||
DELETE |
Mapped to the service operation Unsubscribe |
6.2.3.2 Resource: Subscriptions collection
6.2.3.2.1 Description
This resource represents a collection of subscriptions created by NF service consumers of Nnsacf_SliceEventExposure service.
This resource is modelled as the Collection resource archetype (see clause C.2 of 3GPP TS 29.501 [5]).
6.2.3.2.2 Resource Definition
Resource URI: {apiRoot}/nnsacf-slice-ee/<apiVersion>/subscriptions
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. |
6.2.3.2.3 Resource Standard Methods
6.2.3.2.3.1 POST
This method shall support the URI query parameters specified in table 6.2.3.2.3.1-1.
Table 6.2.3.2.3.1-1: URI query parameters supported by the POST 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.2.3.1-2 and the response data structures and response codes specified in table 6.2.3.2.3.1-3.
Table 6.2.3.2.3.1-2: Data structures supported by the POST Request Body on this resource
Data type |
P |
Cardinality |
Description |
SACEventSubscription |
M |
1 |
Represents the subscription to the events for slice admission control |
Table 6.2.3.2.3.1-3: Data structures supported by the POST Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
CreatedSACEventSubscription |
M |
1 |
201 Created |
Represents successful creation of the events subscription for slice admission control |
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 NSACF or NSACF (service) set. |
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 NSACF or NSACF (service) set. |
ProblemDetails |
O |
0..1 |
403 Forbidden |
Indicates the creation of subscription has failed due to application error. The "cause" attribute may be used to indicate one of the following application errors: – SLICE_NOT_FOUND |
NOTE: The manadatory HTTP error status code for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
Table 6.2.3.2.3.1-4: 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}/nnsacf-slice-ee/<apiVersion>/subscriptions/{subscriptionId} |
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 NSACF or NSACF (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 NSACF or NSACF (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.4 Resource Custom Operations
In this release of this specification, no custom operations associated to this resource is defined.
6.2.3.3 Resource: Individual subscription
6.2.3.3.1 Description
This resource represents an individual of subscription created by NF service consumers of Nnsacf_SliceEventExposure service.
This resource is modelled as the Document resource archetype (see clause C.1 of 3GPP TS 29.501 [5]).
6.2.3.3.2 Resource Definition
Resource URI: {apiRoot}/nnsacf-slice-ee/<apiVersion>/subscriptions/{subscriptionId}
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. |
subscriptionId |
string |
String identifies an individual subscription to the NSACF event exposure service |
6.2.3.3.3 Resource Standard Methods
6.2.3.3.3.1 PATCH
This method shall support the URI query parameters specified in table 6.2.3.3.3.1-1.
Table 6.2.3.3.3.1-1: URI query parameters supported by the PATCH 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.3.3.1-2 and the response data structures and response codes specified in table 6.2.3.3.3.1-3.
Table 6.2.3.3.3.1-2: Data structures supported by the PATCH Request Body on this resource
Data type |
P |
Cardinality |
Description |
array(PatchItem) |
M |
1..N |
It contains the list of changes to be made to the subscription, according to the JSON PATCH format specified in IETF RFC 6902 [14]. |
Table 6.2.3.3.3.1-3: Data structures supported by the PATCH Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
CreatedSACEventSubscription |
M |
1 |
200 OK |
Represents successful update of the events subscription for slice admission control |
n/a |
204 No Content |
Represents a successful update of the events subscription for slice admission control, and no information needs to be returned to the NF service consumer. |
||
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 NSACF or NSACF (service) set. |
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 NSACF or NSACF (service) set. |
ProblemDetails |
O |
0..1 |
403 Forbidden |
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: – SLICE_NOT_FOUND |
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: The manadatory HTTP error status code for the PATCH method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
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 NSACF or NSACF (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 NSACF or NSACF (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.3.2 PUT
This method shall support the URI query parameters specified in table 6.2.3.3.3.2-1.
Table 6.2.3.3.3.2-1: URI query parameters supported by the PUT 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.3.3.2-2 and the response data structures and response codes specified in table 6.2.3.3.3.2-3.
Table 6.2.3.3.3.2-2: Data structures supported by the PUT Request Body on this resource
Data type |
P |
Cardinality |
Description |
SACEventSubscription |
M |
1 |
Represents the events subscription for slice admission control to be completely replaced. |
Table 6.2.3.3.3.2-3: Data structures supported by the PUT Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
CreatedSACEventSubscription |
M |
1 |
200 OK |
Represents successful update of the events subscription for slice admission control. |
n/a |
204 No Content |
Represents the events subscription modification provided by the NF Service Consumer is accepted entirely. |
||
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 NSACF or NSACF (service) set. |
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 NSACF or NSACF (service) set. |
ProblemDetails |
O |
0..1 |
403 Forbidden |
Indicates the creation of subscription has failed due to application error. The "cause" attribute may be used to indicate one of the following application errors: – SLICE_NOT_FOUND |
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: The manadatory HTTP error status code for the PUT method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
Table 6.2.3.3.3.2-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 NSACF or NSACF (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.2-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 NSACF or NSACF (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.3.3 DELETE
This method shall support the URI query parameters specified in table 6.2.3.3.3.3-1.
Table 6.2.3.3.3.3-1: URI query parameters supported by the DELETE 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.3.3.3-2 and the response data structures and response codes specified in table 6.2.3.3.3.3-3.
Table 6.2.3.3.3.3-2: Data structures supported by the DELETE Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 6.2.3.3.3.3-3: Data structures supported by the DELETE Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No Content |
Upon success, an empty response body shall be returned. |
||
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 NSACF or NSACF (service) set. |
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 NSACF or NSACF (service) set. |
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: The manadatory HTTP error status code for the DELETE method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
Table 6.2.3.3.3.3-4: 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.3.3.3.3-5: 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.3.3.4 Resource Custom Operations
In this release of this specification, no custom operations associated to this resource is defined.
6.2.4 Custom Operations without associated resources
In this release of this specification, no custom operations without associated resources are defined.
6.2.5 Notifications
6.2.5.1 General
This clause specifies the notifications provided by the Nnsacf_SliceEventExposure service.
Table 6.2.5.1-1: Notifications overview
Notification |
Callback URI |
HTTP method or custom operation |
Description (service operation) |
NSACF Event Notification |
{eventNotifyUri} |
POST |
6.2.5.2 NSACF Event Notification
If a NF service consumer has subscribed to an event(s) supported by Nnsacf_SliceEventExposure service, when NSACF aware of a state change of the event, NSACF shall create a notification including the event state report, and shall deliver the notification to the call-back URI, following Subscribe/Notify mechanism defined in 3GPP TS 29.501 [5].
6.2.5.2.1 Notification Definition
Call-back URI: {callbackUri}
Call-back URI is "eventNotifyUri" provided by NF Service Consumer during creation of the subscription.
6.2.5.2.2 Notification Standard Methods
6.2.5.2.2.1 POST
This method shall support the request data structures specified in table 6.2.5.2.2.1-1 and the response data structures and response codes specified in table 6.2.5.2.2.1-2.
Table 6.2.5.2.2.1-2: Data structures supported by the POST Request Body
Data type |
P |
Cardinality |
Description |
SACEventReport |
M |
1 |
Represents the notification to be delivered |
Table 6.2.5.2.2.1-3: Data structures supported by the POST Response Body
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No Content |
Upon success, an empty response body shall be returned. |
||
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. |
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: The manadatory HTTP error status code for the POST method listed in Table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. |
Table 6.2.5.2.2.1-4: 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.2.1-5: 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 Nnsacf_SliceEventExposure service based interface protocol.
Table 6.2.6.1-1: Nnsacf_SliceEventExposure specific Data Types
Data type |
Clause defined |
Description |
Applicability |
SACEventSubscription |
6.2.6.2.2 |
Request data to create the event subscription |
|
CreatedSACEventSubscription |
6.2.6.2.3 |
Response data on created event subscription |
|
SACEventReport |
6.2.6.2.4 |
Event notification |
|
SACEvent |
6.2.6.2.5 |
Describes an event to be subscribed |
|
SACEventReportItem |
6.2.6.2.6 |
Represents a report triggered by a subscribed event type |
|
SACEventState |
6.2.6.2.7 |
Represents the state of a subscribed event |
|
SACEventType |
6.2.6.3.3 |
Describes the supported event types |
|
SACEventTrigger |
6.2.6.3.4 |
Describes how NSACF should generate the report for the event |
Table 6.2.6.1-2 specifies data types re-used by the Nnsacf_SliceEventExposure 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 Nnsacf_SliceEventExposure service based interface.
Table 6.2.6.1-2: Nnsacf_SliceEventExposure re-used Data Types
Data type |
Reference |
Comments |
Applicability |
PatchItem |
3GPP TS 29.571 [16] |
||
Uri |
3GPP TS 29.571 [16] |
Callback URI |
|
NfInstanceId |
3GPP TS 29.571 [16] |
NF Instance Id |
|
DurationSec |
3GPP TS 29.571 [16] |
Time value in seconds |
|
SACInfo |
3GPP TS 29.571 [16] |
SAC Information |
|
DateTime |
3GPP TS 29.571 [16] |
UTC time |
|
SupportedFeatures |
3GPP TS 29.571 [16] |
Supported Features |
|
Snssai |
3GPP TS 29.571 [16] |
S-NSSAI |
|
SACEventStatus |
3GPP TS 29.571 [16] |
SAC Event Status |
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: SACEventSubscription
Table 6.2.6.2.2-1: Definition of type SACEventSubscription
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
event |
SACEvent |
M |
1 |
Describes the event to be subscribed in subscription request. |
|
eventNotifyUri |
Uri |
M |
1 |
Identifies the recipient of notifications sent by NSACF for this subscription. |
|
nfId |
NfInstanceId |
M |
1 |
Indicates the instance identity of the network function creating the subscription. |
|
notifyCorrelationId |
string |
C |
0..1 |
This IE shall be present if available. If present, this IE identifies the notification correlation ID. The NSACF shall include this ID in the notifications. The value of this IE shall be unique per subscription for a given NF service consumer. |
|
maxReports |
integer |
C |
0..1 |
This IE shall be present if available. If present, this IE contains the maximum number of reports that can be generated by each subscribed event in the subscription. |
|
expiry |
DateTime |
C |
0..1 |
This IE shall be included in an event subscription response, if, based on operator policy and taking into account the expiry time included in the request, the NSACF needs to include an expiry time. This IE may be included in an event subscription request. When present, this IE shall represent the time after which the subscribed event(s) shall stop generating report and the subscription becomes invalid. This IE shall be absent in the response for one time and immediate reporting (see clause 5.3.2.2.4). |
|
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.3.8 is supported. |
6.2.6.2.3 Type: CreatedSACEventSubscription
Table 6.2.6.2.3-1: Definition of type CreatedSACEventSubscription
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
subscription |
SACEventSubscription |
M |
1 |
Represents the newly created SAC Event Subscription resource. |
|
subscriptionId |
string |
M |
1 |
Represents the subscription Id of the newly created SAC Event Subscription resource. |
|
report |
SACEventReportItem |
C |
0..1 |
This IE shall be present if available and if the immediateFlag attribute is set to "true" in subscription request. When present, this IE represents the immediate event report (i.e. the current value of the event subscribed). |
|
supportedFeatures |
SupportedFeatures |
C |
0..1 |
This IE shall be present if at least one optional feature defined in clause 6.3.8 is supported. |
6.2.6.2.4 Type: SACEventReport
Table 6.2.6.2.4-1: Definition of type SACEventReport
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
report |
SACEventReportItem |
M |
1 |
This IE represents the event report to be delivered. |
|
notifyCorrelationId |
string |
C |
0..1 |
This IE shall be present if available. If present, this IE indicate the notification correlation Id provided by the NF service consumer during event subscription. This parameter can be useful if the NF service consumer uses a common call-back URI for multiple subscriptions. |
6.2.6.2.5 Type: SACEvent
Table 6.2.6.2.5-1: Definition of type SACEvent
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
eventType |
SACEventType |
M |
1 |
Describes the event type to be reported. |
|
eventTrigger |
SACEventTrigger |
C |
0..1 |
Describes how the reports are triggered. (See NOTE 1) |
|
eventFilter |
array(Snssai) |
M |
1..N |
This IE shall indicate the S-NSSAI list to be applied. |
|
notificationPeriod |
DurationSec |
C |
0..1 |
This IE shall be present if the eventTrigger is set to "PERIODIC". When present, this IE contains the time period for the event reports. |
|
notifThreshold |
SACInfo |
C |
0..1 |
This IE shall be present if the eventTrigger is set to "THRESHOLD". When present, this IE Indicates the monitoring threshold value, upon which event notification(s) are triggered. |
|
immediateFlag |
boolean |
O |
0..1 |
This attribute shall be set to "true" to indicate an immediate event report in the subscription response is requested. The report contains the current value of the event stored at the time of the subscription in the NSACF. (See NOTE) |
|
NOTE 1: The eventTrigger shall not be present if the maxReports attribute in the SACEventSubscription is set to 1. Otherwise, the eventTrigger shall be present. NOTE 2: If the immediateFlag flag is absent or set to "false", then the immediate reporting shall not be done. |
6.2.6.2.6 Type: SACEventReportItem
Table 6.2.6.2.6-1: Definition of type SACEventReportItem
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
eventType |
SACEventType |
M |
1 |
Describes the type of the event which triggers the report |
|
eventState |
SACEventState |
M |
1 |
Describes the state of the event which triggered the report. |
|
timeStamp |
DateTime |
M |
1 |
This IE shall contain the time at which the event is generated. |
|
eventFilter |
Snssai |
M |
1 |
This IE shall indicate the S-NSSAI to be applied. |
|
sliceStautsInfo |
SACEventStatus |
C |
0..1 |
If the "eventType" attribute is set to "NUM_OF_REGD_UES" or "NUM_OF_ESTD_PDU_SESSIONS", this parameter shall be included to indicate the current network slice status information for the concerned network slice. (NOTE) |
|
NOTE: For periodic reporting, both of the values expressed in percentage and in numerical shall be included. |
6.2.6.2.7 Type: SACEventState
Table 6.2.6.2.7-1: Definition of type SACEventState
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
active |
boolean |
M |
1 |
Represents the active state of the subscribe event. "TRUE" value indicates the event will continue generating reports; "FALSE" value indicates the event will not generate further report. |
|
remainReports |
integer |
O |
0..1 |
Represents the number of remain reports to be generated by the subscribed event. |
|
remainDuration |
DurationSec |
O |
0..1 |
Represents how long the subscribed event will continue generating reports. |
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 |
Applicability |
6.2.6.3.3 Enumeration: SACEventType
Table 6.2.6.3.3-1: Enumeration SACEventType
Enumeration value |
Description |
Applicability |
"NUM_OF_REGD_UES" |
A NF subscribes to this event to receive the current number of registered UEs for a network slice. |
|
"NUM_OF_ESTD_PDU_SESSIONS" |
A NF subscribes to this event to receive the current number of established PDU Sessions for a network slice. |
6.2.6.3.4 Enumeration: SACEventTrigger
Table 6.2.6.3.4-1: Enumeration SACEventTrigger
Enumeration value |
Description |
Applicability |
"THRESHOLD" |
Defines that the NSACF should generate reports for the event when the defined threshold value is reached, until the subscription to this event ends: – due to end of report duration or – up to the maximum number of reports or – the event being unsubscribed explicitly. |
|
"PERIODIC" |
Defines that the NSACF should periodically generate reports for the event, until the subscription to this event ends: – due to end of report duration or – up to the maximum number of reports or – the event being unsubscribed explicitly. |
6.2.6.4 Data types describing alternative data types or combinations of data types
In this release, no alternative data types or combinations of data types are defined in this specification.
6.2.6.5 Binary data
In this release, no binary data types are defined in this specification.
6.2.7 Error Handling
6.2.7.1 General
For the Nnsacf_SliceEventExposure API, HTTP error responses shall be supported as specified in clause 4.8 of 3GPP TS 29.501 [5]. Protocol errors and application errors specified in table 5.2.7.2-1 of 3GPP TS 29.500 [4] shall be supported for an HTTP method if the corresponding HTTP status codes are specified as mandatory for that HTTP method in table 5.2.7.1-1 of 3GPP TS 29.500 [4].
In addition, the requirements in the following clauses are applicable for the Nnsacf_SliceEventExposure API.
6.2.7.2 Protocol Errors
No specific procedures for the Nnsacf_SliceEventExposure service are specified.
6.2.7.3 Application Errors
The application errors defined for the Nnsacf_SliceEventExposure service are listed in Table 6.2.7.3-1.
Table 6.2.7.3-1: Application errors
Application Error |
HTTP status code |
Description |
SLICE_NOT_FOUND |
403 Forbidden |
The given S-NSSAI is not found by the NSACF in the list of S-NSSAIs which are subjected to NSAC procedure. |
6.2.8 Feature negotiation
The optional features in table 6.3.8-1 are defined for the Nnsacf_SliceEventExposure API. They shall be negotiated using the extensibility mechanism defined in clause 6.6 of 3GPP TS 29.500 [4].
Table 6.2.8-1: Supported Features
Feature number |
Feature Name |
Description |
6.2.9 Security
As indicated in 3GPP TS 33.501 [8] and 3GPP TS 29.500 [4], the access to the Nnsacf_SliceEventExposure API may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [9]), based on local configuration, using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [10]) plays the role of the authorization server.
If OAuth2 is used, an NF Service Consumer, prior to consuming services offered by the Nnsacf_SliceEventExposure API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [10], 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 Nnsacf_SliceEventExposure service.
The Nnsacf_SliceEventExposure API defines a single scope "nnsacf-slice-ee" for the entire service, and it does not define any additional scopes at resource or operation level.
Annex A (normative):
OpenAPI specification