Npcf_PolicyAuthorization

The Npcf_PolicyAuthorization Service, as defined in 3GPP TS 23.502 [3] and in 3GPP TS 23.503 [4], is provided by the Policy Control Function (PCF).

The Npcf_PolicyAuthorization service authorises an AF request and creates policies as requested by the authorised NF service consumer for the PDU session to which the AF session is bound to. This service allows the NF service consumer to subscribe/unsubscribe to the notification of events (for example, Access Type and RAT type, PLMN identifier, access network information, usage report).

Reference: 3GPP TS 29.514 V15.4.0

OpenAPI

OpenAPI Version: 3.0.0

info

Title: "Npcf_PolicyAuthorization Service API"

Version: "1.0.0"

Description: "This is the Policy Authorization Service"

externalDocs

Description: 3GPP TS 29.514 V15.2.0; 5G System; Policy Authorization Service;Stage 3.

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

security

- {}

- oAuth2ClientCredentials:

- npcf-policyauthorization

servers

URL: ’{apiRoot}/npcf-policyauthorization/v1’

Variables:

API Root:

Default: https://example.com

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

paths

/app-sessions

Method: Post

Summary: Creates a new Individual Application Session Context resource

Operation ID: PostAppSessions

Tags:

- Application Sessions (Collection)

Request Body:

Description: Contains the information for the creation the resource

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/AppSessionContext'

Responses:

'201' Successful creation of the resource

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/AppSessionContext'

Headers:

Location:

Description: 'Contains the URI of the created individual application session context resource, according to the structure: {apiRoot}/npcf-policyauthorization/v1/app-sessions/{appSessionId} or the URI of the created events subscription sub-resource, according to the structure: {apiRoot}/npcf-policyauthorization/v1/app-sessions/{appSessionId}/events-subscription}'

Required/Optional: true

Schema:

Type: string

'303' See Other. The result of the HTTP POST request would be equivalent to the existing Application Session Context. The HTTP response shall contain a Location header field set to the URI of the existing individual Application Session Context resource

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

terminationRequest:

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

Method: Post

Request Body:

Description: Request of the termination of the Individual Application Session Context

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/TerminationInfo'

Responses:

'204' The receipt of the notification is acknowledged.

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

eventNotification:

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

Method: Post

Request Body:

Description: Notification of an event occurrence in the PCF.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/EventsNotification'

Responses:

'204' The receipt of the notification is acknowledged

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

/app-sessions/{appSessionId}

get:

Summary: "Reads an existing Individual Application Session Context"

Operation ID: GetAppSession

Tags:

- Individual Application Session Context (Document)

Parameters:

- name: appSessionId

Description: string identifying the resource

In: path

Required/Optional: true

Schema:

Type: string

Responses:

'200' A representation of the resource is returned.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/AppSessionContext'

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

patch:

Summary: "Modifies an existing Individual Application Session Context"

Operation ID: ModAppSession

Tags:

- Individual Application Session Context (Document)

Parameters:

- name: appSessionId

Description: string identifying the resource

In: path

Required/Optional: true

Schema:

Type: string

Request Body:

Description: modification of the resource.

Required/Optional: true

Content:

application/merge-patch+json:

Schema:

Reference: '#/components/schemas/AppSessionContextUpdateData'

Responses:

'200' successful modification of the resource and a representation of that resource is returned

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/AppSessionContext'

'204' The successful modification

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

eventNotification:

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

Method: Post

Request Body:

Description: Notification of an event occurrence in the PCF.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/EventsNotification'

Responses:

'204' The receipt of the notification is acknowledged

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

/app-sessions/{appSessionId}/delete

Method: Post

Summary: "Deletes an existing Individual Application Session Context"

Operation ID: DeleteAppSession

Tags:

- Individual Application Session Context (Document)

Parameters:

- name: appSessionId

Description: string identifying the Individual Application Session Context resource

In: path

Required/Optional: true

Schema:

Type: string

Request Body:

