Nnrf_NFDiscovery

The Network Repository Function authorizes an NF client to perform the discovery operation using the Nnrf_NFDiscovery service to detect an NF.

OpenAPI

OpenAPI Version: 3.0.0

info

Version: '1.0.0'

Title: 'NRF NFDiscovery Service'

Description: 'NRF NFDiscovery Service'

servers

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

Variables:

API Root:

Default: https://example.com

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

security

- {}

- oAuth2ClientCredentials:

- nnrf-disc

paths

/nf-instances

get:

Summary: Search a collection of NF Instances

Operation ID: SearchNFInstances

Tags:

- NF Instances (Store)

Parameters:

- name: target-nf-type

In: query

Description: Type of the target NF

Required/Optional: true

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType'

- name: requester-nf-type

In: query

Description: Type of the requester NF

Required/Optional: true

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType'

- name: service-names

In: query

Description: Name of the service offered by the NF

Schema:

Type: array

items:

Type: string

minItems: 1

style: form

explode: false

- name: requester-nf-instance-fqdn

In: query

Description: FQDN of the requester NF

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/Fqdn'

- name: target-plmn-list

In: query

Description: Id of the PLMN where the target NF is located

Content:

Application/JSON:

Schema:

Type: array

items:

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

minItems: 1

- name: requester-plmn-list

In: query

Description: Id of the PLMN where the NF issuing the Discovery request is located

Content:

Application/JSON:

Schema:

Type: array

items:

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

minItems: 1

- name: target-nf-instance-id

In: query

Description: Identity of the NF instance being discovered

Schema:

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

- name: target-nf-fqdn

In: query

Description: FQDN of the NF instance being discovered

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/Fqdn'

- name: hnrf-uri

In: query

Description: Uri of the home NRF

Schema:

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

- name: snssais

In: query

Description: Slice info of the target NF

Content:

Application/JSON:

Schema:

Type: array

items:

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

minItems: 1

- name: dnn

In: query

Description: Dnn supported by the BSF, SMF or UPF

Schema:

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

- name: nsi-list

In: query

Description: NSI IDs that are served by the services being discovered

Schema:

Type: array

items:

Type: string

minItems: 1

style: form

explode: false

- name: smf-serving-area

In: query

Schema:

Type: string

- name: tai

In: query

Description: Tracking Area Identity

Content:

Application/JSON:

Schema:

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

- name: amf-region-id

In: query

Description: AMF Region Identity

Schema:

Type: string

- name: amf-set-id

In: query

Description: AMF Set Identity

Schema:

Type: string

- name: guami

In: query

Description: Guami used to search for an appropriate AMF

Schema:

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

- name: supi

In: query

Description: SUPI of the user

Schema:

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

- name: ue-ipv4-address

In: query

Description: IPv4 address of the UE

Schema:

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

- name: ip-domain

In: query

Description: IP domain of the UE, which supported by BSF

Schema:

Type: string

- name: ue-ipv6-prefix

In: query

Description: IPv6 prefix of the UE

Schema:

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

- name: pgw-ind

In: query

Description: Combined PGW-C and SMF or a standalone SMF

Schema:

Type: boolean

- name: pgw

In: query

Description: PGW FQDN of a combined PGW-C and SMF

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/Fqdn'

- name: gpsi

In: query

Description: GPSI of the user

Schema:

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

- name: external-group-identity

In: query

Description: external group identifier of the user

Schema:

Type: string

- name: data-set

In: query

Description: data set supported by the NF

Schema:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/DataSetId'

- name: routing-indicator

In: query

Description: routing indicator in SUCI

Schema:

Type: string

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

- name: group-id-list

In: query

Description: Group IDs of the NFs being discovered

Schema:

Type: array

items:

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

minItems: 1

style: form

explode: false

- name: dnai-list

In: query

Description: Data network access identifiers of the NFs being discovered

Schema:

Type: array

items:

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

minItems: 1

style: form

explode: false

- name: supported-features

In: query

Description: Features required to be supported by the target NF

Schema:

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

- name: upf-iwk-eps-ind

In: query

Description: UPF supporting interworking with EPS or not

Schema:

Type: boolean

- name: chf-supported-plmn

In: query

Description: PLMN ID supported by a CHF

Content:

Application/JSON:

Schema:

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

- name: preferred-locality

In: query

Description: preferred target NF location

Schema:

Type: string

- name: access-type

In: query

Description: AccessType supported by the target NF

Schema:

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

- name: If-None-Match

In: header

Description: Validator for conditional requests, as described in IETF RFC 7232, 3.2

Schema:

Type: string

Responses:

'200' Expected response to a valid request

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/SearchResult'

Headers:

Cache-Control:

Description: Cache-Control containing max-age, described in IETF RFC 7234, 5.2

Schema:

Type: string

ETag:

Description: Entity Tag containing a strong validator, described in IETF RFC 7232, 2.3

Schema:

Type: string

'307' Temporary Redirect

'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-disc: Access to the Nnrf_NFDiscovery API

schemas

SearchResult

Type: object

Required:

- nfInstances

Properties:

validityPeriod:

Type: integer

nfInstances:

Type: array

Items:

Reference: '#/components/schemas/NFProfile'

NFProfile

Type: object

Required:

- nfInstanceId

- nfType

- nfStatus

Properties:

nfInstanceId:

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

nfType:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType'

nfStatus:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFStatus'

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: 'TS29510_Nnrf_NFManagement.yaml#/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

capacity:

Type: integer

Minimum: 0

Maximum: 65535

load:

Type: integer

Minimum: 0

Maximum: 100

locality:

Type: string

priority:

Type: integer

Minimum: 0

Maximum: 65535

udrInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdrInfo'

udmInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdmInfo'

ausfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/AusfInfo'

amfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/AmfInfo'

smfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/SmfInfo'

upfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/UpfInfo'

pcfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/PcfInfo'

bsfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/BsfInfo'

chfInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/ChfInfo'

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: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/ServiceName'

versions:

Type: array

Items:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFServiceVersion'

minItems: 1

scheme:

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

nfServiceStatus:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFServiceStatus'

fqdn:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/Fqdn'

ipEndPoints:

Type: array

Items:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/IpEndPoint'

minItems: 1

apiPrefix:

Type: string

defaultNotificationSubscriptions:

Type: array

Items:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/DefaultNotificationSubscription'

minItems: 1

capacity:

Type: integer

Minimum: 0

Maximum: 65535

load:

Type: integer

Minimum: 0

Maximum: 100

priority:

Type: integer

Minimum: 0

Maximum: 65535

recoveryTime:

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

chfServiceInfo:

Reference: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/ChfServiceInfo'

supportedFeatures:

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

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