5 Npcf_AMPolicyAuthorization Service API
29.5343GPP5G SystemAccess and Mobility Policy Authorization ServiceRelease 18Stage 3TS
5.1 Introduction
The Npcf_AMPolicyAuthorization shall use the Npcf_AMPolicyAuthorization API.
The API URI of the Npcf_AMPolicyAuthorization 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 "npcf-am-policyauthorization".
– 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 [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 Npcf_AMPolicyAuthorization API 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 [4] for the usage of HTTP standard headers.
5.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].
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 [18].
5.2.3 HTTP custom headers
5.2.3.1 General
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.
In this Release of the specification, no specific custom headers are defined for the Npcf_AMPolicyAuthorization API.
5.3 Resources
5.3.1 Overview
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_AMPolicyAuthorization API.
Figure 5.3.1-1: Resource URI structure of the Npcf_AMPolicyAuthorization 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 |
Application AM contexts |
/app-am-contexts |
POST |
Npcf_AMPolicyAuthorization_Create. Creates a new Individual application AM context resource and may create the child AM Policy Events Subscription sub-resource. |
Individual application AM context |
/app-am-contexts/ |
PATCH |
Npcf_AMPolicyAuthorization_Update. Updates an existing Individual application AM context resource. It can also create or update an AM Policy Events Subscription sub-resource. |
GET |
Reads an existing Individual application AM context resource. |
||
DELETE |
Npcf_AMPolicyAuthorization_Delete. Deletes an existing Individual application AM context resource and the child AM Policy Events Subscription sub-resource. |
||
AM Policy Events Subscription |
/app-am-contexts/ |
PUT |
Npcf_AMPolicyAuthorization_Subscribe. Creates a new AM Policy Events Subscription sub-resource or modifies an existing AM Policy Events Subscription sub-resource. |
DELETE |
Npcf_AMPolicyAuthorization_Unsubscribe. Deletes an AM Policy Events Subscription sub-resource. |
5.3.2 Resource: Application AM contexts (Collection)
5.3.2.1 Description
The Application AM contexts resource represents all application AM contexts that exist in the Npcf_AMPolicyAuthorization service at a given PCF instance.
5.3.2.2 Resource Definition
Resource URI: {apiRoot}/npcf-am-policyauthorization/<apiVersion>/app-am-contexts
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 |
Applicability |
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 |
AppAmContextData |
M |
1 |
Contains the information for the creation of a new Individual application AM context 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 |
AppAmContextRespData |
M |
1 |
201 Created |
Successful case. The creation of an Individual application AM context resource is confirmed and a representation of that resource is returned, together with event subscription and event notification information, if available, as specified in clause 4.2.2.2. |
ProblemDetails |
O |
0..1 |
500 Internal Server Error |
(NOTE 2) |
NOTE 1: The mandatory 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: Failure cases are described in clause 5.7. |
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: |
5.3.2.4 Resource Custom Operations
None.
5.3.3 Resource: Individual application AM context (Document)
5.3.3.1 Description
The Individual application AM context resource represents a single application AM context that exists in the Npcf_AMPolicyAuthorization.
5.3.3.2 Resource Definition
Resource URI: {apiRoot}/npcf-am-policyauthorization/<apiVersion>/app-am-contexts/{appAmContextId}
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 |
appAmContextId |
string |
Identifies an application AM context formatted according to IETF RFC 3986 [19]. |
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 |
Applicability |
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 |
AppAmContextData |
M |
1 |
200 OK |
Successful case. A representation of an Individual application AM context resource is returned. |
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during an Individual application AM context retrieval. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during an Individual application AM context resource retrieval. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
ProblemDetails |
O |
0..1 |
404 Not Found |
(NOTE 2) |
NOTE 1: The mandatory HTTP error status code for the GET method listed in table 5.2.7.1-1 of 3GPP TS 29.500 [4] 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 |
Applicability |
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 |
AppAmContextUpdateData |
M |
1 |
Contains the modification(s) to apply to the Individual application AM context resource. |
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 |
AppAmContextRespData |
M |
1 |
200 OK |
Successful case. A representation of an Individual application AM context resource, together with event subscription and event notification information, if available, as specified in clause 4.2.3.2. |
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during an Individual application AM context modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during an Individual application AM context modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
ProblemDetails |
O |
0..1 |
400 Bad Request |
(NOTE 2) |
ProblemDetails |
O |
0..1 |
404 Not Found |
(NOTE 2) |
NOTE 1: The mandatory HTTP error status code for the PATCH method listed in table 5.2.7.1-1 of 3GPP TS 29.500 [4] 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.3.3.3.3 DELETE
This method shall support the URI query parameters specified in table 5.3.3.3.3-1.
Table 5.3.3.3.3-1: URI query parameters supported by the DELETE method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Applicability |
n/a |
This method shall support the request data structures specified in table 5.3.3.3.3-2 and the response data structures and response codes specified in table 5.3.3.3.3-3.
Table 5.3.3.3.3-2: Data structures supported by the DELETE Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 5.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 |
Successful case. The Individual application AM context resource is deleted. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during Individual application AM context termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during Individual application AM context termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
ProblemDetails |
O |
0..1 |
404 Not Found |
(NOTE 2) |
NOTE 1: The mandatory HTTP error status code for the DELETE method listed in table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. NOTE 2: Failure cases are described in clause 5.7. |
Table 5.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 |
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.3-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.4 Resource Custom Operations
None.
5.3.4 Resource: AM Policy Events Subscription (Document)
5.3.4.1 Description
The AM Policy Events Subscription resource represents a subscription to access and mobility policy events for an application AM context that exists in the Npcf_AMPolicyAuthorization service.
5.3.4.2 Resource definition
Resource URI: {apiRoot}/npcf-am-policyauthorization/<apiVersion>/app-am-contexts/{appAmContextId}/events-subscription
This resource shall support the resource URI variables defined in table 5.3.4.2-1.
Table 5.3.4.2-1: Resource URI variables for this resource
Name |
Data type |
Definition |
apiRoot |
string |
See clause 5.1 |
appAmContextId |
string |
Identifies an application AM context formatted according to IETF RFC 3986 [19]. |
5.3.4.3 Resource Standard Methods
5.3.4.3.1 PUT
This method shall support the URI query parameters specified in table 5.3.4.3.1-1.
Table 5.3.4.3.1-1: URI query parameters supported by the PUT method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Applicability |
n/a |
This method shall support the request data structures specified in table 5.3.4.3.1-2 and the response data structures and response codes specified in table 5.3.4.3.1-3.
Table 5.3.4.3.1-2: Data structures supported by the PUT Request Body on this resource
Data type |
P |
Cardinality |
Description |
AmEventsSubscData |
M |
1 |
Contains the information for the creation and/or modification of the AM Policy Events Subscription sub-resource. |
Table 5.3.4.3.1-3: Data structures supported by the PUT Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
AmEventsSubscRespData |
M |
1 |
201 Created |
Successful case. The AM Policy Events Subscription sub-resource was created. The representation of the AM Policy Events Subscription sub-resource is included within the properties of the AmEventsSubscData data type. The one or more matched events, if available, are included within the properties of the AmEventsNotification data type. |
AmEventsSubscRespData |
M |
1 |
200 OK |
Successful case. The AM Policy Events Subscription sub-resource was modified and a representation of the sub-resource is returned. The representation of the AM Policy Events Subscription sub-resource is included within the properties of the AmEventsSubscData data type. The one or more matched events, if available, are included within the properties of the AmEventsNotification data type. |
n/a |
204 No Content |
Successful case. The AM Policy Events Subscription sub-resource was modified. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during AM Policy Events Subscription modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during AM Policy Events Subscription modification. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
ProblemDetails |
O |
0..1 |
404 Not Found |
(NOTE 2) |
NOTE 1: The mandatory HTTP error status code for the PUT method listed in table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. NOTE 2: Failure cases are described in clause 5.7. |
Table 5.3.4.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: |
Table 5.3.4.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 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.4.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 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.4.3.2 DELETE
This method shall support the URI query parameters specified in table 5.3.4.3.2-1.
Table 5.3.4.3.2-1: URI query parameters supported by the DELETE method on this resource
Name |
Data type |
P |
Cardinality |
Description |
Applicability |
n/a |
This method shall support the request data structures specified in table 5.3.4.3.2-2 and the response data structures and response codes specified in table 5.3.4.3.2-3.
Table 5.3.4.3.2-2: Data structures supported by the DELETE Request Body on this resource
Data type |
P |
Cardinality |
Description |
n/a |
Table 5.3.4.3.2-3: Data structures supported by the DELETE Response Body on this resource
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No Content |
Successful case. The AM Policy Events Subscription resource is deleted. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during AM Policy Events Subscription termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during AM Policy Events Subscription termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative PCF (service) instance. |
ProblemDetails |
O |
0..1 |
404 Not Found |
(NOTE 2) |
NOTE 1: The mandatory HTTP error status code for the DELETE method listed in table 5.2.7.1-1 of 3GPP TS 29.500 [4] also apply. NOTE 2: Failure cases are described in clause 5.7. |
Table 5.3.4.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.4.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.3.4.4 Resource Custom Operations
None.
5.4 Custom Operations without associated resources
None.
5.5 Notifications
5.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 5.5.1-1: Notifications overview
Notification |
Callback URI |
HTTP method or custom operation |
Description (service operation) |
AM Event Notification |
{eventNotifUri} |
POST |
Notification of access and mobility policy changes event(s). |
Termination Request |
{termNotifUri} |
POST |
Request for termination of an Individual application AM context. |
5.5.2 AM Event Notification
5.5.2.1 Description
The AM Event Notification is used by the NF service producer to report one or several observed Access and Mobility policy change Events to a NF service consumer that has subscribed to such Notifications via the AM Policy Events Subscription Resource.
5.5.2.2 Target URI
The Callback URI "{eventNotifUri}" 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 |
Definition |
eventNotifUri |
String formatted as URI with the Callback Uri. The Callback Uri is assigned within the AM Policy Events Subscription sub-resource and described within the AmEventsSubscData data type (see table 5.6.2.4-1) or AmEventsSubscDataRm data type (see table 5.6.2.7-1). |
5.5.2.3 Standard Methods
5.5.2.3.1 POST
This method shall support the request data structures specified in table 5.5.2.3.1-1 and the response data structures and response codes specified in table 5.5.2.3.1-2.
Table 5.5.2.3.1-1: Data structures supported by the POST Request Body
Data type |
P |
Cardinality |
Description |
AmEventsNotification |
M |
1 |
Provides information about the observed access and mobility policy change events. |
Table 5.5.2.3.1-2: Data structures supported by the POST Response Body
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No content |
The receipt of the Notification is acknowledged. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during AM event 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. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during AM event 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. |
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. |
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.5.3 Termination Request
5.5.3.1 Description
The Termination request is used by the NF service producer to request the NF service consumer the deletion of the Individual Application AM context Resource.
5.5.3.2 Target URI
The Callback URI "{termNotifUri}" shall be used with the callback URI variables defined in table 5.5.3.2-1.
Table 5.5.3.2-1: Callback URI variables
Name |
Definition |
termNotifUri |
String formatted as URI with the Callback Uri. The Callback Uri is assigned within the Individual application AM Context resource and described within the AppAmContextData data type (see table 5.6.2.2-1) or AppAmContextUpdateData data type (see table 5.6.2.3-1). |
5.5.3.3 Standard Methods
5.5.3.3.1 POST
This method shall support the request data structures specified in table 5.5.3.3.1-1 and the response data structures and response codes specified in table 5.5.3.3.1-1.
Table 5.5.3.3.1-2: Data structures supported by the POST Request Body
Data type |
P |
Cardinality |
Description |
AmTerminationInfo |
M |
1 |
Provides information about the cause of the termination request. |
Table 5.5.3.3.1-3: Data structures supported by the POST Response Body
Data type |
P |
Cardinality |
Response codes |
Description |
n/a |
204 No content |
The receipt of the Notification is acknowledged. |
||
RedirectResponse |
O |
0..1 |
307 Temporary Redirect |
Temporary redirection, during AM event 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. |
RedirectResponse |
O |
0..1 |
308 Permanent Redirect |
Permanent redirection, during AM event 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. |
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. |
Table 5.5.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 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.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 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_AMPolicyAuthorization service based interface protocol.
Table 5.6.1-1: Npcf_AMPolicyAuthorization specific Data Types
Data type |
Clause defined |
Description |
Applicability |
AmEvent |
5.6.3.3 |
It represents the event the PCF can notify to the NF service consumer. |
|
AmEventNotification |
5.6.2.9 |
Represents the notification of an event. |
|
AmEventData |
5.6.2.8 |
It contains the event identifier and the related event reporting information. |
|
AmEventsNotification |
5.6.2.5 |
It describes the notification about the events occurred within an Individual application AM context resource. |
|
AmEventsSubscData |
5.6.2.4 |
It represents the AM Policy Events Subscription resource and identifies the events the application subscribes to. |
|
AmEventsSubscDataRm |
5.6.2.7 |
This data type is defined in the same way as the "AmEventsSubscData" data type, but with the OpenAPI "nullable: true" property. |
|
AmEventsSubscRespData |
5.6.4.2 |
It represents a response to an AM Policy Events Subscription request and contains the created/updated AM Policy Events Subscription resource. It may also include the Notification of the events met at the time of subscription. It is represented as a non-exclusive list of two data types: AmEventsSubscData and AmEventsNotification. |
|
AmTerminationCause |
5.6.3.5 |
It represents the cause values that the PCF should report when requesting to an NF service consumer the deletion of an "AF application AM context" resource. |
|
AmTerminationInfo |
5.6.2.6 |
It includes information related to the termination of the Individual Application AM Context resource. |
|
AppAmContextData |
5.6.2.2 |
It represents an Individual application AM context resource. |
|
AppAmContextRespData |
5.6.4.1 |
It represents a response to a modification or creation request of an Individual application AM context resource. It is represented as a non-exclusive list of two data types AppAmContextData and AmEventsNotification. |
|
AppAmContextUpdateData |
5.6.2.3 |
It describes the modifications to an Individual application AM context resource. |
|
PduidInformation |
5.6.2.10 |
It contains the PDUID and its validity timer. |
|
ServiceAreaCoverageInfo |
5.6.2.11 |
It represents a list of Tracking Areas within a serving network. |
Table 5.6.1-2 specifies data types re-used by the Npcf_AMPolicyAuthorization 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_AMPolicyAuthorization service based interface.
Table 5.6.1-2: Npcf_AMPolicyAuthorization re-used Data Types
Data type |
Reference |
Comments |
Applicability |
AsTimeDistributionParam |
3GPP TS 29.507 [16] |
Contains the 5G access stratum time distribution parameters. |
|
DurationSec |
3GPP TS 29.571 [20] |
Indicates a period of time in units of seconds. |
|
DurationSecRm |
3GPP TS 29.571 [20] |
It is defined as DurationSec but with the nullable property set to "true". |
|
Gpsi |
3GPP TS 29.571 [20] |
Identifies a GPSI. |
|
NotificationMethod |
3GPP TS 29.508 [21] |
It includes information about the notification methods that can be subscribed by the NF service consumer. |
|
Pduid |
3GPP TS 29.555 [24] |
String containing a PDUID |
|
RedirectResponse |
3GPP TS 29.571 [20] |
It contains redirection related information. |
|
Supi |
3GPP TS 29.571 [20] |
Identifies the SUPI. |
|
SupportedFeatures |
3GPP TS 29.571 [20] |
Used to negotiate the applicability of the optional features defined in table 5.8-1. |
|
Tac |
3GPP TS 29.571 [20] |
It contains a Tracking Area Code |
|
PlmnIdNid |
3GPP TS 29.571 [20] |
It contains the serving PLMN ID and, for a SNPN, the NID that together with the PLMN ID identifies the SNPN. |
|
Uinteger |
3GPP TS 29.571 [20] |
Unsigned integer. |
|
Uri |
3GPP TS 29.571 [20] |
String providing a URI. |
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: AppAmContextData
Table 5.6.2.2-1: Definition of type AppAmContextData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
evSubsc |
AmEventsSubscData |
O |
0..1 |
Represents the subscription to one or more AM policy events. (NOTE) |
|
supi |
Supi |
M |
1 |
Identifies the SUPI. |
|
gpsi |
Gpsi |
O |
0..1 |
Identifies the GPSI. |
|
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 requests a creation of an Individual application AM context resource. It shall be supplied by the PCF in the response to the POST request that requests a creation of an Individual application AM context resource. |
|
termNotifUri |
Uri |
M |
1 |
Identifies the callback URI where the PCF notifies termination requests. |
|
expiry |
DurationSec |
O |
0..1 |
Indicates the time duration that the requested policy shall last. If omitted, it indicates that the requested policy lasts till the Individual Application AM context resource is deleted. |
|
highThruInd |
boolean |
C |
0..1 |
Indicates whether high throughput is desired for the indicated UE traffic. Set to "true" if high throughput is desired; otherwise set to "false". Default value is "false" if omitted. (NOTE) |
|
covReq |
array(ServiceAreaCoverageInfo) |
C |
1..N |
Identifies a list of Tracking Areas per serving network where the service is allowed. (NOTE) |
|
asTimeDisParam |
AsTimeDistributionParam |
C |
0..1 |
Contains the 5G access stratum time distribution parameters. (NOTE) |
|
NOTE: When neither the "asTimeDisParam" attribute is included nor the "evSubsc" is provided to subscribe to events without an existing AF application AM context, the "highThruInd" attribute, the "covReq" attribute or both of them shall be included. When neither the "highThruInd" attribute nor the "covReq" attribute is included, then the "asTimeDisParam" attribute shall be included, unless the data type is used for subscribing to events without an existing AF application AM context as described in clause 4.2.5.3, in which case it is sufficient to provide the "evSubsc" attribute. |
5.6.2.3 Type: AppAmContextUpdateData
Table 5.6.2.3-1: Definition of type AppAmContextUpdateData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
evSubsc |
AmEventsSubscDataRm |
O |
0..1 |
Represents the subscription to one or more AM policy events. |
|
termNotifUri |
Uri |
O |
0..1 |
Identifies the callback URI where the PCF notifies termination requests. |
|
expiry |
DurationSecRm |
O |
0..1 |
The expiration time of the AM related policy. If removed (i.e. set to "NULL"), it indicates that the requested policy lasts till the Individual Application AM context resource is deleted. |
|
highThruInd |
boolean |
O |
0..1 |
Indicates whether high throughput is desired for the indicated UE traffic. Set to "true" if high throughput is desired; otherwise set to "false". |
|
covReq |
array(ServiceAreaCoverageInfo) |
O |
1..N |
Identifies a list of Tracking Areas per serving network where the service is allowed. |
|
asTimeDisParam |
AsTimeDistributionParam |
O |
0..1 |
Contains the 5G access stratum time distribution parameters. |
5.6.2.4 Type: AmEventsSubscData
Table 5.6.2.4-1: Definition of type AmEventsSubscData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
eventNotifUri |
Uri |
M |
1 |
Indicates the callback URI where the PCF sends the access and mobility changes events met. |
|
events |
array(AmEventData) |
O |
1..N |
Indicates the one or more access and mobility related events. |
5.6.2.5 Type: AmEventsNotification
Table 5.6.2.5-1: Definition of type AmEventsNotification
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
repEvents |
array(AmEventNotification) |
M |
1..N |
The list of the reported events. |
|
appAmContextId |
string |
C |
0..1 |
Contains the AM Policy Events Subscription resource identifier related to the event notification. It shall be included in the notification requests. It may be omitted in the resource creation/update replies. (NOTE) |
|
NOTE: The complete resource URI defined in clause 5.3.4.2 is included. |
5.6.2.6 Type: AmTerminationInfo
Table 5.6.2.6-1: Definition of type AmTerminationInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
appAmContextId |
string |
M |
1 |
Contains the Individual application AM context resource identifier related to the termination notification. (NOTE) |
|
termCause |
AmTerminationCause |
M |
1 |
Indicates the cause for requesting the termination of the Individual application AM context resource. |
|
NOTE: The complete resource URI defined in clause 5.3.3.2 is included. |
5.6.2.7 Type AmEventsSubscDataRm
This data type is defined as the AmEventsSubscData type, but:
– with the OpenAPI "nullable: true" property; and
– the attributes are defined as optional.
Table 5.6.2.7-1: Definition of type AmEventsSubscDataRm
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
eventNotifUri |
Uri |
O |
0..1 |
Indicates the callback URI where the PCF sends the access and mobility changes events met. |
|
events |
array(AmEventData) |
O |
1..N |
Indicates the one or more access and mobility related events. |
5.6.2.8 Type AmEventData
Table 5.6.2.8-1: Definition of type AmEventData
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
event |
AmEvent |
M |
1 |
Subscribed Event. |
|
immRep |
boolean |
O |
0..1 |
Indication of immediate reporting: – true: requires the immediate reporting of the current value of the subscribed event, if available. – false (default): event report occurs when the event is met. |
|
notifMethod |
NotificationMethod |
O |
0..1 |
Represents the notification method (periodic, one time, on event detection). If "notifMethod" attribute is not supplied, the default value "ON_EVENT_DETECTION" applies. |
|
maxReportNbr |
Uinteger |
O |
0..1 |
Represents the maximum number of reports, after which the subscription ceases to exist (i.e., the reporting ends). It may be present for the "PERIODIC" and on "ON_EVENT_DETECTION" notification methods. If omitted, there is no limit. |
|
monDur |
DateTime |
C |
0..1 |
Represents the time at which the subscription ceases to exist (i.e the subscription becomes invalid and the reporting ends). If omitted, there is no time limit. If present in the subscription request, it shall be present in the subscription response. |
|
repPeriod |
DurationSec |
O |
0..1 |
Indicates the time interval between successive event notifications.It is supplied for notification method "PERIODIC". |
5.6.2.9 Type: AmEventNotification
Table 5.6.2.9-1: Definition of type AmEventNotification
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
event |
AmEvent |
M |
1 |
Notified event. |
|
appliedCov |
ServiceAreaCoverageInfo |
C |
0..1 |
The list of applied Tracking Areas for the serving network where the UE is camping. It shall be present when the notified event is "SAC_CH". |
|
pduidInfo |
PduidInformation |
C |
0..1 |
Contains the PDUID and its validity timer. It shall be included when the "PDUID_CH" event is reported. |
5.6.2.10 Type: PduidInformation
Table 5.6.2.10-1: Definition of type PduidInformation
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
expiry |
DateTime |
M |
1 |
Contains the expiration time of validity of UE policies for 5G Prose direct discovery. |
|
pduid |
Pduid |
M |
1 |
Contains the PDUID as defined in Table 5.3.1.1 of 3GPP TS 24.555 [23]. |
5.6.2.11 Type: ServiceAreaCoverageInfo
Table 5.6.2.11-1: Definition of type ServiceAreaCoverageInfo
Attribute name |
Data type |
P |
Cardinality |
Description |
Applicability |
tacList |
array(Tac) |
M |
0..N |
It contains a list of the Tracking Area codes where the requested service shall be allowed. An empty array may be included within the AmEventNotification data type and indicates the service is restricted in the serving network. |
|
servingNetwork |
PlmnIdNid |
O |
0..1 |
It contains the serving PLMN ID and, for a SNPN, the NID that together with the PLMN ID identifies the SNPN. It may be omitted when serving network is the UE H-PLMN. |
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 |
5.6.3.3 Enumeration: AmEvent
The enumeration "AmEvent" represents the events the PCF can notify to the NF service consumer.
Table 5.6.3.3-1: Enumeration AmEvent
Enumeration value |
Description |
Applicability |
SAC_CH |
This trigger indicates a service area coverage change for a UE. |
|
PDUID_CH |
The PDUID assigned to a UE for the UE ProSe Policies has changed. (NOTE) |
|
NOTE: This event can only be subscribed using the Npcf_AMPolicyAuthorization_Subscribe service operation. |
5.6.3.4 Enumeration: AmTerminationCause
The enumeration "AmTerminationCause" represents the cause values that the PCF should report when requesting to the NF service consumer the deletion of the "AF application AM context" resource. It shall comply with the provisions of table 5.6.3.4-1.
Table 5.6.3.4-1: Enumeration AmTerminationCause
Enumeration value |
Description |
Applicability |
UE_DEREGISTERED |
UE initiates the deregistration procedure. |
|
UNSPECIFIED |
This value is used for unspecified reasons. |
|
INSUFFICIENT_RESOURCES |
Indicates that the server is overloaded and needs to release the AF application AM context resource. |
5.6.4 Data types describing alternative data types or combinations of data types
5.6.4.1 Type: AppAmContextRespData
Table 5.6.4.1-1: Definition of type AppAmContextRespData as a list of non-exclusive alternatives
Data type |
Cardinality |
Description |
Applicability |
AmEventsNotification |
0..1 |
It represents the notification of a match event during the creation or modification of the Individual application AM context data. |
|
AppAmContextData |
1 |
It represents the Individual application AM context resource. |
5.6.4.2 Type: AmEventsSubscRespData
Table 5.6.4.2-1: Definition of type AmEventsSubscRespData as a list of non-exclusive alternatives
Data type |
Cardinality |
Description |
Applicability |
AmEventsSubscData |
1 |
It represents the AM Policy Events subscription resource. |
|
AmEventsNotification |
0..1 |
It represents the notification of a match event during the creation or modification of the AM Policy Events Subscription resource. |
5.6.5 Binary data
5.6.5.1 Binary Data Types
None.
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 [5].
For the Npcf_AMPolicyAuthorization 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 Npcf_AMPolicyAuthorization API.
5.7.2 Protocol Errors
No specific procedures for the Npcf_AMPolicyAuthorization service are specified.
5.7.3 Application Errors
The application errors defined for the Npcf_AMPolicyAuthorization service are listed in Table 5.7.3-1.
Table 5.7.3-1: Application errors
Application Error |
HTTP status code |
Description |
INVALID_POLICY_REQUEST |
400 Bad Request |
The HTTP request is rejected because the service information for the AM context is invalid or insufficient for the PCF to perform the requested action. (NOTE 1) |
APPLICATION_AM_CONTEXT_NOT_FOUND |
404 Not Found |
The HTTP request is rejected because the specified Individual Application AM Context does not exist. (NOTE 3) |
POLICY_ASSOCIATION_NOT_AVAILABLE |
500 Internal Server Error |
The PCF failed in executing binding with the UE/AM Policy Context. (NOTE 2) |
NOTE 1: This application error is included in the response to the PATCH request (see clauses 4.2.3.2). NOTE 2: This application error is included in the response to the POST request (see clauses 4.2.2.2 and 4.2.5.3). NOTE 3: This application error is included in the responses to the GET, PATCH and DELETE requests to the Individual Application AM Context resource, and to the PUT and DELETE requests to the AM Policy Events Subscription resource. |
5.8 Feature negotiation
The optional features in table 5.8-1 are defined for the Npcf_AMPolicyAuthorization API. They shall be negotiated using the extensibility mechanism defined in clause 6.6 of 3GPP TS 29.500 [4].
Table 5.8-1: Supported Features
Feature number |
Feature Name |
Description |
5.9 Security
As indicated in 3GPP TS 33.501 [8] and 3GPP TS 29.500 [4], the access to the Npcf_AMPolicyAuthorization 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 Npcf_AMPolicyAuthorization 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 Npcf_AMPolicyAuthorization service.
The Npcf_AMPolicyAuthorization API defines a single scope " npcf-am-policyauthorization " for the entire service, and it does not define any additional scopes at resource or operation level.
Annex A (normative):
OpenAPI specification