8.3 CAPIF_Events_API

29.2223GPPCommon API Framework for 3GPP Northbound APIsRelease 18TS

8.3.1 API URI

The CAPIF_Events_API service shall use the CAPIF_Events_API.

The request URIs used in HTTP requests from the Subscriber towards the CAPIF core function shall have the Resource URI structure as defined in clause 7.5 with the following clarifications:

– The <apiName> shall be "capif-events".

– The <apiVersion> shall be "v1".

– The <apiSpecificSuffixes> shall be set as described in clause 8.3.2.

8.3.2 Resources

8.3.2.1 Overview

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

Figure 8.3.2.1-1 depicts the resource URIs structure for the CAPIF_Events_API.

Figure 8.3.2.1-1: Resource URI structure of the CAPIF_Events_API

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

Table 8.3.2.1-1: Resources and methods overview

Resource name

Resource URI

HTTP method or custom operation

Description

CAPIF Events Subscriptions

/{subscriberId}/subscriptions

POST

Creates a new individual CAPIF Event Subscription

Individual CAPIF Events Subscription

/{subscriberId}/subscriptions/
{subscriptionId}

DELETE

Deletes an individual CAPIF Event Subscription identified by the subscriptionId

8.3.2.2 Resource: CAPIF Events Subscriptions

8.3.2.2.1 Description

The CAPIF Events Subscriptions resource represents all subscriptions of aSubscriber.

8.3.2.2.2 Resource Definition

Resource URI: {apiRoot}/capif-events/<apiVersion>/{subscriberId}/subscriptions

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

Table 8.3.2.2.2-1: Resource URI variables for this resource

Name

Data Type

Definition

apiRoot

string

See clause 7.5

subscriberId

string

ID of the Subscriber

8.3.2.2.3 Resource Standard Methods
8.3.2.2.3.1 POST

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

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

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

Data type

P

Cardinality

Description

EventSubscription

M

1

Create a new individual CAPIF Events Subscription resource.

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

Data type

P

Cardinality

Response

codes

Description

EventSubscription

M

1

201 Created

CAPIF Events Subscription resource created successfully.

The URI of the created resource shall be returned in the "Location" HTTP header

NOTE: The mandatory HTTP error status codes for the POST method listed in table 5.2.6-1 of 3GPP TS 29.122 [14] also apply.

Table 8.3.2.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}/capif-events/<apiVersion>/{subscriberId}/subscriptions/{subscriptionId}

8.3.2.2.4 Resource Custom Operations

None.

8.3.2.3 Resource: Individual CAPIF Events Subscription

8.3.2.3.1 Description

The Individual CAPIF Events Subscription resource represents an individual event subscription of aSubscriber.

8.3.2.3.2 Resource Definition

Resource URI: {apiRoot}/capif-events/<apiVersion>/{subscriberId}/subscriptions/{subscriptionId}

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

Table 8.3.2.3.2-1: Resource URI variables for this resource

Name

Data Type

Definition

apiRoot

string

See clause 7.5

subscriberId

string

ID of the Subscriber

subscriptionId

string

Identifies an individual Events Subscription

8.3.2.3.3 Resource Standard Methods
8.3.2.3.3.1 DELETE

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

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

Table 8.3.2.3.3.1-2: Data structures supported by the DELETE Request Body on this resource

Data type

P

Cardinality

Description

n/a

Table 8.3.2.3.3.1-3: Data structures supported by the DELETE Response Body on this resource

Data type

P

Cardinality

Response

codes

Description

n/a

204 No Content

The individual CAPIF Events Subscription matching the subscriptionId is deleted.

n/a

307 Temporary Redirect

Temporary redirection, during resource termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative CAPIF core function.

Redirection handling is described in clause 5.2.10 of 3GPP TS 29.122 [14].

n/a

308 Permanent Redirect

Permanent redirection, during resource termination. The response shall include a Location header field containing an alternative URI of the resource located in an alternative CAPIF core function.

Redirection handling is described in clause 5.2.10 of 3GPP TS 29.122 [14].

NOTE: The mandatory HTTP error status codes for the DELETE method listed in table 5.2.6-1 of 3GPP TS 29.122 [14] also apply.

Table 8.3.2.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 CAPIF core function.

Table 8.3.2.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 CAPIF core function.

8.3.2.3.4 Resource Custom Operations

None.

8.3.3 Notifications

8.3.3.1 General

The delivery of notifications shall conform to clause 7.6.

Table 8.3.3.1-1: Notifications overview

Notification

Callback URI

HTTP method or custom operation

Description

(service operation)

Event notification

{notificationDestination}

POST

Notifies Subscriber of a CAPIF Event

