5 Npcf_BDTPolicyControl API

29.5543GPP5G SystemBackground Data Transfer Policy Control ServiceRelease 18Stage 3TS

5.1 Introduction

The BDT Policy Control Service shall use the Npcf_BDTPolicyControl API.

The API URI of the Npcf_BDTPolicyControl API shall be:

{apiRoot}/<apiName>/<apiVersion>

The request URI used in each HTTP request from the NF service consumer towards the PCF shall have the structure defined in clause 4.4.1 of 3GPP TS 29.501 [7], i.e.:

{apiRoot}/<apiName>/<apiVersion>/<apiSpecificResourceUriPart>

with the following components:

– The {apiRoot} shall be set as described in 3GPP TS 29.501 [7].

– The <apiName> shall be "npcf-bdtpolicycontrol".

– The <apiVersion> shall be "v1".

– The <apiSpecificResourceUriPart> shall be set as described in clause 5.3.

5.2 Usage of HTTP

5.2.1 General

HTTP/2, IETF RFC 7540 [8], shall be used as specified in clause 5.2 of 3GPP TS 29.500 [6].

HTTP/2 shall be transported as specified in clause 5.3 of 3GPP TS 29.500 [6].

The OpenAPI [10] specification of HTTP messages and content bodies for the Npcf_BDTPolicyControl is contained in Annex A.

5.2.2 HTTP standard headers

5.2.2.1 General

See clause 5.2.2 of 3GPP TS 29.500 [6] for the usage of HTTP standard headers.

5.2.2.2 Content type

JSON, IETF RFC 8259 [9], 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 [6]. The use of the JSON format shall be signalled by the content type "application/json".

JSON object used in the HTTP PATCH request shall be encoded according to "JSON Merge Patch" and shall be signalled by the content type "application/merge-patch+json", as defined in IETF RFC 7396 [15].

"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 [17].

5.2.3 HTTP custom headers

The Npcf_BDTPolicyControl API shall support mandatory HTTP custom header fields specified in clause 5.2.3.2 of 3GPP TS 29.500 [6] and may support optional HTTP custom header fields specified in clause 5.2.3.3 of 3GPP TS 29.500 [6].

In this Release of the specification, no specific custom headers are defined for the Npcf_BDTPolicyControl API.

5.3 Resources

5.3.1 Resource Structure

This clause describes the structure for the Resource URIs and the resources and methods used for the service.

Figure 5.3.1-1 depicts the resource URIs structure for the Npcf_BDTPolicyControl API.

Figure 5.3.1-1: Resource URI structure of the Npcf_BDTPolicyControl API

Table 5.3.1-1 provides an overview of the resources and applicable HTTP methods.

Table 5.3.1-1: Resources and methods overview

Resource name

Resource URI

HTTP method or custom operation

Description

BDT policies

/bdtpolicies

POST

Npcf_BDTPolicyControl_Create. Creates a new Individual BDT policy resource.

Individual BDT policy

/bdtpolicies/{bdtPolicyId}

GET

Reads an Individual BDT policy resource.

PATCH

Npcf_BDTPolicyControl_Update.

Modifies an existing Individual BDT policy resource by selecting or reselecting a transfer policy.

5.3.2 Resource: BDT policies (Collection)

5.3.2.1 Description

The BDT policies resource represents all the transfer policies that exist in the BDT Policy Control service at a given PCF instance.

5.3.2.2 Resource definition

Resource URI: {apiRoot}/npcf-bdtpolicycontrol/v1/bdtpolicies

This resource shall support the resource URI variables defined in table 5.3.2.2-1.

Table 5.3.2.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 5.1.

5.3.2.3 Resource Standard Methods

5.3.2.3.1 POST

This method shall support the URI query parameters specified in table 5.3.2.3.1-1.

Table 5.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 5.3.2.3.1-2 and the response data structures and response codes specified in table 5.3.2.3.1-3.

Table 5.3.2.3.1-2: Data structures supported by the POST Request Body on this resource

Data type

P

Cardinality

Description

BdtReqData

M

1

Contains information for the creation of a new Individual BDT policy resource.

Table 5.3.2.3.1-3: Data structures supported by the POST Response Body on this resource

Data type

P

Cardinality

Response Codes

Description

BdtPolicy

M

1

201 Created

Successful case.

The creation of an Individual BDT policy resource is confirmed and a representation of that resource is returned.

n/a

303 See Other

