Nnrf_NFManagement

The Nnrf_NFManagement service allows a Network Function instance in the serving PLMN to register, update or deregister its profile in the NRF.

It also allows an NF to subscribe to be notified of newly registered NF instances along with their NF services.

The NF profile consists of NF instance parameters. It also consists of different services parameters exposed by the NF Instance.

Reference: 3GPP TS 29.510 version 15.1.0 Release 15

OpenAPI

OpenAPI Version: 3.0.0

info

Version: '1.0.0'

Title: 'NRF NFManagement Service'

Description: 'NRF NFManagement Service'

externalDocs

Description: 3GPP TS 29.510 V15.2.0; 5G System; Network Function Repository Services; Stage 3

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

security

- {}

- oAuth2ClientCredentials:

- nnrf-nfm

servers

URL: '{apiRoot}/nnrf-nfm/v1'

Variables:

API Root:

Default: https://example.com

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

paths

/nf-instances

get:

Summary: Retrieves a collection of NF Instances

Operation ID: GetNFInstances

Tags:

- NF Instances (Store)

Parameters:

- name: nf-type

In: query

Description: Type of NF

Required/Optional: false

Schema:

Reference: '#/components/schemas/NFType'

- name: limit

In: query

Description: How many items to return at one time

Required/Optional: false

Schema:

Type: integer

Responses:

'200' Expected response to a valid request

Content:

application/3gppHal+json:

Schema:

Type: object

Properties:

_links:

Type: object

Description: 'List of the URI of NF instances. It has two members whose names are item and self. The item one contains an array of URIs.'

additionalProperties:

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

minProperties: 1

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

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

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

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

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

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

/nf-instances/{nfInstanceID}

get:

Summary: Read the profile of a given NF Instance

Operation ID: GetNFInstance

Tags:

- NF Instance ID (Document)

Parameters:

- name: nfInstanceID

In: path

Description: Unique ID of the NF Instance

Required/Optional: true

Schema:

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

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NFProfile'

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

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

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

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

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

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

put:

Summary: Register a new NF Instance

Operation ID: RegisterNFInstance

Tags:

- NF Instance ID (Document)

Parameters:

- name: nfInstanceID

In: path

Required/Optional: true

Description: Unique ID of the NF Instance to register

Schema:

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

Request Body:

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NFProfile'

Required/Optional: true

Responses:

'200' OK (Profile Replacement)

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NFProfile'

'201' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NFProfile'

Headers:

Location:

Description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nnrf-nfm/v1/nf-instances/{nfInstanceId}'

Required/Optional: true

Schema:

Type: string

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

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

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

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

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

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

patch:

Summary: Update NF Instance profile

Operation ID: UpdateNFInstance

Tags:

- NF Instance ID (Document)

Parameters:

- name: nfInstanceID

In: path

Required/Optional: true

Description: Unique ID of the NF Instance to update

Schema:

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

Request Body:

Content:

application/json-patch+json:

Schema:

Type: array

items:

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

minItems: 1

Required/Optional: true

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NFProfile'

'204' Expected response with empty body

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

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

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

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

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

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

delete:

Summary: Deregisters a given NF Instance

Operation ID: DeregisterNFInstance

Tags:

- NF Instance ID (Document)

Parameters:

- name: nfInstanceID

In: path

Required/Optional: true

Description: Unique ID of the NF Instance to deregister

Schema:

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

Responses:

'204' Expected response to a successful deregistration

/subscriptions

Method: Post

Summary: Create a new subscription

Operation ID: CreateSubscription

Tags:

- Subscriptions (Collection)

Request Body:

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/SubscriptionData'

Required/Optional: true

Responses:

'201' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/SubscriptionData'

Headers:

Location:

Description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nnrf-nfm/v1/subscriptions/{subscriptionId}'

Required/Optional: true

Schema:

Type: string

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

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

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

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

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

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

Callbacks:

onNFStatusEvent:

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

Method: Post

Request Body:

Description: Notification Payload

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/NotificationData'

Responses:

'204' Expected response to a successful callback processing

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

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

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

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

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

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

/subscriptions/{subscriptionID}

patch:

Summary: Updates a subscription

Operation ID: UpdateSubscription

Tags:

- Subscription ID (Document)

Parameters:

- name: subscriptionID

In: path

Required/Optional: true

Description: Unique ID of the subscription to update

Schema:

Type: string

pattern: '^([0-9]{5,6}-)?[^-]+$'

Request Body:

Content:

application/json-patch+json:

Schema:

Type: array

items:

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

Required/Optional: true

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/SubscriptionData'

'204' No Content

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

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

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

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

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

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