8.3.3.2 Event Notification

8.3.3.2.1 Description

Event Notification is used by the CAPIF core function to notify a Subscriber of an Event. The Subscriber shall be subscribed to such Event Notification via the Individual CAPIF Events Subscription Resource.

8.3.3.2.2 Notification definition

The POST method shall be used for Event notification and the URI shall be the one provided by the Subscriber during the subscription to the event.

Callback URI: {notificationDestination}

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

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

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

Data type

P

Cardinality

Description

EventNotification

M

1

Notification information of a CAPIF Event

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

Data type

P

Cardinality

Response codes

Description

n/a

204 No Content

The receipt of the Notification is acknowledged.

n/a

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 notification destination where the notification should be sent.

Redirection handling is described in clause 5.2.10 of 3GPP TS 29.122 [4].

n/a

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 notification destination where the notification should be sent.

Redirection handling is described in clause 5.2.10 of 3GPP TS 29.122 [4].

NOTE: The mandatory HTTP error status codes for the POST method listed in table 5.2.6-1 of 3GPP TS 29.122 [14] also apply.

Table 8.3.3.2.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 representing the end point of an alternative notification destination towards which the notification should be redirected.

Table 8.3.3.2.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 representing the end point of an alternative notification destination towards which the notification should be redirected.

8.3.4 Data Model

8.3.4.1 General

This clause specifies the application data model supported by the API. Data types listed in clause 7.2 also apply to this API.

Table 8.3.4.1-1 specifies the data types defined specifically for the CAPIF_Events_API service.

Table 8.3.4.1-1: CAPIF_Events_API specific Data Types

Data type

Section defined

Description

Applicability

AccessControlPolicyListExt

Clause 8.3.4.2.6

Represents the extension for access control policies.

CAPIFEvent

Clause 8.3.4.3.2

Describes the CAPIF event.

CAPIFEventDetail

Clause 8.3.4.2.5

Represents the CAPIF event detail.

Enhanced_event_report

CAPIFEventFilter

Clause 8.3.4.2.4

Represents the CAPIF event filter.

Enhanced_event_report

EventNotification

Clause 8.3.4.2.3

Represents an individual CAPIF Event Subscription Notification.

EventSubscription

Clause 8.3.4.2.2

Represents an individual CAPIF Event Subscription resource.

TopologyHiding

Clause 8.3.4.2.7

Represents the routing rules information of a service API.

Table 8.3.4.1-2 specifies data types re-used by the CAPIF_Events_API service:

Table 8.3.4.1-2: Re-used Data Types

Data type

Reference

Comments

Applicability

ReportingInformation

3GPP TS 29.523 [26]

Used to indicate the reporting requirement, only the following information are applicable for CAPIF:

– immRep

– notifMethod

– maxReportNbr

– monDur

– repPeriod

Enhanced_event_report

SupportedFeatures

3GPP TS 29.571 [19]

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

8.3.4.2 Structured data types

8.3.4.2.1 Introduction

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

8.3.4.2.2 Type: EventSubscription

Table 8.3.4.2.2-1: Definition of type EventSubscription

Attribute name

Data type

P

Cardinality

Description

Applicability

events

array(CAPIFEvent)

M

1..N

Subscribed events

eventFilters

array(CAPIFEventFilter)

O

1..N

Subscribed event filters.

The nth entry in the "eventFilters" attribute shall correspond to the nth entry in the "events" attribute. For event not having event filter, an empty event filter entry without any sub-attribute shall be provided.

Enhanced_event_report

eventReq

ReportingInformation

O

0..1

Represents the reporting requirements of the event subscription.

Enhanced_event_report

notificationDestination

Uri

M

1

URI where the notification should be delivered to.

requestTestNotification

boolean

O

0..1

Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in clause 7.6. Set to false or omitted otherwise.

Notification_test_event

websockNotifConfig

WebsockNotifConfig

O

0..1

Configuration parameters to set up notification delivery over Websocket protocol as defined in clause 7.6.

Notification_websocket

supportedFeatures

SupportedFeatures

O

0..1

Used to negotiate the supported optional features of the API as described in clause 7.8.

This attribute shall be provided in the HTTP POST request and in the response of successful resource creation.

8.3.4.2.3 Type: EventNotification

Table 8.3.4.2.3-1: Definition of type EventNotification

Attribute name

Data type

P

Cardinality

Description

Applicability

subscriptionId

string

M

1

Identifier of the subscription resource to which the notification is related – CAPIF resource identifier

events

CAPIFEvent

M

1

Notifications of individual events

eventDetail

CAPIFEventDetail

O

0..1

Detailed information for the event.

Enhanced_event_report

8.3.4.2.4 Type: CAPIFEventFilter

