3GPP TS 29.122 Monitoring Event API

Monitoring Event API. An OpenAPI 3.0.0 document with 2 path(s), API version 1.4.0, published verbatim by 3GPP in 3GPP TS 29.122 as part of the T8 Northbound (SCEF/NEF Exposure) suite and mirrored in the public 3GPP Forge GitLab repository.

OpenAPI Specification

3gpp-ts29122-monitoringevent.yml Raw ↑
openapi: 3.0.0

info:
  title: 3gpp-monitoring-event
  version: 1.4.0
  description: |
    API for Monitoring Event.  
    © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  
    All rights reserved.

externalDocs:
  description: 3GPP TS 29.122 V19.5.0 T8 reference point for Northbound APIs
  url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.122/'

security:
  - {}
  - oAuth2ClientCredentials: []

servers:
  - url: '{apiRoot}/3gpp-monitoring-event/v1'
    variables:
      apiRoot:
        default: https://example.com
        description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122.

paths:
  /{scsAsId}/subscriptions:
    get:
      summary: Read all or queried active subscriptions for the SCS/AS.
      operationId: FetchAllMonitoringEventSubscriptions
      tags:
        - Monitoring Event Subscriptions
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS
          required: true
          schema:
            type: string
        - name: ip-addrs
          in: query
          description: The IP address(es) of the requested UE(s).
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr'
                minItems: 1
        - name: ip-domain
          in: query
          description: >
            The IPv4 address domain identifier. The attribute may only be provided if IPv4 address
            is included in the ip-addrs query parameter.
          required: false
          schema:
            type: string
        - name: mac-addrs
          in: query
          description: The MAC address(es) of the requested UE(s).
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'
            minItems: 1
      responses:
        '200':
          description: OK (Successful get all or queried active subscriptions for the SCS/AS)
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MonitoringEventSubscription'
                minItems: 0
                description: Monitoring event subscriptions
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '406':
          $ref: 'TS29122_CommonData.yaml#/components/responses/406'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

    post:
      summary: Creates a new subscription resource for monitoring event notification.
      operationId: CreateMonitoringEventSubscription
      tags:
        - Monitoring Event Subscriptions
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS
          required: true
          schema:
            type: string
      requestBody:
        description: Subscription for notification about monitoring event
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MonitoringEventSubscription'
      callbacks:
        notificationDestination:
          '{$request.body#/notificationDestination}':
            post:
              requestBody:  # contents of the callback message
                required: true
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/MonitoringNotification'
              responses:
                '204':
                  description: No Content (successful notification)
                '307':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/307'
                '308':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/308'
                '400':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/400'
                '401':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/401'
                '403':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/403'
                '404':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/404'
                '411':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/411'
                '413':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/413'
                '415':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/415'
                '429':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/429'
                '500':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/500'
                '503':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/503'
                default:
                  $ref: 'TS29122_CommonData.yaml#/components/responses/default'
        UserConsentRevocationNotif:
          '{$request.body#/revocationNotifUri}':
            post:
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/ConsentRevocNotif'
              responses:
                '204':
                  description: No Content (successful notification).
                '307':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/307'
                '308':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/308'
                '400':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/400'
                '401':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/401'
                '403':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/403'
                '404':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/404'
                '411':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/411'
                '413':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/413'
                '415':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/415'
                '429':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/429'
                '500':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/500'
                '503':
                  $ref: 'TS29122_CommonData.yaml#/components/responses/503'
                default:
                  $ref: 'TS29122_CommonData.yaml#/components/responses/default'
      responses:
        '201':
          description: Created (Successful creation of subscription)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringEventSubscription'
          headers:
            Location:
              description: 'Contains the URI of the newly created resource'
              required: true
              schema:
                type: string
        '200':
          description: The operation is successful and immediate report is included.
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/MonitoringEventReport'
                - $ref: '#/components/schemas/MonitoringEventReports'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '411':
          $ref: 'TS29122_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29122_CommonData.yaml#/components/responses/413'
        '415':
          $ref: 'TS29122_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

  /{scsAsId}/subscriptions/{subscriptionId}:
    get:
      summary: Read an active subscriptions for the SCS/AS and the subscription Id.
      operationId: FetchIndMonitoringEventSubscription
      tags:
        - Individual Monitoring Event Subscription
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS
          required: true
          schema:
            type: string
        - name: subscriptionId
          in: path
          description: Identifier of the subscription resource
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK (Successful get the active subscription)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringEventSubscription'
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '406':
          $ref: 'TS29122_CommonData.yaml#/components/responses/406'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

    put:
      summary: Updates/replaces an existing subscription resource.
      operationId: UpdateIndMonitoringEventSubscription
      tags:
        - Individual Monitoring Event Subscription
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS
          required: true
          schema:
            type: string
        - name: subscriptionId
          in: path
          description: Identifier of the subscription resource
          required: true
          schema:
            type: string
      requestBody:
        description: Parameters to update/replace the existing subscription
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MonitoringEventSubscription'
      responses:
        '200':
          description: OK (Successful update of the subscription)
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/MonitoringEventSubscription'
                - $ref: '#/components/schemas/MonitoringEventReports'
        '204':
          description: No Content (Successful update of the subscription)
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '411':
          $ref: 'TS29122_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29122_CommonData.yaml#/components/responses/413'
        '415':
          $ref: 'TS29122_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

    patch:
      summary: Modifies an existing subscription of monitoring event.
      operationId: ModifyIndMonitoringEventSubscription
      tags:
        - Individual Monitoring Event Subscription
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS.
          required: true
          schema:
            type: string
        - name: subscriptionId
          in: path
          description: Identifier of the subscription resource.
          required: true
          schema:
            type: string
      requestBody:
        description: >
          This is used for PATCH request for partial cancellation and/or partial addition of certain
          UE(s) within an active group.
        required: true
        content:
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem'
              minItems: 1
      responses:
        '200':
          description: >
            OK. This status code may be used either:
            Case 1: The Individual Monitoring Event Subscription resource is successfully modified
            and a representation of the updated resource is returned in the response body.
            Case 2: The monitoring event report(s) corresponding to the requested monitoring
            event(s) are returned. This response is applicable only if the "enNB" feature is
            supported and one-time reporting is requested for all the remaining subscribed event(s)
            after modification.
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/MonitoringEventSubscription'
                - $ref: '#/components/schemas/MonitoringEventReports'
        '204':
          description: The resource was modified successfully.
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '411':
          $ref: 'TS29122_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29122_CommonData.yaml#/components/responses/413'
        '415':
          $ref: 'TS29122_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

    delete:
      summary: Deletes an already existing monitoring event subscription.
      operationId: DeleteIndMonitoringEventSubscription
      tags:
        - Individual Monitoring Event Subscription
      parameters:
        - name: scsAsId
          in: path
          description: Identifier of the SCS/AS
          required: true
          schema:
            type: string
        - name: subscriptionId
          in: path
          description: Identifier of the subscription resource
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content (Successful deletion of the existing subscription)
        '200':
          description: OK (Successful deletion of the existing subscription)
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MonitoringEventReport'
                minItems: 1
                description: >
                  The subscription was terminated successfully, the monitoring event report(s)
                  shall be included if received.
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '400':
          $ref: 'TS29122_CommonData.yaml#/components/responses/400'
        '401':
          $ref: 'TS29122_CommonData.yaml#/components/responses/401'
        '403':
          $ref: 'TS29122_CommonData.yaml#/components/responses/403'
        '404':
          $ref: 'TS29122_CommonData.yaml#/components/responses/404'
        '429':
          $ref: 'TS29122_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29122_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29122_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29122_CommonData.yaml#/components/responses/default'