The result of the HTTP POST request would be equivalent to the existing Individual BDT policy resource. The HTTP response shall contain a Location header field set to the URI of the existing individual BDT policy resource.

NOTE: In addition, the HTTP status codes which are specified as mandatory in table 5.2.7.1-1 of 3GPP TS 29.500 [6] for the POST method shall also apply.

Table 5.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}/npcf-bdtpolicycontrol/v1/bdtpolicies/{bdtPolicyId}.

Table 5.3.2.3.1-5: Headers supported by the 303 Response Code on this resource

Name

Data type

P

Cardinality

Description

Location

string

M

1

Contains the URI of the existing individual BDT policy resource.

5.3.2.4 Resource Custom Operations

None.

5.3.3 Resource: Individual BDT policy (Document)

5.3.3.1 Description

The Individual BDT policy resource represents the transfer policies that exist in the BDT Policy Control service at a given PCF instance.

5.3.3.2 Resource definition

Resource URI: {apiRoot}/npcf-bdtpolicycontrol/v1/bdtpolicies/{bdtPolicyId}

This resource shall support the resource URI variables defined in table 5.3.3.2-1.

Table 5.3.3.2-1: Resource URI variables for this resource

Name

Data type

Definition

apiRoot

string

See clause 5.1.

bdtPolicyId

string

Identifies the individual BDT policy resource in the PCF.

To enable the value to be used as part of a URI, the string shall only contain allowed characters according to the "lower-with-hyphen" naming convention defined in clause 5.1.3 of 3GPP TS 29.501 [7] and rules for a path segment defined in IETF RFC 3986 [16].

5.3.3.3 Resource Standard Methods

5.3.3.3.1 GET

This method shall support the URI query parameters specified in table 5.3.3.3.1-1.

Table 5.3.3.3.1-1: URI query parameters supported by the GET method on this resource

Name

Data type

P

Cardinality

Description

n/a

This method shall support the request data structures specified in table 5.3.3.3.1-2 and the response data structures and response codes specified in table 5.3.3.3.1-3.

Table 5.3.3.3.1-2: Data structures supported by the GET Request Body on this resource

Data type

P

Cardinality

Description

n/a

Table 5.3.3.3.1-3: Data structures supported by the GET Response Body on this resource

Data type

P

Cardinality

Response codes

Description

BdtPolicy

M

1

200 OK

A representation of an Individual BDT policy resource is returned.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection, during resource retrieval. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance.

Applicable if the feature "ES3XX" is supported.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection, during resource retrieval. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance.

Applicable if the feature "ES3XX" is supported.

ProblemDetails

O

0..1

404 Not Found

(NOTE 2)

NOTE 1: In addition, the HTTP status codes which are specified as mandatory in table 5.2.7.1-1 of 3GPP TS 29.500 [6] for the GET method shall also apply.

NOTE 2: Failure cases are described in clause 5.7.

Table 5.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 in an alternative PCF (service) instance.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the request is redirected.

Table 5.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 in an alternative PCF (service) instance.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the request is redirected.

5.3.3.3.2 PATCH

This method shall support the URI query parameters specified in table 5.3.3.3.2-1.

Table 5.3.3.3.2-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 5.3.3.3.2-2 and the response data structures and response codes specified in table 5.3.3.3.2-3.

Table 5.3.3.3.2-2: Data structures supported by the PATCH Request Body on this resource

Data type

P

Cardinality

Description

PatchBdtPolicy

M

1

Contains modification instructions to be performed on the BdtPolicy data structure to select a transfer policy and in addition, may indicate whether the BDT warning notification is enabled or disabled.

Table 5.3.3.3.2-3: Data structures supported by the PATCH Response Body on this resource

Data type

P

Cardinality

Response Codes

Description

BdtPolicy

M

1

200 OK

Successful case.

The Individual BDT Policy resource is modified and a representation of that resource is returned.

n/a

204 No Content

Successful case.

The Individual BDT Policy resource is modified.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection, during resource modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance.

Applicable if the feature "ES3XX" is supported.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection, during resource modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance.

Applicable if the feature "ES3XX" is supported.

ProblemDetails

O

0..1

404 Not Found

(NOTE 2)

NOTE 1: In addition, the HTTP status codes which are specified as mandatory in table 5.2.7.1-1 of 3GPP TS 29.500 [6] for the PATCH method shall also apply.

NOTE 2: Failure cases are described in clause 5.7.