Table 8.3.4.2.4-1: Definition of type CAPIFEventFilter

Attribute name

Data type

P

Cardinality

Description

Applicability

apiIds

array(string)

O

1..N

API identifiers that the event subscriber wants to know in the interested event.

apiInvokerIds

array(string)

O

1..N

API invokers that the event subscriber wants to know in the interested event.

aefIds

array(string)

O

1..N

String identifying the AEF.

8.3.4.2.5 Type: CAPIFEventDetail

Table 8.3.4.2.5-1: Definition of type CAPIFEventDetail

Attribute name

Data type

P

Cardinality

Description

Applicability

serviceAPIDescriptions

array(ServiceAPIDescription)

O

1..N

Description of the service API as published by the APF.

apiIds

array(string)

O

1..N

API identifiers.

apiInvokerIds

array(string)

O

1..N

API invokers that are onboarded/offboarded.

accCtrlPolList

AccessControlPolicyListExt

O

0..1

Access control policy updated list.

invocationLogs

array(InvocationLog)

O

1..N

Invocation logs

apiTopoHide

TopologyHiding

O

0..1

Topology hiding information for a service API

8.3.4.2.6 Type: AccessControlPolicyListExt

Table 8.3.4.2.6-1: Definition of type AccessControlPolicyListExt

Attribute name

Data type

P

Cardinality

Description

Applicability

apiId

string

M

1

Identifier of the service API

NOTE: This data type also contains all the properties defined for AccessControlPolicyList data type.

8.3.4.2.7 Type: TopologyHiding

Table 8.3.4.2.7-1: Definition of type TopologyHiding

Attribute name

Data type

P

Cardinality

Description

Applicability

apiId

string

M

1

Identifier of the service API

routingRules

array(RoutingRule)

M

1..N

Routing rules

8.3.4.3 Simple data types and enumerations

8.3.4.3.1 Introduction

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

8.3.4.3.2 Simple data types

None.

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

Table 8.3.4.3.2-1: Simple data types

Type Name

Type Definition

Description

Applicability

n/a

8.3.4.3.3 Enumeration: CAPIFEvent

Table 8.3.4.3.3-1: Enumeration CAPIFEvent

Enumeration value

Description

Applicability

SERVICE_API_AVAILABLE

Events related to the availability of service APIs after the service APIs are published.

SERVICE_API_UNAVAILABLE

Events related to the unavailability of service APIs after the service APIs are unpublished.

SERVICE_API_UPDATE

Events related to change in service API information

API_INVOKER_ONBOARDED

Events related to API invoker onboarded to CAPIF

API_INVOKER_OFFBOARDED

Events related to API invoker offboarded from CAPIF

SERVICE_API_INVOCATION_SUCCESS

Events related to the successful invocation of service APIs

SERVICE_API_INVOCATION_FAILURE

Events related to the failed invocation of service APIs

ACCESS_CONTROL_POLICY_UPDATE

Events related to the update for the access control policy related to the service APIs

ACCESS_CONTROL_POLICY_UNAVAILABLE

Events related to the unavailability of the access control policy related to the service APIs (NOTE)

API_INVOKER_AUTHORIZATION_REVOKED

Events related to the revocation of the authorization of API invokers to access the service APIs. (NOTE)

API_INVOKER_UPDATED

Events related to API invoker profile updated to CAPIF.

API_TOPOLOGY_HIDING_CREATED

Events related to the creation or update of the API topology hiding information of the service API after the service APIs are published

API_TOPOLOGY_HIDING_REVOKED

Events related to the revocation of the API topology information of the service API after the service APIs are unpublished

NOTE: The present release does not specify further details (e.g. event filters) for this event.

8.3.5 Error Handling

8.3.5.1 General

HTTP error handling shall be supported as specified in clause 7.7.

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

8.3.5.2 Protocol Errors

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

8.3.5.3 Application Errors

The application errors defined for the CAPIF_Events_API are listed in table 8.3.5.3-1.

Table 8.3.5.3-1: Application errors

Application Error

HTTP status code

Description

Applicability

8.3.6 Feature negotiation

General feature negotiation procedures are defined in clause 7.8. Table 8.3.6-1 lists the supported features for CAPIF_Events_API.

Table 8.3.6-1: Supported Features

Feature number

Feature Name

Description

1

Notification_test_event

Testing of notification connection is supported according to clause 7.6.

2

Notification_websocket

The delivery of notifications over Websocket is supported according to clause 7.6. This feature requires that the Notification_test_event feature is also supported.

3

Enhanced_event_report

This feature supports the enhanced event report including event reporting requirement and event reporting details as defined in clause 5.4.2.2.2.