Description: deletion of the Individual Application Session Context resource, req notification

Required/Optional: false

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/EventsSubscReqData'

Responses:

'200' The deletion of the resource is confirmed and a resource is returned

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/AppSessionContext'

'204' The deletion is confirmed without returning additional data.

'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 'https://raw.githubusercontent.com/jdegre/5GC_APIs/master/TS29571_CommonData.yaml#/components/responses/411'

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

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

'429': Reference 'https://raw.githubusercontent.com/jdegre/5GC_APIs/master/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'

/app-sessions/{appSessionId}/events-subscription

put:

Summary: "creates or modifies an Events Subscription subresource"

Operation ID: updateEventsSubsc

Tags:

- Events Subscription (Document)

Parameters:

- name: appSessionId

Description: string identifying the Events Subscription resource

In: path

Required/Optional: true

Schema:

Type: string

Request Body:

Description: Creation or modification of an Events Subscription resource.

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/EventsSubscReqData'

Responses:

'201' The creation of the Events Subscription resource is confirmed and its representation is returned.

Content:

Application/JSON:

Schema:

anyOf:

- $ref: '#/components/schemas/EventsSubscReqData'

- $ref: '#/components/schemas/EventsNotification'

Headers:

Location:

Description: 'Contains the URI of the created Events Subscription resource, according to the structure: {apiRoot}/npcf-policyauthorization/v1/app-sessions/{appSessionId}/events-subscription}'

Required/Optional: true

Schema:

Type: string

'200' The modification of the of the Events Subscription resource is confirmed its representation is returned.

Content:

Application/JSON:

Schema:

anyOf:

- $ref: '#/components/schemas/EventsSubscReqData'

- $ref: '#/components/schemas/EventsNotification'

'204' The modification of the Events Subscription subresource is confirmed without returning additional data.

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

eventNotification:

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

Method: Post

Request Body:

Description: Contains the information for the notification of an event occurrence in the PCF.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/EventsNotification'

Responses:

'204' The receipt of the notification is acknowledged.

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

Summary: deletes the Events Subscription subresource

Operation ID: DeleteEventsSubsc

Tags:

- Events Subscription (Document)

Parameters:

- name: appSessionId

Description: string identifying the Individual Application Session Context resource

In: path

Required/Optional: true

Schema:

Type: string

Responses:

'204' The deletion of the of the Events Subscription sub-resource is confirmed without returning additional data.

'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-policyauthorization: Access to the Npcf_PolicyAuthorization API

schemas

AppSessionContext

Description: Represents an Individual Application Session Context resource.

Type: object

Properties:

ascReqData:

Reference: '#/components/schemas/AppSessionContextReqData'

ascRespData:

Reference: '#/components/schemas/AppSessionContextRespData'

evsNotif:

Reference: '#/components/schemas/EventsNotification'

AppSessionContextReqData

Description: Identifies the service requirements of an Individual Application Session Context.

Type: object

Required:

- notifUri

- suppFeat

oneOf:

- required: [ueIpv4]

- required: [ueIpv6]

- required: [ueMac]

Properties:

afAppId:

Reference: '#/components/schemas/AfAppId'

afRoutReq:

Reference: '#/components/schemas/AfRoutingRequirement'

aspId:

Reference: '#/components/schemas/AspId'

bdtRefId:

Reference: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'

dnn:

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

evSubsc:

Reference: '#/components/schemas/EventsSubscReqData'

medComponents:

Type: object

additionalProperties:

Reference: '#/components/schemas/MediaComponent'

minProperties: 1

ipDomain:

Type: string

mpsId:

Description: indication of MPS service request

Type: string

notifUri:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

sliceInfo:

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

sponId:

Reference: '#/components/schemas/SponId'

sponStatus:

Reference: '#/components/schemas/SponsoringStatus'

supi:

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

suppFeat:

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

ueIpv4:

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

ueIpv6:

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

ueMac:

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

AppSessionContextRespData