Table 5.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 in an alternative PCF (service) instance.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the request is redirected.

Table 5.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 in an alternative PCF (service) instance.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the request is redirected.

5.4 Custom Operations without associated resources

No custom operation is defined in this Release of the specification.

5.5 Notifications

5.5.1 General

Notifications shall comply to clause 6.2 of 3GPP TS 29.500 [6] and clause 4.6.2.3 of 3GPP TS 29.501 [7].

Table 5.5.1-1: Notifications overview

Notification

Callback URI

HTTP method or custom operation

Description (service operation)

BDT Notification

{notifUri}

POST

Provides BDT notification.

5.5.2 BDT Notification

5.5.2.1 Description

The BDT Notification is used by the PCF to notify the NF service consumer about changed conditions for background data transfer e.g. that a network performance in the area of interest goes below the criteria set by the operator.

5.5.2.2 Target URI

The Callback URI "{notifUri}" shall be used with the callback URI variables defined in table 5.5.2.2-1.

Table 5.5.2.2-1: Callback URI variables

Name

Data type

Definition

notifUri

Uri

It contains the URI of the recipient of BDT notification as assigned by the NF service consumer during the Create service operation and described within the BdtReqData (see table 5.6.2.3-1).

5.5.2.3 Standard Methods

5.5.2.3.1 POST

This method shall support the URI query parameters specified in table 5.5.2.3.1-1.

Table 5.5.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 5.5.2.3.1-2 and the response data structures and response codes specified in table 5.5.2.3.1-3.

Table 5.5.2.3.1-2: Data structures supported by the POST Request Body on this resource

Data type

P

Cardinality

Description

Notification

M

1

Provides BDT notification.

Table 5.5.2.3.1-3: Data structures supported by the POST Response Body on this resource

Data type

P

Cardinality

Response codes

Description

n/a

204 No Content

Successful case.

The reception of the BDT notification is acknowledged.

RedirectResponse

O

0..1

307 Temporary Redirect

Temporary redirection, during notification. The response shall include a Location header field containing an alternative URI representing the end point of an alternative NF consumer (service) instance where the notification should be sent.

Applicable if the feature "ES3XX" is supported.

RedirectResponse

O

0..1

308 Permanent Redirect

Permanent redirection, during notification. The response shall include a Location header field containing an alternative URI representing the end point of an alternative NF consumer (service) instance where the notification should be sent.

Applicable if the feature "ES3XX" is supported.

NOTE: In addition, the HTTP status codes which are specified as mandatory in table 5.2.7.1-1 of 3GPP TS 29.500 [6] for the POST method shall also apply.

Table 5.5.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 representing the end point of an alternative NF consumer (service) instance towards which the notification should be redirected.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the notification request is redirected.

Table 5.5.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 representing the end point of an alternative NF consumer (service) instance towards which the notification should be redirected.

3gpp-Sbi-Target-Nf-Id

string

O

0..1

Identifier of the target NF (service) instance towards which the notification request is redirected.

5.6 Data Model

5.6.1 General

This clause specifies the application data model supported by the API.

Table 5.6.1-1 specifies the data types defined for the Npcf_BDTPolicyControl service based interface protocol.

Table 5.6.1-1: Npcf_BDTPolicyControl specific Data Types

Data type

Section defined

Description

Applicability

BdtPolicy

5.6.2.2

Represents an Individual BDT policy resource.

BdtPolicyData

5.6.2.4

Describes an Individual BDT policy resource.

BdtPolicyDataPatch

5.6.2.6

Contains modification instructions to be performed on the "bdtPolData" property of the BdtPolicy data structure to select a transfer policy.

BdtReqData

5.6.2.3

Contains information for creation a new Individual BDT policy resource.

BdtReqDataPatch

5.6.2.12

Describes the modifications to the BDT request data of an Individual BDT policy resource.

PatchCorrection

NetworkAreaInfo

5.6.2.8

Describes a network area information in which the NF service consumer requests the number of UEs.

Notification

5.6.2.10

Contains the BDT notification information.

BdtNotification_5G

PatchBdtPolicy

5.6.2.11

Describes the modifications to the BDT Policy Data and BDT Policy Request data of an Individual BDT policy resource.

PatchCorrection

TransferPolicy

5.6.2.5

Describes a transfer policy.

Table 5.6.1-2 specifies data types re-used by the Npcf_BDTPolicyControl 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 Npcf_BDTPolicyControl service based interface.