delete:

Summary: Deletes a subscription

Operation ID: RemoveSubscription

Tags:

- Subscription ID (Document)

Parameters:

- name: subscriptionID

In: path

Required/Optional: true

Description: Unique ID of the subscription to remove

Schema:

Type: string

pattern: '^([0-9]{5,6}-)?[^-]+$'

Responses:

'204' Expected response to a successful subscription removal

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

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

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

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

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

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

components

securitySchemes

oAuth2ClientCredentials

Type: oauth2

Flows:

clientCredentials:

tokenUrl: '/oauth2/token'

scopes:

nnrf-nfm: Access to the Nnrf_NFManagement API

schemas

NFProfile

Type: object

Required:

- nfInstanceId

- nfType

- nfStatus

anyOf:

- required: [ fqdn ]

- required: [ ipv4Addresses ]

- required: [ ipv6Addresses ]

Properties:

nfInstanceId:

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

nfType:

Reference: '#/components/schemas/NFType'

nfStatus:

Reference: '#/components/schemas/NFStatus'

heartBeatTimer:

Type: integer

plmnList:

Type: array

Items:

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

minItems: 1

sNssais:

Type: array

Items:

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

minItems: 1

nsiList:

Type: array

Items:

Type: string

minItems: 1

fqdn:

Reference: '#/components/schemas/Fqdn'

interPlmnFqdn:

Reference: '#/components/schemas/Fqdn'

ipv4Addresses:

Type: array

Items:

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

minItems: 1

ipv6Addresses:

Type: array

Items:

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

minItems: 1

allowedPlmns:

Type: array

Items:

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

minItems: 1

allowedNfTypes:

Type: array

Items:

Reference: '#/components/schemas/NFType'

minItems: 1

allowedNfDomains:

Type: array

Items:

Type: string

minItems: 1

allowedNssais:

Type: array

Items:

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

minItems: 1

priority:

Type: integer

Minimum: 0

Maximum: 65535

capacity:

Type: integer

Minimum: 0

Maximum: 65535

load:

Type: integer

Minimum: 0

Maximum: 100

locality:

Type: string

udrInfo:

Reference: '#/components/schemas/UdrInfo'

udmInfo:

Reference: '#/components/schemas/UdmInfo'

ausfInfo:

Reference: '#/components/schemas/AusfInfo'

amfInfo:

Reference: '#/components/schemas/AmfInfo'

smfInfo:

Reference: '#/components/schemas/SmfInfo'

upfInfo:

Reference: '#/components/schemas/UpfInfo'

pcfInfo:

Reference: '#/components/schemas/PcfInfo'

bsfInfo:

Reference: '#/components/schemas/BsfInfo'

chfInfo:

Reference: '#/components/schemas/ChfInfo'

nrfInfo:

Reference: '#/components/schemas/NrfInfo'

customInfo:

Type: object

recoveryTime:

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

nfServicePersistence:

Type: boolean

Default: false

nfServices:

Type: array

Items:

Reference: '#/components/schemas/NFService'

minItems: 1

NFService

Type: object

Required:

- serviceInstanceId

- serviceName

- versions

- scheme

- nfServiceStatus

Properties:

serviceInstanceId:

Type: string

serviceName:

Reference: '#/components/schemas/ServiceName'

versions:

Type: array

Items:

Reference: '#/components/schemas/NFServiceVersion'

minItems: 1

scheme:

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

nfServiceStatus:

Reference: '#/components/schemas/NFServiceStatus'

fqdn:

Reference: '#/components/schemas/Fqdn'

interPlmnFqdn:

Reference: '#/components/schemas/Fqdn'

ipEndPoints:

Type: array

Items:

Reference: '#/components/schemas/IpEndPoint'

minItems: 1

apiPrefix:

Type: string

defaultNotificationSubscriptions:

Type: array

Items:

Reference: '#/components/schemas/DefaultNotificationSubscription'

minItems: 1

allowedPlmns:

Type: array

Items:

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

minItems: 1

allowedNfTypes:

Type: array

Items:

Reference: '#/components/schemas/NFType'

minItems: 1

allowedNfDomains:

Type: array

Items:

Type: string

minItems: 1

allowedNssais:

Type: array

Items:

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

minItems: 1

priority:

Type: integer

Minimum: 0

Maximum: 65535

capacity:

Type: integer

Minimum: 0

Maximum: 65535

load:

Type: integer

Minimum: 0

Maximum: 100

recoveryTime:

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

chfServiceInfo:

Reference: '#/components/schemas/ChfServiceInfo'

supportedFeatures:

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

NFType

anyOf:

- type: string

enum:

- NRF

