A.3 Nnrf_NFDiscovery API

29.5103GPP5G SystemNetwork function repository servicesRelease 18Stage 3TS

openapi: 3.0.0

info:

version: ‘1.3.0-alpha.2’

title: ‘NRF NFDiscovery Service’

description: |

NRF NFDiscovery Service.

© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).

All rights reserved.

externalDocs:

description: 3GPP TS 29.510 V18.1.0; 5G System; Network Function Repository Services; Stage 3

url: ‘https://www.3gpp.org/ftp/Specs/archive/29_series/29.510/’

servers:

– url: ‘{apiRoot}/nnrf-disc/v1’

variables:

apiRoot:

default: https://example.com

description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501

security:

– {}

– oAuth2ClientCredentials:

– nnrf-disc

– oAuth2ClientCredentials:

– nnrf-disc

– nnrf-disc:nf-instances:read-complete-profile

paths:

/nf-instances:

get:

summary: Search a collection of NF Instances

operationId: SearchNFInstances

tags:

– NF Instances (Store)

parameters:

– name: Accept-Encoding

in: header

description: Accept-Encoding, described in IETF RFC 7231

schema:

type: string

– name: target-nf-type

in: query

description: Type of the target NF

required: true

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

– name: requester-nf-type

in: query

description: Type of the requester NF

required: true

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

– name: preferred-collocated-nf-types

in: query

description: collocated NF types that candidate NFs should preferentially support

schema:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/CollocatedNfType’

minItems: 1

style: form

explode: false

– name: requester-nf-instance-id

in: query

description: NfInstanceId of the requester NF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

– name: service-names

in: query

description: Names of the services offered by the NF

schema:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ServiceName’

minItems: 1

uniqueItems: true

style: form

explode: false

– name: requester-nf-instance-fqdn

in: query

description: FQDN of the requester NF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

– name: target-plmn-list

in: query

description: >

Id of the PLMN of either the target NF, or in SNPN scenario the Credentials Holder

in the PLMN

content:

application/json:

schema:

type: array

items:

$ref: ‘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:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

minItems: 1

– name: target-nf-instance-id

in: query

description: Identity of the NF instance being discovered

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

– name: target-nf-fqdn

in: query

description: FQDN of the NF instance being discovered

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

– name: hnrf-uri

in: query

description: Uri of the home NRF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

– name: snssais

in: query

description: Slice info of the target NF

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Snssai’

minItems: 1

– name: requester-snssais

in: query

description: Slice info of the requester NF

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

minItems: 1

– name: plmn-specific-snssai-list

in: query

description: PLMN specific Slice info of the target NF

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PlmnSnssai’

minItems: 1

– name: requester-plmn-specific-snssai-list

in: query

description: PLMN-specific slice info of the NF issuing the Discovery request

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PlmnSnssai’

minItems: 1

– name: dnn

in: query

description: Dnn supported by the BSF, SMF or UPF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Dnn’

– name: ipv4-index

in: query

description: The IPv4 Index supported by the candidate UPF.

content:

application/json:

schema:

$ref: ‘TS29503_Nudm_SDM.yaml#/components/schemas/IpIndex’

– name: ipv6-index

in: query

description: The IPv6 Index supported by the candidate UPF.

content:

application/json:

schema:

$ref: ‘TS29503_Nudm_SDM.yaml#/components/schemas/IpIndex’

– 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: mbsmf-serving-area

in: query

schema:

type: string

– name: tai

in: query

description: Tracking Area Identity

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Tai’

– name: amf-region-id

in: query

description: AMF Region Identity

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/AmfRegionId’

– name: amf-set-id

in: query

description: AMF Set Identity

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/AmfSetId’

– name: guami

in: query

description: Guami used to search for an appropriate AMF

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Guami’

– name: supi

in: query

description: SUPI of the user

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Supi’

– name: ue-ipv4-address

in: query

description: IPv4 address of the UE

schema:

$ref: ‘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:

$ref: ‘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: preferred-pgw-ind

in: query

description: Indicates combined PGW-C+SMF or standalone SMF are preferred

schema:

type: boolean

– name: pgw

in: query

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

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

– name: pgw-ip

in: query

description: PGW IP Address of a combined PGW-C and SMF

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/IpAddr’

– name: gpsi

in: query

description: GPSI of the user

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’

– name: external-group-identity

in: query

description: external group identifier of the user

schema:

$ref: ‘TS29503_Nudm_SDM.yaml#/components/schemas/ExtGroupId’

– name: internal-group-identity

in: query

description: internal group identifier of the user

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/GroupId’