Table 5.6.1-2: Npcf_BDTPolicyControl re-used Data Types

Data type

Reference

Comments

Applicability

BdtReferenceId

3GPP TS 29.122 [14]

Identifies transfer policy of background data transfer for provided ASP.

BitRate

3GPP TS 29.571 [13]

Specifies bitrate in kbits per second.

Dnn

3GPP TS 29.571 [13]

Identifies a Data Network Name.

Ecgi

3GPP TS 29.571 [13]

Represents an EUTRA cell identifier.

GlobalRanNodeId

3GPP TS 29.571 [13]

Represents an identity of the NG-RAN node.

GroupId

3GPP TS 29.571 [13]

Identifies a group of UEs.

Ncgi

3GPP TS 29.571 [13]

Represents an NR cell identifier.

ProblemDetails

3GPP TS 29.571 [13]

Used in error responses to provide more detailed information about an error.

RedirectResponse

3GPP TS 29.571 [13]

Contains redirection related information.

ES3XX

Snssai

3GPP TS 29.571 [13]

Identifies a Single Network Slice Selection Assistance Information.

SupportedFeatures

3GPP TS 29.571 [13]

Used to negotiate the applicability of the optional features defined in table 5.8-1.

Tai

3GPP TS 29.571 [13]

Represents a tracking area identity.

TimeWindow

3GPP TS 29.122 [14]

Specifies a time interval.

TrafficDescriptor

3GPP TS 29.122 [14]

Represents a traffic descriptor.

Uri

3GPP TS 29.571 [13]

String providing an URI.

BdtNotification_5G

UsageThreshold

3GPP TS 29.122 [14]

Represents a data volume expected to be transferred per UE.

5.6.2 Structured data types

5.6.2.1 Introduction

This clause defines the structures to be used in resource representations.

5.6.2.2 Type BdtPolicy

Table 5.6.2.2-1: Definition of type BdtPolicy

Attribute name

Data type

P

Cardinality

Description

Applicability

bdtPolData

BdtPolicyData

C

0..1

Describes the authorization data of an Individual BDT Policy created by the PCF.

It shall be present in the response to the POST request that requests a creation of an Individual BDT Policy resource and in the response to GET request.

bdtReqData

BdtReqData

C

0..1

Identifies the service requirements of an Individual BDT Policy.

It shall be present in the POST request that requests a creation of an Individual BDT Policy resource and in the response to GET request.

5.6.2.3 Type BdtReqData

Table 5.6.2.3-1: Definition of type BdtReqData

Attribute name

Data type

P

Cardinality

Description

Applicability

aspId

AspId

M

1

This IE contains an identity of an application service provider.

desTimeInt

TimeWindow

M

1

This IE indicates a desired time window for BDT.

dnn

Dnn

O

0..1

This IE identifies a DNN. A full DNN with both the Network Identifier and Operator Identifier, or a DNN with the Network Identifier only.

(NOTE)

interGroupId

GroupId

O

0..1

Represents an internal group identifier and identifies a group of UEs.

notifUri

Uri

O

0..1

This IE indicates that the NF service consumer requests a BDT notification from the PCF. It contains an URI of the recipient of BDT notification.

BdtNotification_5G

nwAreaInfo

NetworkAreaInfo

O

0..1

This IE represents a network area information in which the NF service consumer requests a number of UEs.

It may be present in the POST request that requests a creation of an Individual BDT Policy and in the response to GET request.

numOfUes

integer

M

1

This IE indicates a number of UEs.

snssai

Snssai

O

0..1

This IE identifies a slice.

suppFeat

SupportedFeatures

C

0..1

This IE represents a list of Supported features used as described in clause 5.8.

It shall be supplied by the NF service consumer in the POST request that request a creation of an Individual BDT Policy resource.

trafficDes

TrafficDescriptor

O

0..1

Contains the traffic descriptor of the background data.

volPerUe

UsageThreshold

M

1

This IE indicates a data volume expected to be transferred per UE.

warnNotifReq

boolean

O

0..1

This IE indicates whether the BDT warning notification is enabled or disabled.

It may be present:

– in the POST request that requests a creation of an Individual BDT Policy and in the corresponding response; and

– in responses to GET and PATCH requests.

true: enabled;

false: disabled (default).

BdtNotification_5G