components:
  securitySchemes:
    oAuth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: '{tokenUrl}'
          scopes: {}

  schemas:
    MonitoringEventSubscription:
      description: Represents a subscription to event(s) monitoring.
      type: object
      properties:
        self:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Link'
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        mtcProviderId:
          type: string
          description: Identifies the MTC Service Provider and/or MTC Application.
        appIds:
          type: array
          items:
            type: string
          description: Identifies the Application Identifier(s)
          minItems: 1
        externalId:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalId'
        msisdn:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Msisdn'
        addedExternalIds:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalId'
          minItems: 1
          description: Indicates the added external Identifier(s) within the active group.
        addedMsisdns:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/Msisdn'
          minItems: 1
          description: Indicates the added MSISDN(s) within the active group.
        excludedExternalIds:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalId'
          minItems: 1
          description: Indicates cancellation of the external Identifier(s) within the active group.
        excludedMsisdns:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/Msisdn'
          minItems: 1
          description: Indicates cancellation of the MSISDN(s) within the active group.
        externalGroupId:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId'
        addExtGroupId:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId'
          minItems: 2
        ipv4Addr:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv4Addr'
        ipDomain:
          type: string
        ipv6Addr:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv6Addr'
        dnn:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        notificationDestination:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Link'
        requestTestNotification:
          type: boolean
          description: >
            Set to true by the SCS/AS to request the SCEF to send a test notification
            as defined in clause 5.2.5.3. Set to false by the SCS/AS indicates not request SCEF to
            send a test notification, default false if omitted otherwise.
        websockNotifConfig:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig'
        monitoringType:
          $ref: '#/components/schemas/MonitoringType'
        maximumNumberOfReports:
          type: integer
          minimum: 1
          description: >
            Identifies the maximum number of event reports to be generated by the HSS, MME/SGSN
            as specified in clause 5.6.0 of 3GPP TS 23.682.
        monitorExpireTime:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime'
        repPeriod:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        repTimeWin:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow'
        enrgRepThres:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EnergyInfo'
          minProperties: 1
          description: >
            Contains the reporting thresholds of the Energy consumption information.
            The key of the map shall be set to the value of the energy monitoring type, i.e., either
            UE_ENERGY, UE_SNSSAI_ENERGY, PDU_SESSION_ENERGY or SERVICE_FLOW_ENERGY, to which
            the energy reporting thresholds provided within the map value are related.
            This attribute may contain more than one map element only in case several energy
            monitoring types are subscribed via the monitoringType attribute and the addnMonTypes
            attribute.
            If there is only a single energy monitoring type that is subscribed, then a single map
            element may be provided within this attribute, with its map key set to the value of the
            monitoringType attribute.
            This attribute shall be present only in case threshold-based reporting of the Energy
            consumption information is requested.
        repPeriodThres:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        groupReportGuardTime:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        maximumDetectionTime:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        reachabilityType:
          $ref: '#/components/schemas/ReachabilityType'
        maximumLatency:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        maximumResponseTime:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        suggestedNumberOfDlPackets:
          type: integer
          minimum: 0
          description: >
            If "monitoringType" is "UE_REACHABILITY", this parameter may be included to identify
            the number of packets that the serving gateway shall buffer in case that
            the UE is not reachable.
        idleStatusIndication:
          type: boolean
          description: >
            If "monitoringType" is set to "UE_REACHABILITY" or "AVAILABILITY_AFTER_DDN_FAILURE",
            this parameter may be included to indicate the notification of when a UE, for which PSM
            is enabled, transitions into idle mode. "true"  indicates enabling of notification;
            "false"  indicate no need to notify. Default value is "false" if omitted.
        locationType:
          $ref: '#/components/schemas/LocationType'
        accuracy:
          $ref: '#/components/schemas/Accuracy'
        minimumReportInterval:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        maxRptExpireIntvl:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        samplingInterval:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DurationSec'
        reportingLocEstInd:
          type: boolean
          description: >
            Indicates whether to request the location estimate for event reporting. If
            "monitoringType" is "LOCATION_REPORTING", this parameter may be included to indicate
            whether event reporting requires the location information. If set to true, the location
            estimation information shall be included in event reporting. If set to "false",
            indicates the location estimation information shall not be included in event reporting.
            Default "false" if omitted.
        linearDistance:
          $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LinearDistance'
        locQoS:
          $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LocationQoS'
        svcId:
          $ref: 'TS29515_Ngmlc_Location.yaml#/components/schemas/ServiceIdentity'
        ldrType:
          $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/LdrType'
        velocityRequested:
          $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/VelocityRequested'
        maxAgeOfLocEst:
          $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/AgeOfLocationEstimate'
        locTimeWindow:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/TimeWindow'
        supportedGADShapes:
          type: array
          items:
            $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/SupportedGADShapes'
        codeWord:
          $ref: 'TS29515_Ngmlc_Location.yaml#/components/schemas/CodeWord'
        upLocRepIndAf:
          description: >
            Indicates whether location reporting over user plane is requested or not.
            "true" indicates the location reporting over user plane is requested.
            "false" indicates the location reporting over user plane is not requested.
            Default value is "false" if omitted.
          type: boolean
          default: false
        upLocRepAddrAf:
          $ref: '#/components/schemas/UpLocRepAddrAfRm'
        associationType:
          $ref: '#/components/schemas/AssociationType'
        plmnIndication:
          type: boolean
          description: >
            If "monitoringType" is "ROAMING_STATUS", this parameter may be included to indicate the
            notification of UE's Serving PLMN ID. Value "true" indicates enabling of notification;
            "false" indicates disabling of notification. Default value is "false" if omitted.
        locationArea:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea'
        locationArea5G:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/LocationArea5G'
        dddTraDescriptors:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/DddTrafficDescriptor'
          minItems: 1
        dddStati:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/DlDataDeliveryStatus'
          minItems: 1
        apiNames:
          type: array
          items:
            type: string
          minItems: 1
        monitoringEventReport:
          $ref: '#/components/schemas/MonitoringEventReport'
        snssai:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        tgtNsThreshold:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SACInfo'
        nsRepFormat:
          $ref: '#/components/schemas/SACRepFormat'
        afServiceId:
          type: string
        immediateRep:
          type: boolean
          description: >
            Indicates whether an immediate reporting is requested or not.
            "true" indicate an immediate reporting is requested.
            "false" indicate an immediate reporting is not requested.
            Default value "false" if omitted.
        uavPolicy:
          $ref: '#/components/schemas/UavPolicy'
        sesEstInd:
          type: boolean
          description: >
            Set to true by the SCS/AS so that only UAV's with "PDU session established for DNN(s)
            subject to aerial service" are to be listed in the Event report. Set to false or default
            false if omitted otherwise.
        subType:
          $ref: '#/components/schemas/SubType'
        addnMonTypes:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringType'
        addnMonEventReports:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringEventReport'
        ueIpAddr:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/IpAddr'
        ueMacAddr:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'
        revocationNotifUri:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri'
        reqRangSlRes:
          type: array
          items:
            $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RangingSlResult'
          minItems: 1
        relatedUes:
          type: object
          additionalProperties:
            $ref: 'TS29572_Nlmf_Location.yaml#/components/schemas/RelatedUe'
          minProperties: 1
          description: >
            Contains a list of the related UE(s) for the ranging and sidelink positioning and the
            corresponding information.
            The key of the map shall be a any unique string set to the value.
        flowDescs:
          type: array
          items:
            $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/FlowDescription'
          minItems: 1
          description: Describes the application traffic service data flows.
      required:
        - notificationDestination
        - monitoringType
      anyOf:
        - required: [maximumNumberOfReports]
        - required: [monitorExpireTime]

    MonitoringNotification:
      description: Represents an event monitoring notification.
      type: object
      properties:
        subscription:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Link'
        configResults:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ConfigResult'
          minItems: 1
          description: Each element identifies a notification of grouping configuration result.
        monitoringEventReports:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringEventReport'
          minItems: 1
          description: Monitoring event reports.
        addedExternalIds:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalId'
          minItems: 1
          description: >
            Identifies the added external Identifier(s) within the active group via
            the "externalGroupId" attribute within the MonitoringEventSubscription data type.
        addedMsisdns:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/Msisdn'
          minItems: 1
          description: >
            Identifies the added MSISDN(s) within the active group via the "externalGroupId"
            attribute within the MonitoringEventSubscription data type.
        cancelExternalIds:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalId'
          minItems: 1
          description: >
            Identifies the cancelled external Identifier(s) within the active group via
            the "externalGroupId" attribute within the MonitoringEventSubscription data type.
        cancelMsisdns:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/Msisdn'
          minItems: 1
          description: >
            Identifies the cancelled MSISDN(s) within the active group via

# --- truncated at 32 KB (60 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/3gpp/refs/heads/main/openapi/3gpp-ts29122-monitoringevent.yml