– name: pfd-data

in: query

description: PFD data

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PfdData’

– name: data-set

in: query

description: data set supported by the NF

schema:

$ref: ‘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:

$ref: ‘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:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Dnai’

minItems: 1

style: form

explode: false

– name: pdu-session-types

in: query

description: list of PDU Session Type required to be supported by the target NF

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PduSessionType’

minItems: 1

style: form

explode: false

– name: event-id-list

in: query

description: >

Analytics event(s) requested to be supported by the Nnwdaf_AnalyticsInfo service

schema:

type: array

items:

$ref: ‘TS29520_Nnwdaf_AnalyticsInfo.yaml#/components/schemas/EventId’

minItems: 1

style: form

explode: false

– name: nwdaf-event-list

in: query

description: >

Analytics event(s) requested to be supported by the Nnwdaf_EventsSubscription service.

schema:

type: array

items:

$ref: ‘TS29520_Nnwdaf_EventsSubscription.yaml#/components/schemas/NwdafEvent’

minItems: 1

style: form

explode: false

– name: supported-features

in: query

description: Features required to be supported by the target NF

schema:

$ref: ‘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:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

– name: preferred-locality

in: query

description: preferred target NF location

schema:

type: string

– name: ext-preferred-locality

in: query

description: >

preferred target NF location

A map (list of key-value pairs) where the key of the map represents the relative

priority, for the requester, of each locality description among the list of locality