NOTE: The PCF uses the DNN as received from the NF service consumer without applying any transformation. To successfully perform DNN matching, in a specific deployment a DNN shall always be encoded either with the full DNN (e.g., because there are multiple Operator Identifiers for a Network Identifier) or the DNN Network Identifier only. The NF service consumer may include the DNN Operator Identifier based on local configuration.

5.6.2.4 Type BdtPolicyData

Table 5.6.2.4-1: Definition of type BdtPolicyData

Attribute name

Data type

P

Cardinality

Description

Applicability

bdtRefId

BdtReferenceId

M

1

This IE indicates transfer policies of background data transfer for provided ASP.

selTransPolicyId

integer

C

0..1

This IE contains the identity of the selected transfer policy.

It shall be present in the response to the PATCH request that modifies an Individual BDT Policy resource to indicate a selected transfer policy.

suppFeat

SupportedFeatures

C

0..1

This IE represents a list of Supported features used as described in clause 5.8.

It shall be supplied by the PCF in the response to the POST request that requests a creation of an Individual BDT Policy resource.

transfPolicies

array(TransferPolicy)

M

1..N

This IE contains transfer policies.

It shall be supplied by the PCF in the response to the POST request that requests a creation of an Individual BDT Policy resource.

5.6.2.5 Type TransferPolicy

Table 5.6.2.5-1: Definition of type TransferPolicy

Attribute name

Data type

P

Cardinality

Description

Applicability

maxBitRateDl

BitRate

O

0..1

This IE indicates a maximum aggregated bitrate in the downlink direction authorized by the PCF.

maxBitRateUl

BitRate

O

0..1

This IE indicates a maximum aggregated bitrate in the uplink direction authorized by the PCF.

ratingGroup

integer

M

1

This IE indicates a rating group for the recommended time window.

recTimeInt

TimeWindow

M

1

This IE indicates a recommended time window of a transfer policy.

transPolicyId

integer

M

1

This IE contains an identity of a transfer policy.

5.6.2.6 Type BdtPolicyDataPatch

Table 5.6.2.6-1: Definition of type BdtPolicyDataPatch

Attribute name

Data type

P

Cardinality

Description

Applicability

selTransPolicyId

integer

M

1

This IE contains an identity (i.e. the transPolicyId value) of a selected transfer policy.

If the BdtNotification_5G feature is supported value "0" indicates that no transfer policy is selected.

5.6.2.7 Void

5.6.2.8 Type NetworkAreaInfo

Table 5.6.2.8-1: Definition of type NetworkAreaInfo

Attribute name

Data type

P

Cardinality

Description

Applicability

ecgis

array(Ecgi)

O

1..N

This IE contains a list of E‑UTRA cell identities.

ncgis

array(Ncgi)

O

1..N

This IE contains a list of NR cell identities.

gRanNodeIds

array(GlobalRanNodeId)

O

1..N

This IE contains a list of the NG‑RAN nodes.

The "n3IwfId" attribute within the "GlobalRanNodeId" data type shall not be supplied.

tais

array(Tai)

O

1..N

This IE contains a list of tracking area identities.

NOTE: The NetworkAreaInfo data type allows any combination of defined properties.

5.6.2.9 Void

5.6.2.10 Type Notification

Table 5.6.2.10-1: Definition of type Notification

Attribute name

Data type

P

Cardinality

Description

Applicability

bdtRefId

BdtReferenceId

M

1

This IE indicates transfer policies of background data transfer which the notification corresponds to.

candPolicies

array(TransferPolicy)

O

1..N

This IE contains a list of the candidate transfer policies from which the AF may select a new transfer policy due to a network performance is below the criteria set by the operator.

nwAreaInfo

NetworkAreaInfo

O

0..1

This IE represents a network area where a network performance will go below the criteria set by the operator.

timeWindow

TimeWindow

O

0..1

This IE indicates a time window when a network performance will go below the criteria set by the operator.

5.6.2.11 Type PatchBdtPolicy

Table 5.6.2.11-1: Definition of type PatchBdtPolicy

Attribute name

Data type

P

Cardinality

Description

Applicability

bdtPolData

BdtPolicyDataPatch

O

0..1

Describes the updates in BDT policy data of an Individual BDT Policy resource, e.g., describes the selected BDT policy.

bdtReqData

BdtReqDataPatch

O

0..1

Describes the updates in BDT policy request data of an Individual BDT Policy resource, e.g., describes the updates in warning notification requirements.

5.6.2.12 Type BdtReqDataPatch

