Nnef_PFDmanagement

Service operations defined for the Nnef_PFDmanagement Service are shown in table:

Table 1. Nnef_PFDmanagement Service Operations

Service Operation Name

Description

Initiated by

Nnef_PFDmanagement_Fetch

Provides the PFDs for application identifier(s) to the NF service consumer.

SMF

Nnef_PFDmanagement_Subscribe

Allows NF service consumers to subscribe the notification of events when the PFDs for application identifier change.

SMF

Nnef_PFDmanagement_Notify

Notifies NF service consumer to update and/or delete the PFDs for application identifier(s).

PFDF

Nnef_PFDmanagement_Unsubscribe

Allows NF service consumers to unsubscribe the notification of events.

SMF

Reference: 3GPP TS 29.551 version 15.0.0 Release 15

OpenAPI

OpenAPI Version: 3.0.0

info

Title: Nnef_PFDmanagement Sevice API

Version: "1.0.0"

Description: Packet Flow Description Management Service

externalDocs

Description: 3GPP TS 29.551 v15.1.0, 5G System; Packet Flow Description Management Service

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

security

- {}

- oAuth2ClientCredentials:

- nnef-pfdmanagement

servers

URL: '{apiRoot}/nnef-pfdmanagement/v1'

Variables:

API Root:

Default: https://example.com

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

paths

/applications

get:

Summary: Retrieve PFDs for all applications or for one or multiple applications with query parameter.

Tags:

- PFD of applications

Operation ID: Nnef_PFDmanagement_Fetch

Parameters:

- name: application-ids

Description: The required application identifier(s) for the returned PFDs.

In: query

Required/Optional: true

Schema:

Type: array

items:

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

minItems: 1

- name: supported-features

In: query

Description: To filter irrelevant responses related to unsupported features

Schema:

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

Responses:

'200' The PFDs for one or more application identifier(s) in the request URI are returned.

Content:

Application/JSON:

Schema:

Type: array

items:

Reference: '#/components/schemas/PfdDataForApp'

minItems: 0

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

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

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

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

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

/applications/{appId}

get:

Summary: Retrieve the PFD for an application.

Tags:

- Individual application PFD

Operation ID: Nnef_PFDmanagement_Fetch

Parameters:

- name: appId

Description: The required application identifier(s) for the returned PFDs.

In: path

Required/Optional: true

Schema:

Type: string

- name: supported-features

In: query

Description: To filter irrelevant responses related to unsupported features

Schema:

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

Responses:

'200' A representation of PFDs for an application in the request URI is returned.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PfdDataForApp'

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

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

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

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

/subscriptions

Method: Post

Summary: Subscribe the notification of PFD changes.

Tags:

- PFD subscriptions

Operation ID: Nnef_PFDmanagement_Subscribe

Request Body:

Description: a PfdSubscription resource to be created.

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PfdSubscription'

Callbacks:

PfdChangeNotification:

'{request.body#/notifyUri}':

Method: Post

Summary: Notification of PFD change.

Tags:

- PfdChangeNotification data

Operation ID: Nnef_PFDmanagement_Notify

Request Body:

Required/Optional: true

Content:

Application/JSON:

Schema:

Type: array

items:

Reference: '#/components/schemas/PfdChangeNotification'

minItems: 1

Responses:

'200' The PFD operation in the notification is performed and the PfdChangeReport indicates failure reason.

Content:

Application/JSON:

Schema:

Type: array

items:

Reference: '#/components/schemas/PfdChangeReport'

minItems: 1

'204' The PFD operation in the notification is performed successfully.

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

Responses:

'201' The creation of a PfdSubscription resource is confirmed and a representation of that resource is returned.

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/PfdSubscription'

Headers:

Location:

Description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nnef-pfdmanagement/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'

/subscriptions/{subscriptionId}

delete:

Summary: Delete a subscription of PFD change notification.

Tags:

- Individual PFD subscription

Operation ID: Nnef_PFDmanagement_Unsubscribe

Parameters:

- name: subscriptionId

Description: Identify the subscription.

In: path

Required/Optional: true

Schema:

Type: string

Responses:

'204' The PfdSubscription resource matching the subscriptionId was deleted successfully.

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

components

securitySchemes

oAuth2ClientCredentials

Type: oauth2

Flows:

clientCredentials:

tokenUrl: '{nrfApiRoot}/oauth2/token'

scopes:

nnef-pfdmanagement: Access to the Nnef_PFDmanagement API

schemas

# STRUCTURED DATA TYPES

PfdContent

Type: object

Properties:

pfdId:

Type: string

Description: Identifies a PDF of an application identifier.

flowDescriptions:

Type: array

Items:

Type: string

minItems: 1

Description: Represents a 3-tuple with protocol, server ip and server port for UL/DL application traffic.

urls:

Type: array

Items:

Type: string

minItems: 1

Description: Indicates a URL or a regular expression which is used to match the significant parts of the URL.

domainNames:

Type: array

Items:

Type: string

minItems: 1

Description: Indicates an FQDN or a regular expression as a domain name matching criteria.

PfdDataForApp

Type: object

Properties:

applicationId:

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

pfds:

Type: array

Items:

Reference: '#/components/schemas/PfdContent'

minItems: 1

cachingTime:

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

Required:

- applicationId

- pfds

PfdSubscription

Type: object

Properties:

applicationIds:

Type: array

Items:

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

minItems: 1

notifyUri:

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

supportedFeatures:

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

Required:

- notifyUri

- supportedFeatures

PfdChangeNotification

Type: object

Properties:

applicationId:

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

removalFlag:

Type: boolean

Default: false

partialFlag:

Type: boolean

Default: false

pfds:

Type: array

Items:

Reference: '#/components/schemas/PfdContent'

minItems: 1

Required:

- applicationId

PfdChangeReport

Type: object

Properties:

pfdError:

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

applicationId:

Type: array

Items:

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

minItems: 1

Required:

- pfdError

- applicationId