- UDM

- AMF

- SMF

- AUSF

- NEF

- PCF

- SMSF

- NSSF

- UDR

- LMF

- GMLC

- 5G_EIR

- SEPP

- UPF

- N3IWF

- AF

- UDSF

- BSF

- CHF

- NWDAF

- type: string

Fqdn

Type: string

IpEndPoint

Type: object

Properties:

ipv4Address:

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

ipv6Address:

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

transport:

Reference: '#/components/schemas/TransportProtocol'

port:

Type: integer

Minimum: 0

Maximum: 65535

SubscriptionData

Type: object

Required:

- nfStatusNotificationUri

- subscriptionId

Properties:

nfStatusNotificationUri:

Type: string

subscrCond:

oneOf:

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

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

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

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

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

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

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

subscriptionId:

Type: string

Pattern: '^([0-9]{5,6}-)?[^-]+$'

readOnly: true

validityTime:

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

reqNotifEvents:

Type: array

Items:

Reference: '#/components/schemas/NotificationEventType'

minItems: 1

plmnId:

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

notifCondition:

Reference: '#/components/schemas/NotifCondition'

reqNfType:

Reference: '#/components/schemas/NFType'

reqNfFqdn:

Reference: '#/components/schemas/Fqdn'

NfInstanceIdCond

Type: object

Required:

- nfInstanceId

Properties:

nfInstanceId:

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

NfTypeCond

Type: object

Required:

- nfType

Properties:

nfType:

Reference: '#/components/schemas/NFType'

ServiceNameCond

Type: object

Required:

- serviceName

Properties:

serviceName:

Reference: '#/components/schemas/ServiceName'

AmfCond

Type: object

anyOf:

- required: [ amfSetId ]

- required: [ amfRegionId ]

Properties:

amfSetId:

Type: string

amfRegionId:

Type: string

GuamiListCond

Type: object

Required:

- guamiList

Properties:

guamiList:

Type: array

Items:

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

NetworkSliceCond

Type: object

Required:

- snssaiList

Properties:

snssaiList:

Type: array

Items:

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

nsiList:

Type: array

Items:

Type: string

NfGroupCond

Type: object

Required:

- nfType

- nfGroupId

Properties:

nfType:

Type: string

enum:

- UDM

- AUSF

- UDR

nfGroupId:

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

NotifCondition

Type: object

not:

Required: [ monitoredAttributes, unmonitoredAttributes ]

Properties:

monitoredAttributes:

Type: array

Items:

Type: string

minItems: 1

unmonitoredAttributes:

Type: array

Items:

Type: string

minItems: 1

UdrInfo

Type: object

Properties:

groupId:

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

supiRanges:

Type: array

Items:

Reference: '#/components/schemas/SupiRange'

minItems: 1

gpsiRanges:

Type: array

Items:

Reference: '#/components/schemas/IdentityRange'

minItems: 1

externalGroupIdentifiersRanges:

Type: array

Items:

Reference: '#/components/schemas/IdentityRange'

minItems: 1

supportedDataSets:

Type: array

Items:

Reference: '#/components/schemas/DataSetId'

minItems: 1

SupiRange

Type: object

Properties:

start:

Type: string

Pattern: '^[0-9]+$'

end:

Type: string

Pattern: '^[0-9]+$'

Pattern:

Type: string

IdentityRange

Type: object

Properties:

start:

Type: string

Pattern: '^[0-9]+$'

end:

Type: string

Pattern: '^[0-9]+$'

Pattern:

Type: string

DataSetId

anyOf:

- type: string

enum:

- SUBSCRIPTION

- POLICY

- EXPOSURE

- APPLICATION

- type: string

UdmInfo

Type: object

Properties:

groupId:

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

supiRanges:

Type: array

Items:

Reference: '#/components/schemas/SupiRange'

minItems: 1

gpsiRanges:

Type: array

Items:

Reference: '#/components/schemas/IdentityRange'

minItems: 1

externalGroupIdentifiersRanges:

Type: array

Items:

Reference: '#/components/schemas/IdentityRange'

minItems: 1

routingIndicators:

Type: array

Items:

Type: string

Pattern: '^[0-9]{1,4}$'

minItems: 1

AusfInfo

Type: object

Properties:

groupId:

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

supiRanges:

Type: array

Items:

Reference: '#/components/schemas/SupiRange'

minItems: 1

routingIndicators:

Type: array

Items:

Type: string

Pattern: '^[0-9]{1,4}$'

minItems: 1

AmfInfo

Type: object

Required:

- amfSetId

- amfRegionId

- guamiList

Properties:

amfSetId:

Type: string

amfRegionId:

Type: string

guamiList:

Type: array

Items:

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

minItems: 1

taiList:

Type: array

Items:

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

minItems: 1

taiRangeList:

Type: array

Items:

Reference: '#/components/schemas/TaiRange'

minItems: 1

backupInfoAmfFailure:

Type: array

Items:

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

minItems: 1

backupInfoAmfRemoval:

Type: array

Items:

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

minItems: 1

n2InterfaceAmfInfo:

Reference: '#/components/schemas/N2InterfaceAmfInfo'

SmfInfo

Type: object

Required:

- sNssaiSmfInfoList

Properties:

sNssaiSmfInfoList:

Type: array

Items:

Reference: '#/components/schemas/SnssaiSmfInfoItem'

minItems: 1

taiList:

Type: array

Items:

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

minItems: 1

taiRangeList:

Type: array

Items:

Reference: '#/components/schemas/TaiRange'

minItems: 1

pgwFqdn:

Reference: '#/components/schemas/Fqdn'

accessType:

Type: array

Items:

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

minItems: 1

SnssaiSmfInfoItem

Type: object

Required:

- sNssai

- dnnSmfInfoList

Properties:

sNssai:

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

dnnSmfInfoList:

Type: array

Items:

Reference: '#/components/schemas/DnnSmfInfoItem'

minItems: 1

DnnSmfInfoItem

Type: object

Required:

- dnn

Properties:

dnn:

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

UpfInfo

Type: object

Required:

- sNssaiUpfInfoList

Properties:

sNssaiUpfInfoList:

Type: array

Items:

Reference: '#/components/schemas/SnssaiUpfInfoItem'

minItems: 1

smfServingArea:

Type: array

Items:

Type: string

minItems: 1

interfaceUpfInfoList:

Type: array

Items:

Reference: '#/components/schemas/InterfaceUpfInfoItem'

minItems: 1

iwkEpsInd:

Type: boolean

Default: false

SnssaiUpfInfoItem

Type: object

Required:

- sNssai

- dnnUpfInfoList

Properties:

sNssai:

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

dnnUpfInfoList:

Type: array

Items:

Reference: '#/components/schemas/DnnUpfInfoItem'

minItems: 1

DnnUpfInfoItem

Type: object

Required:

- dnn

Properties:

dnn:

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

dnaiList:

Type: array

Items:

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

minItems: 1

InterfaceUpfInfoItem

Type: object

Required:

- interfaceType

Properties:

interfaceType:

Reference: '#/components/schemas/UPInterfaceType'

ipv4EndpointAddresses:

Type: array

Items:

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

minItems: 1

ipv6EndpointAddresses:

Type: array

Items:

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

minItems: 1

endpointFqdn:

Reference: '#/components/schemas/Fqdn'

networkInstance:

Type: string

UPInterfaceType

anyOf:

- type: string

enum:

- N3

- N6

- N9

- type: string

PcfInfo

Type: object

Properties:

dnnList:

Type: array

Items:

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

minItems: 1

supiRanges:

Type: array

Items:

Reference: '#/components/schemas/SupiRange'

minItems: 1

rxDiamHost:

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

rxDiamRealm:

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

BsfInfo

Type: object

Properties:

dnnList:

Type: array

Items:

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

minItems: 1

ipDomainList:

Type: array

Items:

Type: string

minItems: 1

ipv4AddressRanges:

Type: array

Items:

Reference: '#/components/schemas/Ipv4AddressRange'

minItems: 1

ipv6PrefixRanges:

Type: array

Items:

Reference: '#/components/schemas/Ipv6PrefixRange'

minItems: 1

ChfInfo

Type: object

Properties:

supiRangeList:

Type: array

Items:

Reference: '#/components/schemas/SupiRange'

minItems: 1

gpsiRangeList:

Type: array

Items:

Reference: '#/components/schemas/IdentityRange'

minItems: 1

plmnRangeList:

Type: array

Items:

Reference: '#/components/schemas/PlmnRange'

minItems: 1

Ipv4AddressRange

Type: object

Properties:

start:

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

end:

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

Ipv6PrefixRange

Type: object

Properties:

start:

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

end:

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

DefaultNotificationSubscription

Type: object

Required:

- notificationType

- callbackUri

Properties:

notificationType:

Reference: '#/components/schemas/NotificationType'

callbackUri:

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

n1MessageClass:

Reference: 'TS29518_Namf_Communication.yaml#/components/schemas/N1MessageClass'

n2InformationClass:

Reference: 'TS29518_Namf_Communication.yaml#/components/schemas/N2InformationClass'

NotificationType

anyOf:

- type: string

enum:

- N1_MESSAGES

- N2_INFORMATION

- LOCATION_NOTIFICATION

- DATA_REMOVAL_NOTIFICATION

- DATA_CHANGE_NOTIFICATION

- type: string

TransportProtocol

anyOf:

- type: string

enum:

- TCP

- type: string

NotificationEventType

anyOf:

- type: string

enum:

- NF_REGISTERED

- NF_DEREGISTERED

- NF_PROFILE_CHANGED

- type: string

NotificationData

Type: object

Required:

- event

- nfInstanceUri

allOf:

- anyOf:

- not:

Properties:

event:

Type: string

enum:

- NF_PROFILE_CHANGED

- oneOf:

- required: [ nfProfile ]

- required: [ profileChanges ]

- anyOf:

- not:

Properties:

event:

Type: string

enum:

- NF_REGISTERED

- required: [ nfProfile ]

Properties:

event:

Reference: '#/components/schemas/NotificationEventType'

nfInstanceUri:

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

nfProfile:

allOf:

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

- not:

Required: [ interPlmnFqdn ]

- properties:

nfServices:

Type: array

Items:

allOf:

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

- not:

Required: [ interPlmnFqdn ]

- not:

Required: [ allowedPlmns ]

- not:

Required: [ allowedNfTypes ]

- not:

Required: [ allowedNfDomains ]

- not:

Required: [ allowedNssais ]

profileChanges:

Type: array

Items:

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

minItems: 1

NFStatus

anyOf:

- type: string

enum:

- REGISTERED

- SUSPENDED

- type: string

NFServiceVersion

Type: object

Required:

- apiVersionInUri

- apiFullVersion

Properties:

apiVersionInUri:

Type: string

apiFullVersion:

Type: string

expiry:

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

ServiceName

anyOf:

- type: string

enum:

- nnrf-nfm

- nnrf-disc

- nudm-sdm

- nudm-uecm

- nudm-ueau

- nudm-ee

- nudm-pp

- namf-comm

- namf-evts

- namf-mt

- namf-loc

- nsmf-pdusession

- nsmf-event-exposure

- nausf-auth

- nausf-sorprotection

- nnef-pfdmanagement

- npcf-am-policy-control

- npcf-smpolicycontrol

- npcf-policyauthorization

- npcf-bdtpolicycontrol

- npcf-eventexposure

- npcf-ue-policy-control

- nsmsf-sms

- nnssf-nsselection

- nnssf-nssaiavailability

- nudr-dr

- nlmf-loc

- n5g-eir-eic

- nbsf-management

- nchf-spendinglimitcontrol

- nchf-convergedcharging

- nnwdaf-eventssubscription

- nnwdaf-analyticsinfo

- type: string

N2InterfaceAmfInfo

Type: object

Properties:

ipv4EndpointAddress:

Type: array

Items:

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

minItems: 1

ipv6EndpointAddress:

Type: array

Items:

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

minItems: 1

amfName:

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

NFServiceStatus

anyOf:

- type: string

enum:

- REGISTERED

- SUSPENDED

- type: string

TaiRange

Type: object

Required:

- plmnId

- tacRangeList

Properties:

plmnId:

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

tacRangeList:

Type: array

Items:

Reference: '#/components/schemas/TacRange'

minItems: 1

TacRange

Type: object

Properties:

start:

Type: string

Pattern: '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'

end:

Type: string

Pattern: '^([A-Fa-f0-9]{4}|[A-Fa-f0-9]{6})$'

Pattern:

Type: string

ChfServiceInfo

Type: object

not:

Required: [ primaryChfServiceInstance, secondaryChfServiceInstance ]

Properties:

primaryChfServiceInstance:

Type: string

secondaryChfServiceInstance:

Type: string

PlmnRange

Type: object

Properties:

start:

Type: string

Pattern: '^[0-9]{3}[0-9]{2,3}$'

end:

Type: string

Pattern: '^[0-9]{3}[0-9]{2,3}$'

Pattern:

Type: string

NrfInfo

Type: object

Properties:

servedUdrInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/UdrInfo'

minProperties: 1

servedUdmInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/UdmInfo'

minProperties: 1

servedAusfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/AusfInfo'

minProperties: 1

servedAmfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/AmfInfo'

minProperties: 1

servedSmfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/SmfInfo'

minProperties: 1

servedUpfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/UpfInfo'

minProperties: 1

servedPcfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/PcfInfo'

minProperties: 1

servedBsfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/BsfInfo'

minProperties: 1

servedChfInfo:

Type: object

additionalProperties:

Reference: '#/components/schemas/ChfInfo'

minProperties: 1