Description: Describes the authorization data of an Individual Application Session Context created by the PCF.

Type: object

Properties:

servAuthInfo:

Reference: '#/components/schemas/ServAuthInfo'

suppFeat:

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

AppSessionContextUpdateData

Description: Identifies the modifications to an Individual Application Session Context and may include the modifications to the sub-resource Events Subscription.

Type: object

Properties:

afAppId:

Reference: '#/components/schemas/AfAppId'

afRoutReq:

Reference: '#/components/schemas/AfRoutingRequirementRm'

aspId:

Reference: '#/components/schemas/AspId'

bdtRefId:

Reference: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'

evSubsc:

Reference: '#/components/schemas/EventsSubscReqDataRm'

medComponents:

Type: object

additionalProperties:

Reference: '#/components/schemas/MediaComponentRm'

minProperties: 1

mpsId:

Description: indication of MPS service request

Type: string

sponId:

Reference: '#/components/schemas/SponId'

sponStatus:

Reference: '#/components/schemas/SponsoringStatus'

EventsSubscReqData

Description: Identifies the events the application subscribes to.

Type: object

Required:

- events

Properties:

events:

Type: array

Items:

Reference: '#/components/schemas/AfEventSubscription'

minItems: 1

notifUri:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

usgThres:

Reference: 'TS29122_CommonData.yaml#/components/schemas/UsageThreshold'

EventsSubscReqDataRm

Description: this data type is defined in the same way as the EventsSubscReqData data type, but with the OpenAPI nullable property set to true.

Type: object

Required:

- events

Properties:

events:

Type: array

Items:

Reference: '#/components/schemas/AfEventSubscription'

notifUri:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

usgThres:

Reference: 'TS29122_CommonData.yaml#/components/schemas/UsageThresholdRm'

nullable: true

MediaComponent

Description: Identifies a media component.

Type: object

Required:

- medCompN

Properties:

afAppId:

Reference: '#/components/schemas/AfAppId'

afRoutReq:

Reference: '#/components/schemas/AfRoutingRequirement'

contVer:

Reference: '#/components/schemas/ContentVersion'

codecs:

Type: array

Items:

Reference: '#/components/schemas/CodecData'

minItems: 1

maxItems: 2

fStatus:

Reference: '#/components/schemas/FlowStatus'

marBwDl:

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

marBwUl:

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

medCompN:

Type: integer

medSubComps:

Type: object

additionalProperties:

Reference: '#/components/schemas/MediaSubComponent'

minProperties: 1

medType:

Reference: '#/components/schemas/MediaType'

mirBwDl:

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

mirBwUl:

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

resPrio:

Reference: '#/components/schemas/ReservPriority'

MediaComponentRm

Description: This data type is defined in the same way as the MediaComponent data type, but with the OpenAPI nullable property set to true

Type: object

Required:

- medCompN

Properties:

afAppId:

Reference: '#/components/schemas/AfAppId'

afRoutReq:

Reference: '#/components/schemas/AfRoutingRequirementRm'

contVer:

Reference: '#/components/schemas/ContentVersion'

codecs:

Type: array

Items:

Reference: '#/components/schemas/CodecData'

minItems: 1

maxItems: 2

fStatus:

Reference: '#/components/schemas/FlowStatus'

marBwDl:

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

marBwUl:

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

medCompN:

Type: integer

medSubComps:

Type: object

additionalProperties:

Reference: '#/components/schemas/MediaSubComponentRm'

minProperties: 1

medType:

Reference: '#/components/schemas/MediaType'

mirBwDl:

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

mirBwUl:

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

resPrio:

Reference: '#/components/schemas/ReservPriority'

nullable: true

MediaSubComponent

Description: Identifies a media subcomponent

Type: object

Required:

- fNum

Properties:

ethfDescs:

Type: array

Items:

Reference: '#/components/schemas/EthFlowDescription'

minItems: 1

maxItems: 2

fNum:

Type: integer

fDescs:

Type: array

Items:

Reference: '#/components/schemas/FlowDescription'

minItems: 1

maxItems: 2

fStatus:

Reference: '#/components/schemas/FlowStatus'

marBwDl:

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

marBwUl:

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

tosTrCl:

Reference: '#/components/schemas/TosTrafficClass'

flowUsage:

Reference: '#/components/schemas/FlowUsage'

MediaSubComponentRm

Description: This data type is defined in the same way as the MediaSubComponent data type, but with the OpenAPI nullable property set to true. Removable attributes marBwDland marBwUl are defined with the corresponding removable data type.

Type: object

Required:

- fNum

Properties:

ethfDescs:

Type: array

Items:

Reference: '#/components/schemas/EthFlowDescription'

minItems: 1

maxItems: 2

nullable: true

fNum:

Type: integer

fDescs:

Type: array

Items:

Reference: '#/components/schemas/FlowDescription'

minItems: 1

maxItems: 2

nullable: true

fStatus:

Reference: '#/components/schemas/FlowStatus'

marBwDl:

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

marBwUl:

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

tosTrCl:

Reference: '#/components/schemas/TosTrafficClassRm'

flowUsage:

Reference: '#/components/schemas/FlowUsage'

nullable: true

EventsNotification

Description: describes the notification of a matched event

Type: object

Required:

- evSubsUri

- evNotifs

Properties:

accessType:

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

anGwAddr:

Reference: '#/components/schemas/AnGwAddress'

evSubsUri:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

evNotifs:

Type: array

Items:

Reference: '#/components/schemas/AfEventNotification'

minItems: 1

failedResourcAllocReports:

Type: array

Items:

Reference: '#/components/schemas/ResourcesAllocationInfo'

minItems: 1

plmnId:

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

qncReports:

Type: array

Items:

Reference: '#/components/schemas/QosNotificationControlInfo'

minItems: 1

ratType:

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

usgRep:

Reference: 'TS29122_CommonData.yaml#/components/schemas/AccumulatedUsage'

AfEventSubscription

Description: describes the event information delivered in the subscription

Type: object

Required:

- event

Properties:

event:

Reference: '#/components/schemas/AfEvent'

notifMethod:

Reference: '#/components/schemas/AfNotifMethod'

AfEventNotification

Description: describes the event information delivered in the notification

Type: object

Required:

- event

Properties:

event:

Reference: '#/components/schemas/AfEvent'

Flows:

Type: array

Items:

Reference: '#/components/schemas/Flows'

minItems: 1

TerminationInfo

Description: indicates the cause for requesting the deletion of the Individual Application Session Context resource

Type: object

Required:

- termCause

- resUri

Properties:

termCause:

Reference: '#/components/schemas/TerminationCause'

resUri:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

AfRoutingRequirement

Description: describes the event information delivered in the subscription

Type: object

Properties:

appReloc:

Type: boolean

routeToLocs:

Type: array

Items:

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

minItems: 1

spVal:

Reference: '#/components/schemas/SpatialValidity'

tempVals:

Type: array

Items:

Reference: '#/components/schemas/TemporalValidity'

minItems: 1

upPathChgSub:

Reference: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent'

SpatialValidity

Description: describes explicitly the route to an Application location

Type: object

Required:

- presenceInfoList

Properties:

presenceInfoList:

Type: object

additionalProperties:

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

minProperties: 1

SpatialValidityRm

Description: this data type is defined in the same way as the SpatialValidity data type, but with the OpenAPI nullable property set to true

Type: object

Required:

- presenceInfoList

Properties:

presenceInfoList:

Type: object

additionalProperties:

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

minProperties: 1

nullable: true

AfRoutingRequirementRm

Description: this data type is defined in the same way as the AfRoutingRequirement data type, but with the OpenAPI nullable property set to true and the spVal and tempVals attributes defined as removable.

Type: object

Properties:

appReloc:

Type: boolean

routeToLocs:

Type: array

Items:

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

minItems: 1

nullable: true