descriptions in this query parameter, encoded as "1" (highest priority"), "2", "3", …,

"n" (lowest priority)

content:

application/json:

schema:

type: object

additionalProperties:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/LocalityDescription’

minItems: 1

minProperties: 1

– name: access-type

in: query

description: AccessType supported by the target NF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/AccessType’

– name: limit

in: query

description: Maximum number of NFProfiles to return in the response

required: false

schema:

type: integer

minimum: 1

– name: required-features

in: query

description: Features required to be supported by the target NF

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’

minItems: 1

style: form

explode: false

– name: complex-query

in: query

description: the complex query condition expression

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ComplexQuery’

– name: max-payload-size

in: query

description: Maximum payload size of the response expressed in kilo octets

required: false

schema:

type: integer

maximum: 2000

default: 124

– name: max-payload-size-ext

in: query

description: >

Extended query for maximum payload size of the response expressed in kilo octets

required: false

schema:

type: integer

default: 124

– name: atsss-capability

in: query

description: ATSSS Capability

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/AtsssCapability’

– name: upf-ue-ip-addr-ind

in: query

description: UPF supporting allocating UE IP addresses/prefixes

schema:

type: boolean

– name: client-type

in: query

description: Requested client type served by the NF

content:

application/json:

schema:

$ref: ‘TS29572_Nlmf_Location.yaml#/components/schemas/ExternalClientType’

– name: lmf-id

in: query

description: LMF identification to be discovered

content:

application/json:

schema:

$ref: ‘TS29572_Nlmf_Location.yaml#/components/schemas/LMFIdentification’

– name: an-node-type

in: query

description: Requested AN node type served by the NF

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AnNodeType’

– name: rat-type

in: query

description: Requested RAT type served by the NF

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RatType’

– name: preferred-tai

in: query

description: preferred Tracking Area Identity

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Tai’

– name: preferred-nf-instances

in: query

description: preferred NF Instances

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

minItems: 1

style: form

explode: false

– name: If-None-Match

in: header

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

schema:

type: string

– name: target-snpn

in: query

description: Target SNPN Identity, or the Credentials Holder in the SNPN

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

– name: requester-snpn-list

in: query

description: SNPN ID(s) of the NF instance issuing the Discovery request

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

minItems: 1

– name: af-ee-data

in: query

description: NEF exposured by the AF

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AfEventExposureData’

– name: w-agf-info

in: query

description: UPF collocated with W-AGF

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/WAgfInfo’

– name: tngf-info

in: query

description: UPF collocated with TNGF

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/TngfInfo’

– name: twif-info

in: query

description: UPF collocated with TWIF

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/TwifInfo’

– name: target-nf-set-id

in: query

description: Target NF Set ID

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’

– name: target-nf-service-set-id

in: query

description: Target NF Service Set ID

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfServiceSetId’

– name: nef-id

in: query

description: NEF ID

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NefId’

– name: notification-type

in: query

description: Notification Type

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NotificationType’

– name: n1-msg-class

in: query

description: N1 Message Class

schema:

$ref: ‘TS29518_Namf_Communication.yaml#/components/schemas/N1MessageClass’

– name: n2-info-class

in: query

description: N2 Information Class

schema:

$ref: ‘TS29518_Namf_Communication.yaml#/components/schemas/N2InformationClass’

– name: serving-scope

in: query

description: areas that can be served by the target NF

schema:

type: array

items:

type: string

minItems: 1

style: form

explode: false

– name: imsi

in: query

description: IMSI of the requester UE to search for an appropriate NF (e.g. HSS)

schema:

type: string

pattern: ‘^[0-9]{5,15}$’

– name: ims-private-identity

in: query

description: IMPI of the requester UE to search for a target HSS

schema:

type: string

– name: ims-public-identity

in: query

description: IMS Public Identity of the requester UE to search for a target HSS

schema:

type: string

– name: msisdn

in: query

description: MSISDN of the requester UE to search for a target HSS

schema:

type: string

– name: preferred-api-versions

in: query

description: Preferred API version of the services to be discovered

content:

application/json:

schema:

description: A map (list of key-value pairs) where ServiceName serves as key

type: object

additionalProperties:

type: string

minProperties: 1

– name: v2x-support-ind

in: query

description: PCF supports V2X

schema:

type: boolean

– name: redundant-gtpu

in: query

description: UPF supports redundant gtp-u to be discovered

schema:

type: boolean

– name: redundant-transport

in: query

description: UPF supports redundant transport path to be discovered

schema:

type: boolean

– name: ipups

in: query

description: UPF which is configured for IPUPS functionality to be discovered

schema:

type: boolean

– name: sxa-ind

in: query

description: UPF which is configured to support sxa interface

schema:

type: boolean

– name: scp-domain-list

in: query

description: SCP domains the target SCP or SEPP belongs to

schema:

type: array

items:

type: string

minItems: 1

style: form

explode: false

– name: address-domain

in: query

description: Address domain reachable through the SCP

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

– name: ipv4-addr

in: query

description: IPv4 address reachable through the SCP

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Ipv4Addr’

– name: ipv6-prefix

in: query

description: IPv6 prefix reachable through the SCP

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix’

– name: served-nf-set-id

in: query

description: NF Set ID served by the SCP

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’

– name: remote-plmn-id

in: query

description: Id of the PLMN reachable through the SCP or SEPP

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

– name: remote-snpn-id

in: query

description: Id of the SNPN reachable through the SCP or SEPP

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

– name: data-forwarding

in: query

description: UPF Instance(s) configured for data forwarding are requested

schema:

type: boolean

– name: preferred-full-plmn

in: query

description: NF Instance(s) serving the full PLMN are preferred

schema:

type: boolean

– name: requester-features

in: query

description: >

Features supported by the NF Service Consumer that is invoking

the Nnrf_NFDiscovery service

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’

– name: realm-id

in: query

description: realm-id to search for an appropriate UDSF

schema:

type: string

– name: storage-id

in: query

description: storage-id to search for an appropriate UDSF

schema:

type: string

– name: vsmf-support-ind

in: query

description: V-SMF capability supported by the target NF instance(s)

schema:

type: boolean

– name: ismf-support-ind

in: query

description: I-SMF capability supported by the target NF instance(s)

schema:

type: boolean

– name: nrf-disc-uri

in: query

description: Uri of the NRF holding the NF profile of a target NF Instance

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

– name: preferred-vendor-specific-features

in: query

description: Preferred vendor specific features of the services to be discovered

content:

application/json:

schema:

description: A map (list of key-value pairs) where ServiceName serves as key

type: object

additionalProperties:

description: >

A map (list of key-value pairs) where IANA-assigned SMI Network Management

Private Enterprise Codes serves as key

type: object

additionalProperties:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorSpecificFeature’

minItems: 1

minProperties: 1

minProperties: 1

– name: preferred-vendor-specific-nf-features

in: query

description: Preferred vendor specific features of the network function to be discovered

content:

application/json:

schema:

description: >

A map (list of key-value pairs) where IANA-assigned SMI Network Management Private

Enterprise Codes serves as key

type: object

additionalProperties:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorSpecificFeature’

minItems: 1

minProperties: 1

– name: required-pfcp-features

in: query

description: PFCP features required to be supported by the target UPF

schema:

type: string

– name: home-pub-key-id

in: query

description: >

Indicates the Home Network Public Key ID which shall be able to be served

by the NF instance

schema:

type: integer

– name: prose-support-ind

in: query

description: PCF supports ProSe Capability

schema:

type: boolean

– name: analytics-aggregation-ind

in: query

description: analytics aggregation is supported by NWDAF or not

schema:

type: boolean

– name: serving-nf-set-id

in: query

description: NF Set Id served by target NF

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’

– name: serving-nf-type

in: query

description: NF type served by the target NF

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

– name: ml-analytics-info-list

in: query

description: Lisf of ML Analytics Filter information of Nnwdaf_MLModelProvision service

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/MlAnalyticsInfo’

minItems: 1

– name: analytics-metadata-prov-ind

in: query

description: analytics matadata provisioning is supported by NWDAF or not

schema:

type: boolean

– name: nsacf-capability

in: query

description: the service capability supported by the target NSACF

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NsacfCapability’

– name: mbs-session-id-list

in: query

description: List of MBS Session ID(s)

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/MbsSessionId’

minItems: 1

– name: area-session-id

in: query

description: Area Session ID

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/AreaSessionId’

– name: gmlc-number

in: query

description: The GMLC Number supported by the GMLC

schema:

type: string

pattern: ‘^[0-9]{5,15}$’

– name: upf-n6-ip

in: query

description: N6 IP address of PSA UPF supported by the EASDF

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/IpAddr’

– name: tai-list

in: query

description: Tracking Area Identifiers of the NFs being discovered

content:

application/json:

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Tai’

minItems: 1

– name: preferences-precedence

in: query

description: >

Indicates the precedence of the preference query parameters (from higher to lower)

schema:

type: array

items:

type: string

minItems: 2

style: form

explode: false

– name: support-onboarding-capability

in: query

description: Indicating the support for onboarding.

schema:

type: boolean

default: false

– name: uas-nf-functionality-ind

in: query

description: UAS NF functionality is supported by NEF or not

schema:

type: boolean

– name: v2x-capability

in: query

description: indicates the V2X capability that the target PCF needs to support.

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/V2xCapability’

– name: prose-capability

in: query

description: indicates the ProSe capability that the target PCF needs to support.

content:

application/json:

schema:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ProSeCapability’

– name: shared-data-id

in: query

description: Identifier of shared data stored in the NF being discovered

schema:

$ref: ‘TS29503_Nudm_SDM.yaml#/components/schemas/SharedDataId’

– name: target-hni

in: query

description: Home Network Identifier query.

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

– name: target-nw-resolution

in: query

description: Resolution of the identity of the target PLMN based on the GPSI of the UE

schema:

type: boolean

– name: exclude-nfinst-list

in: query

description: NF Instance IDs to be excluded from the NF Discovery procedure

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

minItems: 1

style: form

explode: false

– name: exclude-nfservinst-list

in: query

description: NF service instance IDs to be excluded from the NF Discovery procedure

content:

application/json:

schema:

type: array

items:

$ref: ‘#/components/schemas/NfServiceInstance’

minItems: 1

– name: exclude-nfserviceset-list

in: query

description: NF Service Set IDs to be excluded from the NF Discovery procedure

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfServiceSetId’

minItems: 1

style: form

explode: false

– name: exclude-nfset-list

in: query

description: NF Set IDs to be excluded from the NF Discovery procedure

schema:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’

minItems: 1

style: form

explode: false

– name: preferred-analytics-delays

in: query

description: Preferred analytics delays supported by the NWDAF to be discovered

content:

application/json:

schema:

description: >

A map (list of key-value pairs) where EventId or NwdafEvent serves as key

type: object

additionalProperties:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DurationSec’

minProperties: 1

– name: complete-profile

in: query

description: request to discover the complete profile of NF instances

schema:

type: boolean

enum:

– true

– name: n32-purposes

in: query

description: N32 purposes to be supported by the SEPP

schema:

type: array

items:

$ref: ‘TS29573_N32_Handshake.yaml#/components/schemas/N32Purpose’

minItems: 1

style: form

explode: false

– name: preferred-features

in: query

description: Preferred features to be supported by the target Network Function.

content:

application/json:

schema:

description: >

A map (list of key-value pairs) where Service Name serves as the key.

type: object

additionalProperties:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’

minProperties: 1

– name: remote-plmn-id-roaming

in: query

description: Id of the remote PLMN served by the target NF service producer

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

responses:

‘200’:

description: Expected response to a valid request

content:

application/json:

schema:

$ref: ‘#/components/schemas/SearchResult’

links:

search:

operationId: RetrieveStoredSearch

parameters:

searchId: $response.body#/searchId

description: >

The ‘searchId’ parameter returned in the response can be used as the

‘searchId’ parameter in the GET request to ‘/searches/{searchId}’

completeSearch:

operationId: RetrieveCompleteSearch

parameters:

searchId: $response.body#/searchId

description: >

The ‘searchId’ parameter returned in the response can be used as the

‘searchId’ parameter in the GET request to ‘/searches/{searchId}/complete’

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

Content-Encoding:

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

‘307’:

description: Temporary Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

‘308’:

description: Permanent Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘401’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/401’

‘403’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/403’

‘404’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/404’

‘406’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/406’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

/searches/{searchId}:

get:

operationId: RetrieveStoredSearch

tags:

– Stored Search (Document)

parameters:

– $ref: ‘#/components/parameters/searchId’

– name: Accept-Encoding

in: header

description: Accept-Encoding, described in IETF RFC 7231

schema:

type: string

responses:

‘200’:

$ref: ‘#/components/responses/200’

‘307’:

description: Temporary Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

‘308’:

description: Permanent Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

/searches/{searchId}/complete:

get:

operationId: RetrieveCompleteSearch

tags:

– Complete Stored Search (Document)

parameters:

– $ref: ‘#/components/parameters/searchId’

– name: Accept-Encoding

in: header

description: Accept-Encoding, described in IETF RFC 7231

schema:

type: string

responses:

‘200’:

$ref: ‘#/components/responses/200’

‘307’:

description: Temporary Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

‘308’:

description: Permanent Redirect

content:

application/json:

schema:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/RedirectResponse’

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

/scp-domain-routing-info:

get:

operationId: SCPDomainRoutingInfoGet

tags:

– SCP Domain Routing Information (Document)

security:

– {}

– oAuth2ClientCredentials:

– nnrf-disc

– oAuth2ClientCredentials:

– nnrf-disc

– nnrf-disc:scp-domain:read

parameters:

– name: local

in: query

description: Indication of local SCP Domain Routing Information

required: false

schema:

type: boolean

default: false

– name: Accept-Encoding

in: header

description: Accept-Encoding, described in IETF RFC 7231

schema:

type: string

responses:

‘200’:

description: Expected response to a valid request

content:

application/json:

schema:

$ref: ‘#/components/schemas/ScpDomainRoutingInformation’

headers:

Content-Encoding:

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

‘307’:

description: Temporary Redirect

headers:

Location:

description: The URI pointing to the resource located on the redirect target NRF

required: true

schema:

type: string

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘401’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/401’

‘403’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/403’

‘404’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/404’

‘406’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/406’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

/scp-domain-routing-info-subs:

post:

summary: Create a new subscription

operationId: ScpDomainRoutingInfoSubscribe

tags:

– SCP Domain Routing Information Subscriptions (Collection)

security:

– {}

– oAuth2ClientCredentials:

– nnrf-disc

– oAuth2ClientCredentials:

– nnrf-disc

– nnrf-disc:scp-domain-subs:write

parameters:

– name: Content-Encoding

in: header

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

– name: Accept-Encoding

in: header

description: Accept-Encoding, described in IETF RFC 7231

schema:

type: string

requestBody:

content:

application/json:

schema:

$ref: ‘#/components/schemas/ScpDomainRoutingInfoSubscription’

required: true

responses:

‘201’:

description: Expected response to a valid request

content:

application/json:

schema:

$ref: ‘#/components/schemas/ScpDomainRoutingInfoSubscription’

headers:

Location:

description: >

Contains the URI of the newly created resource, according to the structure:

{apiRoot}/nnrf-disc/v1/scp-domain-routing-info-subs/{subscriptionID}

required: true

schema:

type: string

Accept-Encoding:

description: Accept-Encoding, described in IETF RFC 7694

schema:

type: string

Content-Encoding:

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘401’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/401’

‘403’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/403’

‘404’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/404’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

callbacks:

onScpDomainRoutingInformationChange:

‘{$request.body#/callbackUri}’:

post:

parameters:

– name: Content-Encoding

in: header

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

requestBody:

description: Notification Payload

content:

application/json:

schema:

$ref: ‘#/components/schemas/ScpDomainRoutingInfoNotification’

responses:

‘204’:

description: Expected response to a successful callback processing

headers:

Accept-Encoding:

description: Accept-Encoding, described in IETF RFC 7694

schema:

type: string

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘401’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/401’

‘403’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/403’

‘404’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/404’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

$ref: ‘TS29571_CommonData.yaml#/components/responses/default’

/scp-domain-routing-info-subs/{subscriptionID}:

delete:

summary: Deletes a subscription

operationId: ScpDomainRoutingInfoUnsubscribe

tags:

– Individual SCP Domain Routing Information Subscription (Document)

security:

– {}

– oAuth2ClientCredentials:

– nnrf-disc

– oAuth2ClientCredentials:

– nnrf-disc

– nnrf-disc:scp-domain-subs:write

parameters:

– name: subscriptionID

in: path

required: true

description: Unique ID of the subscription to remove

schema:

type: string

responses:

‘204’:

description: Expected response to a successful subscription removal

‘400’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/400’

‘401’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/401’

‘403’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/403’

‘404’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/404’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

$ref: ‘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

nnrf-disc:scp-domain:read: Access to read the scp-domain-routing-info resource

nnrf-disc:scp-domain-subs:write: Access to create/delete a scp-domain subscription resource

nnrf-disc:nf-instances:read-complete-profile: >

Access to the Nnrf_NFDiscovery API enabling the discovery of the complete profile

of NF instances

parameters:

searchId:

name: searchId

in: path

description: Id of a stored search

required: true

schema:

type: string

responses:

‘200’:

description: Expected response to a valid request

content:

application/json:

schema:

$ref: ‘#/components/schemas/StoredSearchResult’

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

Content-Encoding:

description: Content-Encoding, described in IETF RFC 7231

schema:

type: string

schemas:

SearchResult:

description: Contains the list of NF Profiles returned in a Discovery response

type: object

required:

– nfInstances

properties:

validityPeriod:

type: integer

nfInstances:

type: array

items:

$ref: ‘#/components/schemas/NFProfile’

completeNfInstances:

type: array

items:

$ref: ‘#/components/schemas/NFProfile’

minItems: 1

searchId:

type: string

numNfInstComplete:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uint32’

preferredSearch:

$ref: ‘#/components/schemas/PreferredSearch’

nrfSupportedFeatures:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’

nfInstanceList:

description: List of matching NF instances. The key of the map is the NF instance ID.

type: object

additionalProperties:

$ref: ‘#/components/schemas/NfInstanceInfo’

minProperties: 1

alteredPriorityInd:

type: boolean

noProfileMatchInfo:

$ref: ‘#/components/schemas/NoProfileMatchInfo’

StoredSearchResult:

description: >

Contains a complete search result (i.e. a number of discovered NF Instances),

stored by NRF as a consequence of a prior search result

type: object

required:

– nfInstances

properties:

nfInstances:

type: array

items:

$ref: ‘#/components/schemas/NFProfile’

completeNfInstances:

type: array

items:

$ref: ‘#/components/schemas/NFProfile’

minItems: 1

NFProfile:

description: Information of an NF Instance discovered by the NRF

type: object

required:

– nfInstanceId

– nfType

– nfStatus

properties:

nfInstanceId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

nfInstanceName:

type: string

nfType:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

nfStatus:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFStatus’

collocatedNfInstances:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/CollocatedNfInstance’

minimum: 1

plmnList:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

minItems: 1

sNssais:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

minItems: 1

perPlmnSnssaiList:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PlmnSnssai’

minItems: 1

nsiList:

type: array

items:

type: string

minItems: 1

fqdn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

interPlmnFqdn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

ipv4Addresses:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Ipv4Addr’

minItems: 1

ipv6Addresses:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Ipv6Addr’

minItems: 1

allowedPlmns:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

minItems: 1

allowedSnpns:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

minItems: 1

allowedNfTypes:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

minItems: 1

allowedNfDomains:

type: array

items:

type: string

minItems: 1

allowedNssais:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

minItems: 1

capacity:

type: integer

minimum: 0

maximum: 65535

load:

type: integer

minimum: 0

maximum: 100

loadTimeStamp:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

locality:

type: string

extLocality:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string serves

as key representing a type of locality

type: object

additionalProperties:

type: string

minProperties: 1

priority:

type: integer

minimum: 0

maximum: 65535

udrInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdrInfo’

udrInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of UdrInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdrInfo’

minProperties: 1

udmInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdmInfo’

udmInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of UdmInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdmInfo’

minProperties: 1

ausfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AusfInfo’

ausfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of AusfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AusfInfo’

minProperties: 1

amfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AmfInfo’

amfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of AmfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AmfInfo’

minProperties: 1

smfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/SmfInfo’

smfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of SmfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/SmfInfo’

minProperties: 1

upfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UpfInfo’

upfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of UpfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UpfInfo’

minProperties: 1

pcfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PcfInfo’

pcfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of PcfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PcfInfo’

minProperties: 1

bsfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/BsfInfo’

bsfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of BsfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/BsfInfo’

minProperties: 1

chfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ChfInfo’

chfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of ChfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ChfInfo’

minProperties: 1

udsfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdsfInfo’

udsfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of UdsfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/UdsfInfo’

minProperties: 1

nwdafInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NwdafInfo’

nwdafInfoList:

type: object

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of NwdafInfo

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NwdafInfo’

minProperties: 1

nefInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NefInfo’

pcscfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of PcscfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PcscfInfo’

minProperties: 1

hssInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of HssInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/HssInfo’

minProperties: 1

customInfo:

type: object

recoveryTime:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

nfServicePersistence:

type: boolean

default: false

nfServices:

deprecated: true

type: array

items:

$ref: ‘#/components/schemas/NFService’

minItems: 1

nfServiceList:

description: >

A map (list of key-value pairs) where serviceInstanceId serves as key of NFService

type: object

additionalProperties:

$ref: ‘#/components/schemas/NFService’

minProperties: 1

defaultNotificationSubscriptions:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/DefaultNotificationSubscription’

lmfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/LmfInfo’

gmlcInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/GmlcInfo’

snpnList:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

minItems: 1

nfSetIdList:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’

minItems: 1

servingScope:

type: array

items:

type: string

minItems: 1

lcHSupportInd:

type: boolean

default: false

olcHSupportInd:

type: boolean

default: false

nfSetRecoveryTimeList:

description: A map (list of key-value pairs) where NfSetId serves as key of DateTime

type: object

additionalProperties:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

minProperties: 1

serviceSetRecoveryTimeList:

description: >

A map (list of key-value pairs) where NfServiceSetId serves as key of DateTime

type: object

additionalProperties:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

minProperties: 1

scpDomains:

type: array

items:

type: string

minItems: 1

scpInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ScpInfo’

seppInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/SeppInfo’

vendorId:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorId’

supportedVendorSpecificFeatures:

description: >

The key of the map is the IANA-assigned SMI Network Management Private Enterprise Codes

type: object

additionalProperties:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorSpecificFeature’

minItems: 1

minProperties: 1

aanfInfoList:

type: object

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of AanfInfo

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/AanfInfo’

minProperties: 1

mfafInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/MfafInfo’

easdfInfoList:

type: object

description: >

A map(list of key-value pairs) where a (unique) valid JSON string

serves as key of EasdfInfo

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/EasdfInfo’

minProperties: 1

dccfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/DccfInfo’

nsacfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of NsacfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NsacfInfo’

minProperties: 1

mbSmfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of MbSmfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/MbSmfInfo’

minProperties: 1

tsctsfInfoList:

type: object

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of TsctsfInfo

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/TsctsfInfo’

minProperties: 1

mbUpfInfoList:

description: >

A map (list of key-value pairs) where a (unique) valid JSON string

serves as key of MbUpfInfo

type: object

additionalProperties:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/MbUpfInfo’

minProperties: 1

trustAfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/TrustAfInfo’

nssaafInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NssaafInfo’

hniList:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

minItems: 1

iwmscInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/IwmscInfo’

mnpfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/MnpfInfo’

smsfInfo:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/SmsfInfo’

NFService:

description: >

Information of a given NF Service Instance; it is part of the NFProfile

of an NF Instance discovered by the NRF

type: object

required:

– serviceInstanceId

– serviceName

– versions

– scheme

– nfServiceStatus

properties:

serviceInstanceId:

type: string

serviceName:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/ServiceName’

versions:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFServiceVersion’

minItems: 1

scheme:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/UriScheme’

nfServiceStatus:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFServiceStatus’

fqdn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

interPlmnFqdn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Fqdn’

ipEndPoints:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/IpEndPoint’

minItems: 1

apiPrefix:

type: string

defaultNotificationSubscriptions:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/DefaultNotificationSubscription’

minItems: 1

allowedPlmns:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnId’

minItems: 1

allowedSnpns:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/PlmnIdNid’

minItems: 1

allowedNfTypes:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType’

minItems: 1

allowedNfDomains:

type: array

items:

type: string

minItems: 1

allowedNssais:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

minItems: 1

capacity:

type: integer

minimum: 0

maximum: 65535

load:

type: integer

minimum: 0

maximum: 100

loadTimeStamp:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

priority:

type: integer

minimum: 0

maximum: 65535

recoveryTime:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

supportedFeatures:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’

nfServiceSetIdList:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfServiceSetId’

minItems: 1

sNssais:

type: array

items:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExtSnssai’

minItems: 1

perPlmnSnssaiList:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/PlmnSnssai’

minItems: 1

vendorId:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorId’

supportedVendorSpecificFeatures:

description: >

The key of the map is the IANA-assigned SMI Network Management Private Enterprise Codes

type: object

additionalProperties:

type: array

items:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/VendorSpecificFeature’

minItems: 1

minProperties: 1

oauth2Required:

type: boolean

allowedOperationsPerNfType:

description: A map (list of key-value pairs) where NF Type serves as key

type: object

additionalProperties:

type: array

items:

type: string

minItems: 1

minProperties: 1

allowedOperationsPerNfInstance:

description: A map (list of key-value pairs) where NF Instance Id serves as key

type: object

additionalProperties:

type: array

items:

type: string

minItems: 1

minProperties: 1

allowedOperationsPerNfInstanceOverrides:

type: boolean

default: false

PreferredSearch:

description: >

Contains information on whether the returned NFProfiles match the preferred query parameters

type: object

properties:

preferredTaiMatchInd:

type: boolean

default: false

preferredFullPlmnMatchInd:

type: boolean

default: false

preferredApiVersionsMatchInd:

type: boolean

otherApiVersionsInd:

type: boolean

preferredLocalityMatchInd:

type: boolean

default: false

otherLocalityInd:

type: boolean

default: false

preferredVendorSpecificFeaturesInd:

type: boolean

default: false

preferredCollocatedNfTypeInd:

type: boolean

default: false

preferredPgwMatchInd:

type: boolean

preferredAnalyticsDelaysInd:

type: boolean

preferredFeaturesMatchInd:

type: boolean

noPreferredFeaturesInd:

type: boolean

NfInstanceInfo:

description: Contains information on an NF profile matching a discovery request

type: object

properties:

nrfDiscApiUri:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

preferredSearch:

$ref: ‘#/components/schemas/PreferredSearch’

nrfAlteredPriorities:

description: >

The key of the map is the JSON Pointer of the priority IE in the NFProfile data type

that is altered by the NRF

type: object

additionalProperties:

type: integer

minimum: 0

maximum: 65535

minProperties: 1

ScpDomainRoutingInformation:

description: SCP Domain Routing Information

type: object

required:

– scpDomainList

properties:

scpDomainList:

description: |

This IE shall contain a map of SCP domain interconnection information, where

the key of the map is a SCP domain. The value of each entry shall be the

interconnectivity information of the the SCP domain indicated by the key.

An empty map indicates that there is no SCP domain currently registered in

the NRF.

type: object

additionalProperties:

$ref: ‘#/components/schemas/ScpDomainConnectivity’

ScpDomainConnectivity:

description: SCP Domain Connectivity Information

type: object

required:

– connectedScpDomainList

properties:

connectedScpDomainList:

type: array

items:

type: string

ScpDomainRoutingInfoSubscription:

description: SCP Domain Routing Information Subscription

type: object

required:

– callbackUri

properties:

callbackUri:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

validityTime:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/DateTime’

reqInstanceId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

localInd:

type: boolean

default: false

ScpDomainRoutingInfoNotification:

description: SCP Domain Routing Information Notification

type: object

required:

– routingInfo

properties:

routingInfo:

$ref: ‘#/components/schemas/ScpDomainRoutingInformation’

localInd:

type: boolean

default: false

NfServiceInstance:

description: NF service instance

type: object

oneOf:

– required: [ nfInstanceId ]

– required: [ nfServiceSetId ]

properties:

serviceInstanceId:

type: string

nfInstanceId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’

nfServiceSetId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfServiceSetId’

NoProfileMatchInfo:

description: Provides the reason for not finding NF matching the search criteria

type: object

required:

– reason

properties:

reason:

$ref: ‘#/components/schemas/NoProfileMatchReason’

queryParamCombinationList:

type: array

items:

$ref: ‘#/components/schemas/QueryParamCombination’

minItems: 1

QueryParamCombination:

description: Contains a list of Query Parameters

type: object

required:

– queryParams

properties:

queryParams:

type: array

items:

$ref: ‘#/components/schemas/QueryParameter’

minItems: 1

QueryParameter:

description: Contains the name and value of a query parameter

type: object

required:

– name

– value

properties:

name:

type: string

value:

type: string

NoProfileMatchReason:

description: No Profile Match Reason

anyOf:

– type: string

enum:

– REQUESTER_PLMN_NOT_ALLOWED

– TARGET_NF_SUSPENDED

– TARGET_NF_UNDISCOVERABLE

– QUERY_PARAMS_COMBINATION_NO_MATCH

– UNSPECIFIED

– type: string