Npcf_EventExposure

The Policy Event Exposure Service is provided by the Policy Control Function (PCF).

  • Allows NF service consumers to subscribe, modify, and unsubscribe for policy control events.

  • Notifies NF service consumers with a corresponding subscription about observed events on the PCF.

OpenAPI

OpenAPI Version: 3.0.0

info

Description: Policy Control Event Exposure Service API

Version: "1.0.0"

Title: Npcf_EventExposure

externalDocs

Description: 3GPP TS 29.523 V15.0.0; 5G System; Policy Control Event Exposure Service; Stage 3.

URL: http://www.3gpp.org/ftp/Specs/archive/29_series/29.523/

security

- {}

- oAuth2ClientCredentials:

- npcf-eventexposure

servers

URL: '{apiRoot}/npcf-eventexposure/v1'

Variables:

API Root:

Default: https://example.com

Description: apiRoot as defined in subclause 4.4 of 3GPP TS 29.501

paths

/subscriptions

Method: Post

Request Body:

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureSubsc'

Responses:

'201' Success

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureSubsc'

Headers:

Location:

Description: 'Contains the URI of the created individual policy control events subscription resource, according to the structure: {apiRoot}/npcf-eventexposure/v1/subscriptions/{subscriptionId}'

Required/Optional: true

Schema:

Type: string

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29571_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default: Reference 'TS29571_CommonData.yaml#/components/responses/default'

Callbacks:

PcEventNotification:

'{$request.body#/notifUri}':

Method: Post

Request Body:

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureNotif'

Responses:

'204' No Content, Notification was succesfull

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29571_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default: Reference 'TS29571_CommonData.yaml#/components/responses/default'

/subscriptions/{subscriptionId}

get:

Parameters:

- name: subscriptionId

In: path

Description: Policy Control Event Subscription ID

Required/Optional: true

Schema:

Type: string

Responses:

'200' OK. Resource representation is returned

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureSubsc'

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29571_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'406': Reference 'TS29571_CommonData.yaml#/components/responses/406'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default: Reference 'TS29571_CommonData.yaml#/components/responses/default'

put:

Request Body:

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureSubsc'

Parameters:

- name: subscriptionId

In: path

Description: Policy Control Event Subscription ID

Required/Optional: true

Schema:

Type: string

Responses:

'200' OK. Resource was succesfully modified and representation is returned

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PcEventExposureSubsc'

'204' No Content. Resource was succesfully modified

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29571_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29571_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29571_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29571_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default: Reference 'TS29571_CommonData.yaml#/components/responses/default'

delete:

Parameters:

- name: subscriptionId

In: path

Description: Policy Control Event Subscription ID

Required/Optional: true

Schema:

Type: string

Responses:

'204' No Content. Resource was succesfully deleted

'400': Reference 'TS29571_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29571_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29571_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29571_CommonData.yaml#/components/responses/404'

'429': Reference 'TS29571_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29571_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29571_CommonData.yaml#/components/responses/503'

default: Reference 'TS29571_CommonData.yaml#/components/responses/default'

components

securitySchemes

oAuth2ClientCredentials

Type: oauth2

Flows:

clientCredentials:

tokenUrl: '{nrfApiRoot}/oauth2/token'

scopes:

npcf-eventexposure: Access to the Npcf_EventExposure API.

schemas

PcEventExposureNotif

Type: object

Properties:

notifId:

Type: string

eventNotifs:

Type: array

Items:

Reference: '#/components/schemas/PcEventNotification'

minItems: 1

Required:

- notifId

- eventNotifs

PcEventExposureSubsc

Type: object

Properties:

eventSubscs:

Type: array

Items:

Reference: '#/components/schemas/PcEvent'

minItems: 1

eventsRepInfo:

Reference: '#/components/schemas/ReportingInformation'

groupId:

Reference: 'TS29571_CommonData.yaml#/components/schemas/GroupId'

filterDnns:

Type: array

Items:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Dnn'

minItems: 1

filterSnssais:

Type: array

Items:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Snssai'

minItems: 1

filterServices:

Type: array

Items:

Reference: '#/components/schemas/ServiceIdentification'

minItems: 1

notifUri:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Link'

notifId:

Type: string

suppFeat:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

Required:

- eventSubs

- notifId

- notifUri

ReportingInformation

Type: object

Properties:

immRep:

Type: boolean

notifMethod:

Reference: 'TS29508_Nsmf_EventExposure.yaml#/components/schemas/NotificationMethod'

maxReportNbr:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Uinteger'

monDur:

Reference: 'TS29571_CommonData.yaml#/components/schemas/DateTime'

repPeriod:

Reference: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'

ServiceIdentification

Type: object

Properties:

servEthFlows:

Type: array

Items:

Reference: '#/components/schemas/EthernetFlowInfo'

minItems: 1

servIpFlows:

Type: array

Items:

Reference: '#/components/schemas/IpFlowInfo'

minItems: 1

afAppId:

Reference: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/AfAppId'

EthernetFlowInfo

Type: object

Properties:

ethFlows:

Type: array

Items:

Reference: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription'

minItems: 1

maxItems: 2

flowNumber:

Type: integer

Required:

- flowNumber

IpFlowInfo

Type: object

Properties:

ipFlows:

Type: array

Items:

Reference: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowDescription'

minItems: 1

maxItems: 2

flowNumber:

Type: integer

Required:

- flowNumber

PcEventNotification

Type: object

Properties:

event:

Reference: '#/components/schemas/PcEvent'

accType:

Reference: 'TS29571_CommonData.yaml#/components/schemas/AccessType'

ratType:

Reference: 'TS29571_CommonData.yaml#/components/schemas/RatType'

plmnId:

Reference: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'

timeStamp:

Reference: 'TS29571_CommonData.yaml#/components/schemas/DateTime'

pduSessionInfo:

Reference: '#/components/schemas/PduSessionInformation'

repServices:

Reference: '#/components/schemas/ServiceIdentification'

Required:

- event

- timeStamp

PduSessionInformation

Type: object

Properties:

snssai:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Snssai'

dnn:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Dnn'

ueIpv4:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr'

ueIpv6:

Reference: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix'

ipDomain:

Type: string

ueMac:

Reference: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'

Required:

- snssai

- dnn

# Simple data types and Enumerations

PcEvent

anyOf:

- type: string