spVal:

Reference: '#/components/schemas/SpatialValidityRm'

tempVals:

Type: array

Items:

Reference: '#/components/schemas/TemporalValidity'

minItems: 1

nullable: true

upPathChgSub:

Reference: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent'

nullable: true

AnGwAddress

Description: describes the address of the access network gateway control node

Type: object

anyOf:

- required: [anGwIpv4Addr]

- required: [anGwIpv6Addr]

Properties:

anGwIpv4Addr:

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

anGwIpv6Addr:

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

Flows

Description: Identifies the flows

Type: object

Required:

- medCompN

Properties:

contVers:

Type: array

Items:

Reference: '#/components/schemas/ContentVersion'

minItems: 1

fNums:

Type: array

Items:

Type: integer

minItems: 1

medCompN:

Type: integer

EthFlowDescription

Description: Identifies an Ethernet flow

Type: object

Required:

- ethType

Properties:

destMacAddr:

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

ethType:

Type: string

fDesc:

Reference: '#/components/schemas/FlowDescription'

fDir:

Reference: 'TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowDirection'

sourceMacAddr:

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

vlanTags:

Type: array

Items:

Type: string

minItems: 1

maxItems: 2

ResourcesAllocationInfo

Description: describes the status of the PCC rule(s) related to certain media components.

Type: object

Required:

- mcResourcStatus

Properties:

mcResourcStatus:

Reference: '#/components/schemas/MediaComponentResourcesStatus'

Flows:

Type: array

Items:

Reference: '#/components/schemas/Flows'

minItems: 1

TemporalValidity

Description: Indicates the time interval(s) during which the AF request is to be applied

Type: object

Properties:

startTime:

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

stopTime:

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

QosNotificationControlInfo

Description: Indicates whether the QoS targets for a GRB flow are not guaranteed or guaranteed again

Type: object

Required:

- notifType

Properties:

notifType:

Reference: '#/components/schemas/QosNotifType'

Flows:

Type: array

Items:

Reference: '#/components/schemas/Flows'

minItems: 1

# SIMPLE DATA TYPES

AfAppId

Description: Contains an AF application identifier.

Type: string

AspId

Description: Contains an identity of an application service provider.

Type: string

CodecData

Description: Contains codec related information.

Type: string

ContentVersion

Description: Represents the content version of some content.

Type: integer

FlowDescription

Description: Defines a packet filter of an IP flow.

Type: string

SponId

Description: Contains an identity of a sponsor.

Type: string

TosTrafficClass

Description: 2-octet string, where each octet is encoded in hexadecimal representation. The first octet contains the IPv4 Type-of-Service or the IPv6 Traffic-Class field and the second octet contains the ToS/Traffic Class mask field.

Type: string

TosTrafficClassRm

Description: this data type is defined in the same way as the TosTrafficClass data type, but with the OpenAPI nullable property set to true

Type: string

nullable: true

# ENUMERATIONS DATA TYPES

MediaType

anyOf:

- type: string

enum:

- AUDIO

- VIDEO

- DATA

- APPLICATION

- CONTROL

- TEXT

- MESSAGE

- OTHER

- type: string

ReservPriority

anyOf:

- type: string

enum:

- PRIO_1

- PRIO_2

- PRIO_3

- PRIO_4

- PRIO_5

- PRIO_6

- PRIO_7

- PRIO_8

- PRIO_9

- PRIO_10

- PRIO_11

- PRIO_12

- PRIO_13

- PRIO_14

- PRIO_15

- PRIO_16

- type: string

ServAuthInfo

anyOf:

- type: string

SponsoringStatus

anyOf:

- type: string

AfEvent

anyOf:

- type: string

AfNotifMethod

anyOf:

- type: string

QosNotifType

anyOf:

- type: string

TerminationCause

anyOf:

- type: string

MediaComponentResourcesStatus

anyOf:

- type: string

FlowUsage

anyOf:

- type: string

FlowStatus

anyOf:

- type: string