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
(Collection)

/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
(Collection)

/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:

  • – the AMF Instance ID, if the request is from an AMF;
  • the SMF Instance ID, if the request is from a combined SMF+PGW-C in EPS interworking case.

nfType

NFType

O

0..1

Indicates the NF type of the requester NF.

When present, it shall carry one of the following values:

  • NFType=AMF, if the request is from an AMF;
  • NFType=SMF, if the request is from a combined SMF+PGW-C in EPS interworking case.

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
(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