3GPP TS 28.541 5 Gc Nrm API

OAS 3.0.1 specification of the 5GC NRM. An OpenAPI 3.0.1 data-model-only document (no paths; it defines the schemas/Network Resource Model consumed by the Provisioning and Performance management services), API version 19.7.0, published verbatim by 3GPP in 3GPP TS 28.541 as part of the Management Services (SA5 OAM) suite and mirrored in the public 3GPP Forge GitLab repository.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/3gpp-ts28541-5gcnrm"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

3gpp-ts28541-5gcnrm.yml Raw ↑
openapi: 3.0.1
info:
  title: 3GPP 5GC NRM
  version: 19.7.0
  description: OAS 3.0.1 specification of the 5GC NRM © 2026, 3GPP Organizational Partners (ARIB, ATIS,
    CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
externalDocs:
  description: 3GPP TS 28.541; 5G NRM, 5GC NRM
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/
paths: {}
components:
  schemas:
    AmfIdentifier:
      type: object
      description: AmfIdentifier comprise of amfRegionId, amfSetId and amfPointer
      properties:
        aMFRegionId:
          $ref: '#/components/schemas/AmfRegionId'
        aMFSetId:
          $ref: '#/components/schemas/AmfSetId'
        amfPointer:
          $ref: '#/components/schemas/AmfPointer'
    AmfRegionId:
      type: integer
      description: AmfRegionId is defined in TS 23.003
      maximum: 255
    AmfSetId:
      type: string
      description: AmfSetId is defined in TS 23.003
      maximum: 1023
    AmfPointer:
      type: integer
      description: AmfPointer is defined in TS 23.003
      maximum: 63
    IpEndPoint:
      type: object
      properties:
        ipv4Address:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Ipv4Addr
        ipv6Address:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Ipv6Addr
        ipv6Prefix:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Ipv6Prefix
        transport:
          $ref: TS28623_GenericNrm.yaml#/components/schemas/TransportProtocol
        port:
          type: integer
    NFProfileList:
      type: array
      uniqueItems: true
      description: List of NF profile
      items:
        $ref: '#/components/schemas/ManagedNFProfile'
    NFService:
      type: object
      description: NF Service is defined in TS 29.510
      properties:
        serviceInstanceId:
          type: string
        serviceName:
          type: string
        versions:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
        schema:
          type: string
        nfServiceStatus:
          type: string
          enum:
          - REGISTERED
          - SUSPENDED
          - UNDISCOVERABLE
          - CANARY_RELEASE
        fqdn:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Fqdn
        interPlmnFqdn:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Fqdn
        ipEndPoints:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/IpEndPoint'
        apiPrefix:
          type: string
        allowedPLMNs:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
        allowedSnpns:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/SnpnId'
        allowedNfTypes:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/NFType'
        allowedNfDomains:
          type: array
          uniqueItems: true
          items:
            type: string
        allowedNSSAIs:
          type: array
          uniqueItems: true
          items:
            $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
        priority:
          type: integer
          minimum: 0
          maximum: 65535
        capacity:
          type: integer
        recoveryTime:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTime
        vendorId:
          $ref: '#/components/schemas/VendorId'
        allowedOperationsPerNfType:
          type: string
        allowedOperationsPerNfInstance:
          type: string
        allowedOperationsPerNfInstanceOverrides:
          type: boolean
        sNssais:
          $ref: TS29571_CommonData.yaml#/components/schemas/ExtSnssai
        oauth2Required:
          type: boolean
        sharedServiceDataId:
          type: string
        defaultNotificationSubscriptions:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/DefaultNotificationSubscription'
        callbackUriPrefixList:
          type: array
          items:
            $ref: '#/components/schemas/CallbackUriPrefixItem'
        supportedFeatures:
          type: string
        supportedVendorSpecificFeatures:
          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: '#/components/schemas/VendorSpecificFeature'
            minItems: 1
          minProperties: 1
        allowedScopesRuleSet:
          description: A map (list of key-value pairs) where a valid JSON pointer Id serves as key
          type: object
          additionalProperties:
            $ref: '#/components/schemas/RuleSet'
          minProperties: 1
        nfServiceSetIdList:
          description: This attribute represents a list of NF Service Set ID.
          type: array
          items:
            type: string
        perPlmnSnssaiList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/PlmnSnssai'
        load:
          type: integer
          minimum: 0
          maximum: 100
        loadTimeStamp:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTime
        canaryRelease:
          type: boolean
          default: false
        exclusiveCanaryReleaseSelection:
          type: boolean
          default: false
        shutdownTime:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTime
        canaryPrecedenceOverPreferred:
          type: boolean
          default: false
        perPlmnOauth2ReqList:
          $ref: '#/components/schemas/PlmnOauth2'
    PlmnOauth2:
      description: Oauth2.0 required indication for a given PLMN ID
      type: object
      properties:
        oauth2RequiredPlmnIdList:
          type: array
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
          minItems: 1
        oauth2NotRequiredPlmnIdList:
          type: array
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
          minItems: 1
    VendorSpecificFeature:
      type: object
      properties:
        featureName:
          type: string
          readOnly: true
        featureVersion:
          type: string
          readOnly: true
    NFStatus:
      type: string
      description: any of enumerated value
      enum:
      - REGISTERED
      - SUSPENDED
    CNSIIdList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/CNSIId'
    CNSIId:
      type: string
      description: CNSI Id is defined in TS 29.531, only for Core Network.
    EnergySavingControl:
      type: string
      description: any of enumerated value
      enum:
      - TO_BE_ENERGYSAVING
      - TO_BE_NOT_ENERGYSAVING
    EnergySavingState:
      type: string
      readOnly: true
      description: any of enumerated value
      enum:
      - IS_NOT_ENERGYSAVING
      - IS_ENERGYSAVING
    TACList:
      type: array
      uniqueItems: true
      items:
        $ref: TS28623_GenericNrm.yaml#/components/schemas/Tac
    VendorId:
      type: string
      description: Vendor ID of the NF Service instance (Private Enterprise Number assigned by IANA)
      pattern: ^[0-9]{6}$
    AusfInfo:
      type: object
      properties:
        nFSrvGroupId:
          type: string
          readOnly: true
        supiRanges:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/SupiRange'
          minItems: 1
        routingIndicators:
          type: array
          uniqueItems: true
          items:
            type: string
            pattern: ^[0-9]{1,4}$
          minItems: 1
        suciInfos:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/SuciInfo'
          minItems: 1
    SupportedDataSet:
      type: string
      description: any of enumerated value
      enum:
      - SUBSCRIPTION
      - POLICY
      - EXPOSURE
      - APPLICATION
      - A_PFD
      - A_AFTI
      - A_IPTV
      - A_BDT
      - A_SPD
      - A_EASD
      - A_AMI
      - P_UE
      - P_SCD
      - P_BDT
      - P_PLMNUE
      - P_NSSCD
      - P_PDTQ
      - P_MBSCD
      - P_GROUP
    NotificationType:
      type: string
      readOnly: true
      enum:
      - N1_MESSAGES
      - N2_INFORMATION
      - LOCATION_NOTIFICATION
      - DATA_REMOVAL_NOTIFICATION
      - DATA_CHANGE_NOTIFICATION
      - LOCATION_UPDATE_NOTIFICATION
      - NSSAA_REAUTH_NOTIFICATION
      - NSSAA_REVOC_NOTIFICATION
      - MATCH_INFO_NOTIFICATION
      - DATA_RESTORATION_NOTIFICATION
      - TSCTS_NOTIFICATION
      - LCS_KEY_DELIVERY_NOTIFICATION
      - UUAA_MM_AUTH_NOTIFICATION
      - DC_SESSION_EVENT_NOTIFICATION
    DefaultNotificationSubscription:
      type: object
      properties:
        notificationType:
          $ref: '#/components/schemas/NotificationType'
        callbackURI:
          type: string
          readOnly: true
        interPlmnCallbackUri:
          $ref: TS28623_ComDefs.yaml#/components/schemas/UriRo
        n1MessageClass:
          type: boolean
          readOnly: true
        n2InformationClass:
          type: boolean
          readOnly: true
        versions:
          type: string
          readOnly: true
        binding:
          type: string
          readOnly: true
        acceptedEncoding:
          type: string
          readOnly: true
        supportedFeatures:
          type: string
          readOnly: true
        serviceInfoList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/DefSubServiceInfo'
          minItems: 1
        callbackUriPrefix:
          $ref: TS28623_ComDefs.yaml#/components/schemas/UriRo
    CallbackUriPrefixItem:
      type: object
      properties:
        notificationTypes:
          type: array
          items:
            $ref: '#/components/schemas/NotificationType'
        callbackUriPrefix:
          $ref: TS28623_ComDefs.yaml#/components/schemas/UriRo
    DefSubServiceInfo:
      type: object
      properties:
        versions:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
          readOnly: true
        supportedFeatures:
          type: string
          readOnly: true
    ManagedNFProfile:
      type: object
      properties:
        hniList:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/Fqdn
          minItems: 1
        interPlmnFqdn:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Fqdn
        nfInstanceID:
          type: string
          readOnly: true
        nfType:
          $ref: '#/components/schemas/NFType'
        collocatedNfInstances:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/CollocatedNfInstance'
        nfInstanceName:
          type: string
        nfStatus:
          $ref: '#/components/schemas/NFStatus'
        plmnList:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
        sNssais:
          type: array
          uniqueItems: true
          items:
            $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
        fqdn:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Fqdn
        heartbeatTimer:
          type: integer
        authzInfo:
          type: string
        hostAddr:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/Host
        allowedPLMNs:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
        sNPNList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/SnpnId'
        perPlmnSnssaiList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/PlmnSnssai'
        allowedSNPNs:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/SnpnId'
        allowedNfTypes:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/NFType'
        allowedNfDomains:
          type: array
          uniqueItems: true
          items:
            type: string
        allowedNSSAIs:
          type: array
          uniqueItems: true
          items:
            $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
        allowedRuleSet:
          description: 'A map (list of key-value pairs) where a valid JSON pointer Id serves as key

            '
          type: object
          additionalProperties:
            $ref: '#/components/schemas/RuleSet'
          minProperties: 1
        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
        capacity:
          type: integer
        load:
          type: integer
          minimum: 0
          maximum: 100
        loadTimeStamp:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTime
        nfSetIdList:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
        servingScope:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
        lcHSupportInd:
          type: boolean
          readOnly: true
        olcHSupportInd:
          type: boolean
          readOnly: true
        nfSetRecoveryTimeList:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/DateTimeRo
          minItems: 1
        scpDomains:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
        recoveryTime:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTimeRo
        nfServicePersistence:
          type: boolean
          readOnly: true
        nfProfileChangesSupportInd:
          type: boolean
        nfProfilePartialUpdateChangesSupportInd:
          type: boolean
          default: false
          writeOnly: true
        nfProfileChangesInd:
          type: boolean
          default: false
          readOnly: true
        defaultNotificationSubscriptions:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/DefaultNotificationSubscription'
          minItems: 1
        serviceSetRecoveryTimeList:
          type: array
          uniqueItems: true
          items:
            $ref: TS28623_ComDefs.yaml#/components/schemas/DateTimeRo
          minItems: 1
        vendorId:
          $ref: '#/components/schemas/VendorId'
        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
        supportedVendorSpecificFeatures:
          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: '#/components/schemas/VendorSpecificFeature'
            minItems: 1
          minProperties: 1
        canaryRelease:
          type: boolean
          default: false
        exclusiveCanaryReleaseSelection:
          type: boolean
          default: false
        sharedProfileDataId:
          type: string
        shutdownTime:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DateTime
        supportedRcfs:
          type: array
          uniqueItems: true
          items:
            type: string
          minItems: 1
        canaryPrecedenceOverPreferred:
          type: boolean
          default: false
        selectionConditions:
          description: "conditions under which an NF Instance shall be selected by an NF Service Consumer.\
            \ type: array items:\n  $ref: '#/components/schemas/SelectionConditions'\nminItems: 1\n"
    SelectionConditions:
      description: 'It contains the set of conditions that shall be evaluated to determine whether a consumer
        shall select a given producer. The producer shall only be selected if the evaluation of the conditions
        is <true>. The set of conditions can be represented by a single  ConditionItem or by a ConditionGroup,
        where the latter contains a (recursive) list of conditions joined by the "and" or "or" logical
        relationships.

        '
      oneOf:
      - $ref: '#/components/schemas/ConditionItem'
      - $ref: '#/components/schemas/ConditionGroup'
    ConditionGroup:
      description: 'List (array) of conditions (joined by the "and" or "or" logical relationship), under
        which an NF Instance with an NFStatus or NFServiceStatus value set to, "CANARY_RELEASE", or with
        a "canaryRelease" attribute set to true, shall be selected by an NF Service Consumer.

        '
      type: object
      oneOf:
      - required:
        - and
      - required:
        - or
      properties:
        and:
          type: array
          items:
            $ref: '#/components/schemas/SelectionConditions'
          minItems: 1
        or:
          type: array
          items:
            $ref: '#/components/schemas/SelectionConditions'
          minItems: 1
    ConditionItem:
      description: 'A ConditionItem consists of a number of attributes representing individual conditions
        (e.g. a SUPI range, or a TAI list). If several attributes/conditions are present, the evaluation
        of the ConditionItem is <true> if all attributes/conditions are evaluated as <true> (i.e., it
        follows the AND logical relationship).

        '
      type: object
      allOf:
      - not:
          required:
          - and
      - not:
          required:
          - or
      properties:
        consumerNfTypes:
          type: array
          items:
            $ref: '#/components/schemas/NFType'
          minItems: 1
        serviceFeature:
          type: integer
          minimum: 1
        vsServiceFeature:
          type: integer
          minimum: 1
        supiRangeList:
          type: array
          items:
            $ref: '#/components/schemas/SupiRange'
          minItems: 1
        gpsiRangeList:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        impuRangeList:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        impiRangeList:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        peiList:
          type: array
          items:
            $ref: TS29571_CommonData.yaml#/components/schemas/Pei
          minItems: 1
        taiRangeList:
          type: array
          items:
            $ref: '#/components/schemas/TaiRange'
          minItems: 1
        dnnList:
          type: array
          items:
            $ref: TS29571_CommonData.yaml#/components/schemas/Dnn
          minItems: 1
    SEPPType:
      type: string
      readOnly: true
      description: any of enumerated value
      enum:
      - CSEPP
      - PSEPP
    SupportedFunc:
      type: object
      properties:
        function:
          type: string
        policy:
          type: string
    SupportedFuncList:
      type: array
      items:
        $ref: '#/components/schemas/SupportedFunc'
      minItems: 1
    CommModelType:
      type: string
      description: any of enumerated value
      enum:
      - DIRECT_COMMUNICATION_WO_NRF
      - DIRECT_COMMUNICATION_WITH_NRF
      - INDIRECT_COMMUNICATION_WO_DEDICATED_DISCOVERY
      - INDIRECT_COMMUNICATION_WITH_DEDICATED_DISCOVERY
    CommModel:
      type: object
      properties:
        groupId:
          type: integer
        commModelType:
          $ref: '#/components/schemas/CommModelType'
        targetNFServiceList:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DnList
        commModelConfiguration:
          type: string
    CommModelList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/CommModel'
      minItems: 1
    CapabilityList:
      type: array
      items:
        type: string
      minItems: 1
    FiveQiDscpMapping:
      type: object
      properties:
        fiveQIValues:
          type: array
          uniqueItems: true
          items:
            type: integer
        dscp:
          type: integer
    NetworkSliceInfo:
      type: object
      properties:
        sNSSAI:
          $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
        cNSIId:
          $ref: '#/components/schemas/CNSIId'
        networkSliceRef:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DnList
    NetworkSliceInfoList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/NetworkSliceInfo'
      minItems: 1
    PacketErrorRate:
      type: object
      properties:
        scalar:
          type: integer
        exponent:
          type: integer
    GtpUPathDelayThresholdsType:
      type: object
      properties:
        n3AveragePacketDelayThreshold:
          type: integer
        n3MinPacketDelayThreshold:
          type: integer
        n3MaxPacketDelayThreshold:
          type: integer
        n9AveragePacketDelayThreshold:
          type: integer
        n9MinPacketDelayThreshold:
          type: integer
        n9MaxPacketDelayThreshold:
          type: integer
    QFPacketDelayThresholdsType:
      type: object
      properties:
        thresholdDl:
          type: integer
        thresholdUl:
          type: integer
        thresholdRtt:
          type: integer
    QosData:
      type: object
      properties:
        qosId:
          type: string
        fiveQIValue:
          type: integer
        maxbrUl:
          $ref: TS29571_CommonData.yaml#/components/schemas/BitRateRm
        maxbrDl:
          $ref: TS29571_CommonData.yaml#/components/schemas/BitRateRm
        gbrUl:
          $ref: TS29571_CommonData.yaml#/components/schemas/BitRateRm
        gbrDl:
          $ref: TS29571_CommonData.yaml#/components/schemas/BitRateRm
        arp:
          $ref: TS29571_CommonData.yaml#/components/schemas/Arp
        qosNotificationControl:
          type: boolean
          default: false
        reflectiveQos:
          type: boolean
          default: false
        sharingKeyDl:
          type: string
        sharingKeyUl:
          type: string
        maxPacketLossRateDl:
          $ref: TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm
        maxPacketLossRateUl:
          $ref: TS29571_CommonData.yaml#/components/schemas/PacketLossRateRm
        extMaxDataBurstVol:
          $ref: TS29571_CommonData.yaml#/components/schemas/ExtMaxDataBurstVolRm
    QosDataList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/QosData'
    SteeringMode:
      type: object
      properties:
        steerModeValue:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteerModeValue
        active:
          $ref: TS29571_CommonData.yaml#/components/schemas/AccessType
        standby:
          $ref: TS29571_CommonData.yaml#/components/schemas/AccessTypeRm
        threeGLoad:
          $ref: TS29571_CommonData.yaml#/components/schemas/Uinteger
        prioAcc:
          $ref: TS29571_CommonData.yaml#/components/schemas/AccessType
    TrafficControlData:
      type: object
      properties:
        tcId:
          type: string
        flowStatus:
          $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowStatus
        redirectInfo:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation
        addRedirectInfo:
          type: array
          uniqueItems: true
          items:
            $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/RedirectInformation
          minItems: 1
        muteNotif:
          type: boolean
          default: false
        trafficSteeringPolIdDl:
          type: string
          nullable: true
        trafficSteeringPolIdUl:
          type: string
          nullable: true
        routeToLocs:
          type: array
          uniqueItems: true
          items:
            $ref: TS29571_CommonData.yaml#/components/schemas/RouteToLocation
          minItems: 1
        traffCorreInd:
          type: boolean
          default: false
        upPathChgEvent:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/UpPathChgEvent
        steerFun:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/SteeringFunctionality
        steerModeDl:
          $ref: '#/components/schemas/SteeringMode'
        steerModeUl:
          $ref: '#/components/schemas/SteeringMode'
        mulAccCtrl:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/MulticastAccessControl
        snssaiList:
          $ref: '#/components/schemas/SnssaiList'
    TrafficControlDataList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/TrafficControlData'
    ServiceFeatureMap:
      type: object
      properties:
        featureList:
          type: string
        serviceName:
          type: string
    PccRule:
      type: object
      properties:
        pccRuleId:
          type: string
          description: Univocally identifies the PCC rule within a PDU session.
        flowInfoList:
          type: array
          uniqueItems: true
          items:
            $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/FlowInformation
        applicationId:
          type: string
        appDescriptor:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ApplicationDescriptor
        contentVersion:
          $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/ContentVersion
        precedence:
          $ref: TS29571_CommonData.yaml#/components/schemas/Uinteger
        afSigProtocol:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/AfSigProtocol
        isAppRelocatable:
          type: boolean
          default: false
        isUeAddrPreserved:
          type: boolean
          default: false
        qosData:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/QosDataList'
        altQosParams:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/QosDataList'
        trafficControlData:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/TrafficControlDataList'
        conditionData:
          $ref: TS29512_Npcf_SMPolicyControl.yaml#/components/schemas/ConditionData
        tscaiInputDl:
          $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer
        tscaiInputUl:
          $ref: TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TscaiInputContainer
        easRedisIndRequired:
          type: boolean
          default: false
        tscaiTimeDom:
          type: integer
        batNotificationCapable:
          type: boolean
          default: false
        uENotifEnabled:
          type: boolean
          default: false
        packFiltAllPrec:
          type: integer
        nscSupportedFeats:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/ServiceFeatureMap'
    SnssaiInfo:
      type: object
      properties:
        plmnInfo:
          $ref: TS28541_NrNrm.yaml#/components/schemas/PlmnInfo
        administrativeState:
          $ref: TS28623_ComDefs.yaml#/components/schemas/AdministrativeState
    NsacfInfoSnssai:
      type: object
      properties:
        SnssaiInfo:
          $ref: '#/components/schemas/SnssaiInfo'
        isSubjectToNsac:
          type: boolean
          default: false
        maxNumberofUEs:
          type: integer
        eACMode:
          type: string
          readOnly: true
          enum:
          - INACTIVE
          - ACTIVE
          default: INACTIVE
        activeEacThreshold:
          type: integer
          default: 0
        deactiveEacThreshold:
          type: integer
          default: 100
        numberofUEs:
          type: integer
          readOnly: true
        uEIdList:
          type: array
          uniqueItems: true
          items:
            type: string
          readOnly: true
        maxNumberofPDUSessions:
          type: integer
    NRTACRange:
      type: object
      properties:
        nRTACstart:
          type: string
        nRTACend:
          type: string
        nRTACpattern:
          type: string
    TaiRange:
      type: object
      properties:
        plmnId:
          $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
        nRTACRangelist:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/NRTACRange'
          minItems: 1
    GUAMInfo:
      type: object
      properties:
        pLMNId:
          $ref: TS28623_ComDefs.yaml#/components/schemas/PlmnId
        aMFIdentifier:
          type: integer
    SupportedBMOList:
      type: array
      uniqueItems: true
      items:
        type: string
    ECSAddrConfigInfo:
      type: array
      uniqueItems: true
      items:
        type: string
      minItems: 1
    DnnSmfInfoItem:
      type: object
      properties:
        dnn:
          type: string
        dnaiList:
          type: array
          uniqueItems: true
          items:
            $ref: TS29571_CommonData.yaml#/components/schemas/Dnai
          minItems: 1
    SatelliteId:
      type: string
      pattern: ^[0-9]{5}$
    dnaiSatelliteMapping:
      type: object
      properties:
        dnaiList:
          type: array
          uniqueItems: true
          items:
            $ref: TS29571_CommonData.yaml#/components/schemas/Dnai
          minItems: 1
        geoSatelliteId:
          $ref: '#/components/schemas/SatelliteId'
    SnssaiSmfInfoItem:
      type: object
      properties:
        sNSSAI:
          $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
        dnnSmfInfoList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/DnnSmfInfoItem'
          minItems: 1
    5GCNfConnEcmInfoList:
      type: array
      uniqueItems: true
      items:
        $ref: '#/components/schemas/5GCNfConnEcmInfo'
      minItems: 1
    5GCNfConnEcmInfo:
      type: object
      description: Store the 5GC NF connection information
      properties:
        5GCNFType:
          type: string
          readOnly: true
          enum:
          - PCF
          - NEF
          - SCEF
        5GCNFIpAddress:
          type: string
          readOnly: true
        5GCNFRef:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DnRo
    UPFConnectionInfo:
      type: object
      properties:
        uPFIpAddress:
          $ref: TS28623_ComDefs.yaml#/components/schemas/HostRo
        uPFRef:
          $ref: TS28623_ComDefs.yaml#/components/schemas/DnRo
    SnssaiList:
      type: array
      uniqueItems: true
      items:
        $ref: TS28541_NrNrm.yaml#/components/schemas/Snssai
    SnpnId:
      type: object
      properties:
        mcc:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Mcc
        mnc:
          $ref: TS28623_ComDefs.yaml#/components/schemas/Mnc
        nid:
          type: string
    TaiList:
      type: array
      uniqueItems: true
      items:
        $ref: TS28623_GenericNrm.yaml#/components/schemas/Tai
    SupiRange:
      type: object
      properties:
        start:
          type: string
        end:
          type: string
        pattern:
          type: string
    IdentityRange:
      type: object
      p

# --- truncated at 32 KB (232 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/3gpp/refs/heads/main/openapi/3gpp-ts28541-5gcnrm.yml