Table 5.6.2.12-1: Definition of type BdtReqDataPatch

Attribute name

Data type

P

Cardinality

Description

Applicability

warnNotifReq

boolean

O

0..1

This IE indicates whether the BDT warning notification is enabled or disabled.

BdtNotification_5G

5.6.3 Simple data types and enumerations

5.6.3.1 Introduction

This clause defines simple data types and enumerations that can be referenced from data structures defined in the previous clauses.

5.6.3.2 Simple data types

The simple data types defined in table 5.6.3.2-1 shall be supported.

Table 5.6.3.2-1: Simple data types

Type Name

Type Definition

Description

Applicability

AspId

string

This IE contains an identity of an application service provider.

5.7 Error handling

5.7.1 General

HTTP error handling shall be supported as specified in clause 5.2.4 of 3GPP TS 29.500 [6].

For the Npcf_BDTPolicyControl API, HTTP error responses shall be supported as specified in clause 4.8 of 3GPP TS 29.501 [7].

Protocol errors and application errors specified in table 5.2.7.2-1 of 3GPP TS 29.500 [6] 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 [6].

In addition, the requirements in the following clauses shall apply.

5.7.2 Protocol Errors

In this Release of the specification, there are no additional protocol errors applicable for the Npcf_BDTPolicyControl API.

5.7.3 Application Errors

The application errors defined for the Npcf_BDTPolicyControl API are listed in table 5.7.3-1.

Table 5.7.3-1: Application errors

Application Error

HTTP status code

Description

BDT_POLICY_NOT_FOUND

404 Not Found

The HTTP request is rejected because the specified Individual BDT policy resource does not exist. (NOTE 1)

NOTE 1: This application error is included in the responses to the GET and PATCH requests.

NOTE 2: Including a "ProblemDetails" data structure with the "cause" attribute in the HTTP response is optional unless explicitly mandated in the service operation clauses.

5.8 Feature negotiation

The optional features in table 5.8-1 are defined for the Npcf_BDTPolicyControl API. They shall be negotiated using the extensibility mechanism defined in clause 6.6.2 of 3GPP TS 29.500 [6].

When requesting the PCF to create an Individual BDT policy resource the NF service consumer shall indicate the optional features the NF service consumer supports for the Npcf_BDTPolicyControl service by including the "suppFeat" attribute in the "BdtReqData" data type of the HTTP POST request.

The PCF shall determine the supported features for the created Individual BDT policy resource as specified in clause 6.6.2 of 3GPP TS 29.500 [6]. The PCF shall indicate the supported features in the HTTP response confirming the creation of the Individual BDT policy resource by including the "suppFeat" attribute in the "BdtPolicyData" data type.

Table 5.8-1: Supported Features

Feature number

Feature Name

Description

1

BdtNotification_5G

This feature indicates the support of sending the BDT notification to the NF service consumer.

This feature includes sending of the BDT warning notification to the NF service consumer.

2

ES3XX

Extended Support for 3xx redirections.

This feature indicates the support of redirection for any service operation, according to Stateless NF procedures as specified in clauses 6.5.3.2 and 6.5.3.3 of 3GPP TS 29.500 [6] and according to HTTP redirection principles for indirect communication, as specified in clause 6.10.9 of 3GPP TS 29.500 [6].

3

PatchCorrection

Indicates support of the correction to the PATCH method.

When this feature is not supported, the interoperability between a NF service consumer and the PCF can only be ensured when it is not required the update of the Individual BDT policy resource.

5.9 Security

As indicated in 3GPP TS 33.501 [18] and 3GPP TS 29.500 [6], the access to the Npcf_BDTPolicyControl API, based on local configuration, may be authorized by means of the OAuth2 protocol (see IETF RFC 6749 [19]), using the "Client Credentials" authorization grant, where the NRF (see 3GPP TS 29.510 [20]) plays the role of the authorization server.

If OAuth2 authorization is used, an NF service consumer, prior to consuming services offered by the Npcf_BDTPolicyControl API, shall obtain a "token" from the authorization server, by invoking the Access Token Request service, as described in 3GPP TS 29.510 [20], 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 Npcf_BDTPolicyControl service.

The Npcf_BDTPolicyControl API defines a single scope "npcf-bdtpolicycontrol" for OAuth2 authorization (as specified in 3GPP TS 33.501 [18]) for the entire API, and it does not define any additional scopes at resource or operation level.

Annex A (normative):
OpenAPI specification