openapi: 3.0.0

info:
  version: '-'
  title: Unified Data Repository Service API file for Application Data
  description: |
    The API version is defined in 3GPP TS 29.504  
    © 2023, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  
    All rights reserved.

externalDocs:
  description: >
    3GPP TS 29.519 V18.2.0; 5G System; Usage of the Unified Data Repository Service for Policy Data,
    Application Data and Structured Data for Exposure.
  url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.519/'

paths:
  /application-data/pfds:
    get:
      summary: Retrieve PFDs for application identifier(s)
      operationId: ReadPFDData
      tags:
        - PFD Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:pfds:read
      parameters:
        - name: appId
          in: query
          description: >
            Contains the information of the application identifier(s) for the querying PFD
            Data resource. If none appId is included in the URI, it applies to all application
            identifier(s) for the querying PFD Data resource.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationId'
            minItems: 1
        - name: supp-feat
          in: query
          description: Supported Features
          required: false
          schema:
             $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: A representation of PFDs for request applications is returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PfdDataForAppExt'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/pfds/{appId}:
    get:
      summary: Retrieve the corresponding PFDs of the specified application identifier
      operationId: ReadIndividualPFDData
      tags:
        - Individual PFD Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:pfds:read
      parameters:
        - name: appId
          in: path
          description: >
            Indicate the application identifier for the request pfd(s). It shall apply the
            format of Data type ApplicationId.
          required: true
          schema:
            type: string
        - name: supp-feat
          in: query
          description: Supported Features
          required: false
          schema:
             $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: >
            A representation of PFDs for the request application identified by the application
            identifier is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PfdDataForAppExt'
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete the corresponding PFDs of the specified application identifier
      operationId: DeleteIndividualPFDData
      tags:
        - Individual PFD Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:pfds:modify
      parameters:
        - name: appId
          in: path
          description: >
            Indicate the application identifier for the request pfd(s). It shall apply the
            format of Data type ApplicationId.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: >
            Successful case. The Individual PFD Data resource related to the application
            identifier was deleted.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    put:
      summary: Create or update the corresponding PFDs for the specified application identifier
      operationId: CreateOrReplaceIndividualPFDData
      tags:
        - Individual PFD Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:pfds:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PfdDataForAppExt'
      parameters:
        - name: appId
          in: path
          description: >
            Indicate the application identifier for the request pfd(s). It shall apply the format
            of Data type ApplicationId.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual PFD Data resource related to the application-identifier
            is confirmed and a representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PfdDataForAppExt'
          headers:
            Location:
              description: >
                'Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/pfds/{appId}'
              required: true
              schema:
                type: string
        '200':
          description: >
            Successful case. The upgrade of an Individual PFD Data resource related to the
            application identifier is confirmed and a representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PfdDataForAppExt'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/influenceData:
    get:
      summary: Retrieve Traffic Influence Data
      operationId: ReadInfluenceData
      tags:
        - Influence Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:read
      parameters:
        - name: influence-Ids
          in: query
          description: Each element identifies a service.
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: dnns
          in: query
          description: Each element identifies a DNN.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
            minItems: 1
        - name: snssais
          in: query
          description: Each element identifies a slice.
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
                minItems: 1
        - name: internal-Group-Ids
          in: query
          description: Each element identifies a group of users. 
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: internal-group-ids-Add
          in: query
          description: Each element identifies an internal Group. 
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: subscriber-categories
          in: query
          description: >
            Each element identifies a subscriber category. 
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: supis
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
            minItems: 1
        - name: supp-feat
          in: query
          required: false
          description: Supported Features
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: The Traffic Influence Data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TrafficInfluData'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/influenceData/{influenceId}:
    put:
      summary: Create or update an individual Influence Data resource
      operationId: CreateOrReplaceIndividualInfluenceData
      tags:
        - Individual Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrafficInfluData'
      parameters:
        - name: influenceId
          in: path
          description: >
            The Identifier of an Individual Influence Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual Traffic Influence Data resource is confirmed
            and a representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluData'
          headers:
            Location:
              description: >
                'Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/influenceData/{influenceId}'
              required: true
              schema:
                type: string
        '200':
          description: >
            The update of an Individual Traffic Influence Data resource is confirmed and a
            response body containing Traffic Influence Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    patch:
      summary: Modify part of the properties of an individual Influence Data resource
      operationId: UpdateIndividualInfluenceData
      tags:
        - Individual Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:modify
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/TrafficInfluDataPatch'
      parameters:
        - name: influenceId
          in: path
          description: >
            The Identifier of an Individual Influence Data to be updated. It shall apply
            the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >
            The update of an Individual Traffic Influence Data resource is confirmed and
            a response body containing Traffic Influence Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluData'
        '204':
          description: No content
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual Influence Data resource
      operationId: DeleteIndividualInfluenceData
      tags:
        - Individual Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:modify
      parameters:
        - name: influenceId
          in: path
          description: >
            The Identifier of an Individual Influence Data to be deleted. It shall apply
            the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The Individual Influence Data was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/influenceData/subs-to-notify:
    post:
      summary: Create a new Individual Influence Data Subscription resource
      operationId: CreateIndividualInfluenceDataSubscription
      tags:
        - Influence Data Subscriptions (Collection)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:subscriptions:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrafficInfluSub'
      responses:
        '201':
          description: The subscription was created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluSub'
          headers:
            Location:
              description: 'Contains the URI of the newly created resource'
              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'
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
      callbacks:
        trafficInfluenceDataChangeNotification:
          '{$request.body#/notificationUri}':
            post:
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      type: array
                      items: 
                        oneOf:
                          - $ref: '#/components/schemas/TrafficInfluData'
                          - $ref: '#/components/schemas/TrafficInfluDataNotif'
                      minItems: 1
              responses:
                '204':
                  description: No Content, Notification was successful
                '400':
                  $ref: 'TS29571_CommonData.yaml#/components/responses/400'
                '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'
                '502':
                  $ref: 'TS29571_CommonData.yaml#/components/responses/502'
                '503':
                  $ref: 'TS29571_CommonData.yaml#/components/responses/503'
                default:
                  $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    get:
      summary: Read Influence Data Subscriptions
      operationId: ReadInfluenceDataSubscriptions
      tags:
        - Influence Data Subscriptions (Collection)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:subscriptions:read
      parameters:
        - name: dnn
          in: query
          description: Identifies a DNN.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        - name: snssai
          in: query
          description: Identifies a slice.
          required: false
          content:
            application/json:
              schema:
                $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        - name: internal-Group-Id
          in: query
          description: Identifies a group of users.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        - name: supi
          in: query
          description: Identifies a user.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        - name: internal-group-ids
          in: query
          description: >
            Each element identifies an internal group. 
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: subscriber-categories
          in: query
          description: >
            Each element identifies a subscriber category. 
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: roam-ue-plmn-ids
          in: query
          description: >
            Each element identifies a PLMN. 
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
            minItems: 1
      responses:
        '200':
          description: >
            The subscription information as request in the request URI query parameter(s)
            are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TrafficInfluSub'
                minItems: 0
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/influenceData/subs-to-notify/{subscriptionId}:
    get:
      summary: Get an existing individual Influence Data Subscription resource
      operationId: ReadIndividualInfluenceDataSubscription
      tags:
        - Individual Influence Data Subscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:subscriptions:read
      parameters:
        - name: subscriptionId
          in: path
          description: >
            String identifying a subscription to the Individual Influence Data Subscription
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The subscription information is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluSub'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    put:
      summary: Modify an existing individual Influence Data Subscription resource
      operationId: ReplaceIndividualInfluenceDataSubscription
      tags:
        - Individual Influence Data Subscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:subscriptions:modify
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrafficInfluSub'
      parameters:
        - name: subscriptionId
          in: path
          description: >
            String identifying a subscription to the Individual Influence Data Subscription.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The subscription was updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrafficInfluSub'
        '204':
          description: No content
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual Influence Data Subscription resource
      operationId: DeleteIndividualInfluenceDataSubscription
      tags:
        - Individual Influence Data Subscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:influence-data:subscriptions:modify
      parameters:
        - name: subscriptionId
          in: path
          description: >
            String identifying a subscription to the Individual Influence Data Subscription.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The subscription was terminated successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/bdtPolicyData:
    get:
      summary: Retrieve applied BDT Policy Data
      operationId: ReadBdtPolicyData
      tags:
        - BdtPolicy Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:bdt-policy-data:read
      parameters:
        - name: bdt-policy-ids
          in: query
          description: Each element identifies a service.
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: internal-group-ids
          in: query
          description: Each element identifies a group of users.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: supis
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
            minItems: 1
      responses:
        '200':
          description: The applied BDT policy Data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BdtPolicyData'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/bdtPolicyData/{bdtPolicyId}:
    put:
      summary: Create an individual applied BDT Policy Data resource
      operationId: CreateIndividualAppliedBdtPolicyData
      tags:
        - Individual Applied BDT Policy Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:bdt-policy-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BdtPolicyData'
      parameters:
        - name: bdtPolicyId
          in: path
          description: >
            The Identifier of an Individual Applied BDT Policy Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual Applied BDT Policy Data resource is confirmed and a
            representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BdtPolicyData'
          headers:
            Location:
              description: >
                Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/bdtPolicyData/{bdtPolicyId}
              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'
        '411':
          $ref: 'TS29571_CommonData.yaml#/components/responses/411'
        '413':
          $ref: 'TS29571_CommonData.yaml#/components/responses/413'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    patch:
      summary: Modify part of the properties of an individual Applied BDT Policy Data resource
      operationId: UpdateIndividualAppliedBdtPolicyData
      tags:
        - Individual Applied BDT Policy Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:bdt-policy-data:modify
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/BdtPolicyDataPatch'
      parameters:
        - name: bdtPolicyId
          in: path
          description: >
            The Identifier of an Individual Applied BDT Policy Data to be updated. It shall
            apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >
            The update of an Individual Applied BDT Policy Data resource is confirmed and
            a response body containing Applied BDT Policy Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BdtPolicyData'
        '204':
          description: No content
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual Applied BDT Policy Data resource
      operationId: DeleteIndividualAppliedBdtPolicyData
      tags:
        - Individual Applied BDT Policy Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:bdt-policy-data:modify
      parameters:
        - name: bdtPolicyId
          in: path
          description: >
            The Identifier of an Individual Applied BDT Policy Data to be deleted.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The Individual Applied BDT Policy Data was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/iptvConfigData:
    get:
      summary: Retrieve IPTV configuration Data
      operationId: ReadIPTVCongifurationData
      tags:
        - IPTV Configuration Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:iptv-config-data:read
      parameters:
        - name: config-ids
          in: query
          description: Each element identifies a configuration.
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: dnns
          in: query
          description: Each element identifies a DNN.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
            minItems: 1
        - name: snssais
          in: query
          description: Each element identifies a slice.
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
                minItems: 1
        - name: supis
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
            minItems: 1
        - name: inter-group-ids
          in: query
          description: Each element identifies a group of users.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
      responses:
        '200':
          description: The IPTV configuration data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IptvConfigData'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/iptvConfigData/{configurationId}:
    put:
      summary: Create or update an individual IPTV configuration resource
      operationId: CreateOrReplaceIndividualIPTVConfigurationData
      tags:
        - Individual IPTV Configuration Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:iptv-config-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IptvConfigData'
      parameters:
        - name: configurationId
          in: path
          description: >
            The Identifier of an Individual IPTV Configuration Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual IPTV Configuration Data resource is confirmed and a
            representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IptvConfigData'
          headers:
            Location:
              description: 'Contains the URI of the newly created resource'
              required: true
              schema:
                type: string
        '200':
          description: The update of an Individual IPTV configuration resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IptvConfigData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    patch:
      summary: Partial update an individual IPTV configuration resource
      operationId: PartialReplaceIndividualIPTVConfigurationData
      tags:
        - Individual IPTV Configuration Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:iptv-config-data:modify
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: 'TS29522_IPTVConfiguration.yaml#/components/schemas/IptvConfigDataPatch'
      parameters:
        - name: configurationId
          in: path
          description: >
            The Identifier of an Individual IPTV Configuration Data to be updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The update of an Individual IPTV configuration resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IptvConfigData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual IPTV configuration resource
      operationId: DeleteIndividualIPTVConfigurationData
      tags:
        - Individual IPTV Configuration Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:iptv-config-data:modify
      parameters:
        - name: configurationId
          in: path
          description: >
            The Identifier of an Individual IPTV Configuration to be deleted. It shall
            apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The resource was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/serviceParamData:
    get:
      summary: Retrieve Service Parameter Data
      operationId: ReadServiceParameterData
      tags:
        - Service Parameter Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:service-param-data:read
      parameters:
        - name: service-param-ids
          in: query
          description: Each element identifies a service.
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: dnns
          in: query
          description: Each element identifies a DNN.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
            minItems: 1
        - name: snssais
          in: query
          description: Each element identifies a slice.
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
                minItems: 1
        - name: internal-group-ids
          in: query
          description: Each element identifies a group of users.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: supis
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
            minItems: 1
        - name: ue-ipv4s
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr'
            minItems: 1
        - name: ue-ipv6s
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr'
            minItems: 1
        - name: ue-macs
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'
            minItems: 1
        - name: any-ue
          in: query
          description: Indicates whether the request is for any UE.
          required: false
          schema:
            type: boolean
        - name: supp-feat
          in: query
          description: Supported Features
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: The Service Parameter Data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceParameterData'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/serviceParamData/{serviceParamId}:
    put:
      summary: Create or update an individual Service Parameter Data resource
      operationId: CreateOrReplaceServiceParameterData
      tags:
        - Individual Service Parameter Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:service-param-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceParameterData'
      parameters:
        - name: serviceParamId
          in: path
          description: >
            The Identifier of an Individual Service Parameter Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual Service Parameter Data resource is confirmed
            and a representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceParameterData'
          headers:
            Location:
              description: >
                'Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/serviceParamData/{serviceParamId}'
              required: true
              schema:
                type: string
        '200':
          description: >
            The update of an Individual Service Parameter Data resource is confirmed and
            a response body containing Service Parameter Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceParameterData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    patch:
      summary: Modify part of the properties of an individual Service Parameter Data resource
      operationId: UpdateIndividualServiceParameterData
      tags:
        - Individual Service Parameter Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:service-parameter-data:modify
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/ServiceParameterDataPatch'
      parameters:
        - name: serviceParamId
          in: path
          description: >
            The Identifier of an Individual Service Parameter Data to be updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >
            The update of an Individual Service Parameter Data resource is confirmed
            and a response body containing Service Parameter Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceParameterData'
        '204':
          description: No content
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual Service Parameter Data resource
      operationId: DeleteIndividualServiceParameterData
      tags:
        - Individual Service Parameter Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:service-parameter-data:modify
      parameters:
        - name: serviceParamId
          in: path
          description: >
            The Identifier of an Individual Service Parameter Data to be deleted.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The Individual Service Parameter Data was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/am-influence-data:
    get:
      summary: Retrieve AM Influence Data
      operationId: ReadAmInfluenceData
      tags:
        - AM Influence Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:am-influence-data:read
      parameters:
        - name: am-influence-ids
          in: query
          description: Each element identifies a service.
          required: false
          schema:
            type: array
            items:
              type: string
            minItems: 1
        - name: dnns
          in: query
          description: Each element identifies a DNN.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
            minItems: 1
        - name: snssais
          in: query
          description: Each element identifies a slice.
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
                minItems: 1
        - name: dnn-snssai-infos
          in: query
          description: Each element identifies a combination of (DNN, S-NSSAI).
          required: false
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29522_AMInfluence.yaml#/components/schemas/DnnSnssaiInformation'
                minItems: 1
        - name: internal-group-ids
          in: query
          description: Each element identifies a group of users.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
            minItems: 1
        - name: supis
          in: query
          description: Each element identifies the user.
          required: false
          schema:
            type: array
            items:
              $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
            minItems: 1
        - name: any-ue
          in: query
          description: Indicates whether the request is for any UE.
          required: false
          schema:
            type: boolean
        - name: supp-feat
          in: query
          required: false
          description: Supported Features
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: The AM Influence Data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AmInfluData'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/am-influence-data/{amInfluenceId}:
    put:
      summary: Create or update an individual AM Influence Data resource
      operationId: CreateOrReplaceIndividualAmInfluenceData
      tags:
        - Individual AM Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:am-influence-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AmInfluData'
      parameters:
        - name: amInfluenceId
          in: path
          description: >
            The Identifier of an Individual AM Influence Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual AM Influence Data resource is confirmed and
            a representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AmInfluData'
          headers:
            Location:
              description: >
                'Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/am-influence-data/{amInfluenceId}'
              required: true
              schema:
                type: string
        '200':
          description: >
            The update of an Individual AM Influence Data resource is confirmed and a response
            body containing AM Influence Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AmInfluData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    patch:
      summary: Modify part of the properties of an individual AM Influence Data resource
      operationId: UpdateIndividualAmInfluenceData
      tags:
        - Individual AM Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:am-influence-data:modify
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/AmInfluDataPatch'
      parameters:
        - name: amInfluenceId
          in: path
          description: >
            The Identifier of an Individual AM Influence Data to be updated. It shall
            apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >
            The update of an Individual AM Influence Data resource is confirmed and a
            response body containing AM Influence Data shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AmInfluData'
        '204':
          description: No content
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual AM Influence Data resource
      operationId: DeleteIndividualAmInfluenceData
      tags:
        - Individual AM Influence Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:am-influence-data:modify
      parameters:
        - name: amInfluenceId
          in: path
          description: >
            The Identifier of an Individual AM Influence Data to be deleted. It shall
            apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The Individual AM Influence Data was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/subs-to-notify:
    post:
      summary: Create a subscription to receive notification of application data changes
      operationId: CreateIndividualApplicationDataSubscription
      tags:
        - ApplicationDataSubscriptions (Collection)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:subs-to-notify:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationDataSubs'
      responses:
        '201':
          description: >
            Upon success, a response body containing a representation of each
            Individual subscription resource shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationDataSubs'
          headers:
            Location:
              description: 'Contains the URI of the newly created resource'
              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'
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
      callbacks:
        applicationDataChangeNotif:
          '{$request.body#/notificationUri}':
            post:
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      type: array
                      items:
                        $ref: '#/components/schemas/ApplicationDataChangeNotif'
                      minItems: 1
              responses:
                '204':
                  description: No Content, Notification was successful
                '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'
                '502':
                  $ref: 'TS29571_CommonData.yaml#/components/responses/502'
                '503':
                  $ref: 'TS29571_CommonData.yaml#/components/responses/503'
                default:
                  $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    get:
      summary: Read Application Data change Subscriptions
      operationId: ReadApplicationDataChangeSubscriptions
      tags:
        - ApplicationDataSubscriptions (Collection)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:subs-to-notify:read
      parameters:
        - name: data-filter
          in: query
          description: The data filter for the query.
          required: false
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataFilter'
      responses:
        '200':
          description: >
            The subscription information as request in the request URI query parameter(s)
            are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApplicationDataSubs'
                minItems: 0
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/subs-to-notify/{subsId}:
    parameters:
     - name: subsId
       in: path
       required: true
       schema:
         type: string
    put:
      summary: Modify a subscription to receive notification of application data changes
      operationId: ReplaceIndividualApplicationDataSubscription
      tags:
        - IndividualApplicationDataSubscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:subs-to-notify:modify
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationDataSubs'
      responses:
        '200':
          description: The individual subscription resource was updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationDataSubs'
        '204':
          description: >
            The individual subscription resource was updated successfully and no
            additional content is to be sent in the response message.
        '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'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete the individual Application Data subscription
      operationId: DeleteIndividualApplicationDataSubscription
      tags:
        - IndividualApplicationDataSubscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:subs-to-notify:modify
      responses:
        '204':
          description: Upon success, an empty response body shall be returned.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    get:
      summary: Get an existing individual Application Data Subscription resource
      operationId: ReadIndividualApplicationDataSubscription
      tags:
        - IndividualApplicationDataSubscription (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:subs-to-notify:read
      parameters:
        - name: subsId
          in: path
          description: >
            String identifying a subscription to the Individual Application Data Subscription
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The subscription information is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationDataSubs'
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

  /application-data/eas-deploy-data:
    get:
      summary: Retrieve EAS Deployment Information Data
      operationId: ReadEasDeployData
      tags:
        - EAS Deployment Data (Store)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:eas-deploy-data:read
      parameters:
        - name: dnn
          in: query
          description: Identifies a DNN.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        - name: snssai
          in: query
          description: Identifies an S-NSSAI.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        - name: internal-group-id
          in: query
          description: Identifies a group of users.
          required: false
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        - name: appId
          in: query
          description: Identifies an application.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: The EAS Deployment Data stored in the UDR are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: 'TS29591_Nnef_EASDeployment.yaml#/components/schemas/EasDeployInfoData'
                minItems: 1
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
  /application-data/eas-deploy-data/{easDeployInfoId}:
    get:
      summary: Retrieve an individual EAS Deployment Data resource
      operationId: ReadIndividualEasDeployData
      tags:
        - Individual EAS Deployment Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:eas-deploy-data:read
      parameters:
        - name: easDeployInfoId
          description: >
            String identifying an Individual EAS Deployment Information Data resource.
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >
            The EAS Deployment Data stored in the UDR for an Individual EAS Deployment
            Information Data resource is returned.
          content:
            application/json:
              schema:
                $ref: 'TS29591_Nnef_EASDeployment.yaml#/components/schemas/EasDeployInfoData'
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    put:
      summary: Create or update an individual EAS Deployment Data resource
      operationId: CreateOrReplaceIndividualEasDeployData
      tags:
        - Individual EAS Deployment Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:eas-deploy-data:create
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: 'TS29591_Nnef_EASDeployment.yaml#/components/schemas/EasDeployInfoData'
      parameters:
        - name: easDeployInfoId
          in: path
          description: >
            The Identifier of an Individual EAS Deployment Data to be created or updated.
            It shall apply the format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: >
            The creation of an Individual EAS Deployment Data resource is confirmed and a 
            representation of that resource is returned.
          content:
            application/json:
              schema:
                $ref: 'TS29591_Nnef_EASDeployment.yaml#/components/schemas/EasDeployInfoData'
          headers:
            Location:
              description: >
                Contains the URI of the newly created resource, according to the structure:
                {apiRoot}/nudr-dr/<apiVersion>/application-data/eas-deploy-data/{easDeployInfoId}
              required: true
              schema:
                type: string
        '200':
          description: >
            The update of an Individual EAS Deployment Data resource is confirmed and a response
            body containing EAS Deployment Data shall be returned.
          content:
            application/json:
              schema:
                $ref: 'TS29591_Nnef_EASDeployment.yaml#/components/schemas/EasDeployInfoData'
        '204':
          description: No content
        '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'
        '414':
          $ref: 'TS29571_CommonData.yaml#/components/responses/414'
        '415':
          $ref: 'TS29571_CommonData.yaml#/components/responses/415'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '502':
          $ref: 'TS29571_CommonData.yaml#/components/responses/502'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'
    delete:
      summary: Delete an individual EAS Deployment Data resource
      operationId: DeleteIndividualEasDeployData
      tags:
        - Individual EasDeployment Data (Document)
      security:
        - {}
        - oAuth2ClientCredentials:
          - nudr-dr
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
        - oAuth2ClientCredentials:
          - nudr-dr
          - nudr-dr:application-data
          - nudr-dr:application-data:eas-deploy-data:modify
      parameters:
        - name: easDeployInfoId
          in: path
          description: >
            The Identifier of an Individual EAS Deployment Data to be updated. It shall apply the
            format of Data type string.
          required: true
          schema:
            type: string
      responses:
        '204':
          description: The Individual Influence Data was deleted successfully.
        '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'
        '429':
          $ref: 'TS29571_CommonData.yaml#/components/responses/429'
        '500':
          $ref: 'TS29571_CommonData.yaml#/components/responses/500'
        '503':
          $ref: 'TS29571_CommonData.yaml#/components/responses/503'
        default:
          $ref: 'TS29571_CommonData.yaml#/components/responses/default'

components:

  schemas:

    TrafficInfluData:
      description: Represents the Traffic Influence Data.
      type: object
      properties:
        upPathChgNotifCorreId:
          type: string
          description: >
            Contains the Notification Correlation Id allocated by the NEF for the UP
            path change notification.
        appReloInd:
          type: boolean
          description: >
            Identifies whether an application can be relocated once a location of the
            application has been selected.
        afAppId:
          type: string
          description: Identifies an application.
        dnn:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        ethTrafficFilters:
          type: array
          items:
            $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription'
          minItems: 1
          description: >
            Identifies Ethernet packet filters. Either "trafficFilters" or
            "ethTrafficFilters" shall be included if applicable.
        snssai:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        interGroupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        interGroupIdList:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
          minItems: 2
          description: >
            Identifies a list of Internal Groups.
        subscriberCatList:
          type: array
          items:
            type: string
          minItems: 1
          description: >
            Identifies a list of Subscriber Category(s).
        supi:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        trafficFilters:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo'
          minItems: 1
          description: >
            Identifies IP packet filters. Either "trafficFilters" or "ethTrafficFilters"
            shall be included if applicable.
        trafficRoutes:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/RouteToLocation'
          minItems: 1
          description: Identifies the N6 traffic routing requirement.
        sfcIdDl:
          type: string
          description: Reference to a pre-configured service function chain policy for DL traffic
        sfcIdUl:
          type: string
          description: Reference to a pre-configured service function chain policy for UL traffic
        metadata:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Metadata'
        traffCorreInd:
          type: boolean
        tfcCorreInfo:
          $ref: 'TS29522_TrafficInfluence.yaml#/components/schemas/TrafficCorrelationInfo'
        validStartTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        validEndTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        tempValidities:
          type: array
          items:
            $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TemporalValidity'
          minItems: 1
          description: Identifies the temporal validities for the N6 traffic routing requirement.
        nwAreaInfo:
          $ref: 'TS29554_Npcf_BDTPolicyControl.yaml#/components/schemas/NetworkAreaInfo'
        upPathChgNotifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        headers:
          type: array
          items:
            type: string
          minItems: 1
        subscribedEvents:
          type: array
          items:
            $ref: 'TS29522_TrafficInfluence.yaml#/components/schemas/SubscribedEvent'
          minItems: 1
        dnaiChgType:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DnaiChangeType'
        afAckInd:
          type: boolean
        addrPreserInd: 
          type: boolean
        maxAllowedUpLat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger'
        simConnInd:
          type: boolean
          description: >
            Indicates whether simultaneous connectivity should be temporarily
            maintained for the source and target PSA.
        simConnTerm:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
        nscSuppFeats:
          type: object
          additionalProperties:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
          minProperties: 1
          description: >
            Identifies a list of Network Function Service Consumer supported per service. The key 
            used in this map for each entry is the ServiceName value as defined in
            3GPP TS 29.510[24].
      allOf:
        - oneOf:
          - required: [afAppId]
          - required: [trafficFilters]
          - required: [ethTrafficFilters]
        - oneOf:
          - required: [supi]
          - required: [interGroupId]
          - required: [interGroupIdList]
      not:
        required: [interGroupId, interGroupIdList]

    TrafficInfluDataPatch:
      description: Represents the Traffic Influence Data to be updated in the UDR.
      type: object
      properties:
        upPathChgNotifCorreId:
          type: string
          description: >
            Contains the Notification Correlation Id allocated by the NEF for the
            UP path change notification.
        appReloInd:
          type: boolean
          description: >
            Identifies whether an application can be relocated once a location of the application
            has been selected.
        ethTrafficFilters:
          type: array
          items:
            $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/EthFlowDescription'
          minItems: 1
          description: >
            Identifies Ethernet packet filters. Either "trafficFilters" or "ethTrafficFilters"
            shall be included if applicable.
        trafficFilters:
          type: array
          items:
            $ref: 'TS29122_CommonData.yaml#/components/schemas/FlowInfo'
          minItems: 1
          description: >
            Identifies IP packet filters. Either "trafficFilters" or "ethTrafficFilters"
            shall be included if applicable.
        trafficRoutes:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/RouteToLocation'
          minItems: 1
          description: Identifies the N6 traffic routing requirement.
        sfcIdDl:
          type: string
          description: Reference to a pre-configured service function chain policy for DL traffic
          nullable: true
        sfcIdUl:
          type: string
          description: Reference to a pre-configured service function chain policy for UL traffic
          nullable: true
        metadata:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Metadata'
        traffCorreInd:
          type: boolean
        tfcCorreInfo:
          $ref: 'TS29522_TrafficInfluence.yaml#/components/schemas/TrafficCorrelationInfo'
        validStartTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        validEndTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        tempValidities:
          type: array
          items:
            $ref: 'TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/TemporalValidity'
          minItems: 1
          nullable: true
          description: Identifies the temporal validities for the N6 traffic routing requirement.
        nwAreaInfo:
          $ref: 'TS29554_Npcf_BDTPolicyControl.yaml#/components/schemas/NetworkAreaInfo'
        upPathChgNotifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        headers:
          type: array
          items:
            type: string
          minItems: 1
        afAckInd:
          type: boolean
        addrPreserInd:
          type: boolean
        maxAllowedUpLat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UintegerRm'
        simConnInd:
          type: boolean
          description: >
            Indicates whether simultaneous connectivity should be temporarily maintained
            for the source and target PSA.
        simConnTerm:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSecRm'

    TrafficInfluSub:
      description: Represents traffic influence subscription data.
      type: object
      properties:
        dnns:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
          minItems: 1
          description: Each element identifies a DNN.  
        snssais:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
          minItems: 1
          description: Each element identifies a slice.
        internalGroupIds:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
          minItems: 1
          description: Each element identifies a group of users.
        internalGroupIdsAdd:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
          minItems: 1
          description: >
            Each element identifies an internal group.
        subscriberCatList:
          type: array
          items:
            type: string
          minItems: 1
          description: >
            Each element identifies a subscriber category.
        supis:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
          minItems: 1
          description: Each element identifies the user.
        notificationUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        expiry:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
        immRep:
          type: boolean
          description: >
            If provided and set to true, it indicates that existing entries that
            match this subscription shall be immediately reported in the response.
        immReports:
          type: array
          items:
            $ref: '#/components/schemas/TrafficInfluDataNotif'
          minItems: 1
          description: Immediate report with existing UDR entries.
      required:
        - notificationUri
      oneOf:
        - required: [dnns]
        - required: [snssais]
        - required: [internalGroupIds]
        - required: [internalGroupIds]
        - required: [internalGroupIdsAdd]
        - required: [supis]
      not:
        required: [internalGroupIds, internalGroupIdsAdd]

    TrafficInfluDataNotif:
      description: Represents traffic influence data for notification.
      type: object
      properties:
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        trafficInfluData:
          $ref: '#/components/schemas/TrafficInfluData'
      required:
        - resUri

    PfdDataForAppExt:
      description: Represents the PFDs and related data for the application.
      type: object
      properties:
        applicationId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationId'
        pfds:
          type: array
          items:
            $ref: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdContent'
          minItems: 1
        cachingTime:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        suppFeat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
        allowedDelay:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
      required:
        - applicationId
        - pfds

    BdtPolicyData:
      description: Represents applied BDT policy data.
      type: object
      properties:
        interGroupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        supi:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        bdtRefId:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'
        dnn:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        snssai:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
      required:
       - bdtRefId

    BdtPolicyDataPatch:
      description: >
        Represents modification instructions to be performed on the applied BDT policy data.
      type: object
      properties:
        bdtRefId:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'
      required:
       - bdtRefId

    IptvConfigData:
      description: Represents IPTV configuration data information.
      type: object
      properties:
        supi:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        interGroupId:
          description: Identifies a group of users. 
        dnn:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        snssai:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        afAppId:
          type: string
        multiAccCtrls:
          type: object
          additionalProperties:
            $ref: 'TS29522_IPTVConfiguration.yaml#/components/schemas/MulticastAccessControl'
          minProperties: 1
          description: >
            Identifies a list of multicast address access control information. Any string
            value can be used as a key of the map.
        suppFeat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
      required:
        - afAppId
        - multiAccCtrls
      oneOf:
        - required: [interGroupId]
        - required: [supi]

    ServiceParameterData:
      description: Represents the service parameter data.
      type: object
      properties:
        appId:
          type: string
          description: Identifies an application.
        dnn:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
        snssai:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
        interGroupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        supi:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        ueIpv4:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv4Addr'
        ueIpv6:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv6Addr'
        ueMac:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'
        anyUeInd:
          type: boolean
        paramOverPc5:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverPc5'
        paramOverUu:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverUu'
        a2xParamsPc5:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/A2xParamsPc5'
        paramForProSeDd:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeDd'
        paramForProSeDc:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeDc'
        paramForProSeU2NRelUe:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeU2NRelUe'
        paramForProSeRemUe:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeRemUe'
        urspGuidance:
          type: array
          items:
            $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/UrspRuleRequest'
          minItems: 1
          description: Contains the service parameter used to guide the URSP.
        deliveryEvents:
          type: array
          items:
           $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/Event'
          minItems: 1
          description: Contains the outcome of the UE Policy Delivery.
        policDelivNotifCorreId:
          type: string
          description: >
            Contains the Notification Correlation Id allocated by the NEF for the notification
            of UE Policy delivery outcome.
        policDelivNotifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        suppFeat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        headers:
          type: array
          items:
            type: string
          minItems: 1
        resetIds:
          type: array
          items:
            type: string
          minItems: 1

    ServiceParameterDataPatch:
      description: Represents the service parameter data that can be updated.
      type: object
      properties:
        paramOverPc5:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverPc5'
        paramOverUu:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParameterOverUu'
        a2xParamsPc5:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/A2xParamsPc5'
        paramForProSeDd:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeDd'
        paramForProSeDc:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeDc'
        paramForProSeU2NRelUe:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeU2NRelUe'
        paramForProSeRemUe:
          $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/ParamForProSeRemUe'
        urspInfluence:
          type: array
          items:
            $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/UrspRuleRequest'
          minItems: 1
          description: Contains the service parameter used to influence the URSP.
        deliveryEvents:
          type: array
          items:
           $ref: 'TS29522_ServiceParameter.yaml#/components/schemas/Event'
          minItems: 1
          description: Contains the outcome of the UE Policy Delivery.
        policDelivNotifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'

    AmInfluData:
      description: Represents the AM Influence Data.
      type: object
      properties:
        appIds:
          type: array
          items:
            type: string
          minItems: 1
          description: Identifies one or more applications.
        dnnSnssaiInfos:
          type: array
          items:
            $ref: 'TS29522_AMInfluence.yaml#/components/schemas/DnnSnssaiInformation'
          minItems: 1
          description: Identifies one or more DNN, S-NSSAI combinations.
        interGroupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
        supi:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
        anyUeInd:
          type: boolean
          description: Indicates whether the data is applicable for any UE.
        roamUePlmnIds:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
          minItems: 1
          description: >
            Indicates a list of PLMNs representing the home PLMN for the inbound roaming
            UEs in LBO roaming scenario.
        policyDuration:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
        evSubs:
          type: array
          items:
            $ref: 'TS29522_AMInfluence.yaml#/components/schemas/AmInfluEvent'
          minItems: 1
          description: List of AM related events for which a subscription is required.
        notifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        notifCorrId:
          type: string
          description: Notification correlation identifier.
        headers:
          type: array
          description: Contains the headers provisioned by the NEF.
          items:
            type: string
          minItems: 1
        thruReq:
          type: boolean
          description: Indicates whether high throughput is desired for the indicated UE traffic.
        covReq:
          type: array
          items:
            $ref: 'TS29534_Npcf_AMPolicyAuthorization.yaml#/components/schemas/ServiceAreaCoverageInfo'
          minItems: 1
          description: Indicates the service area coverage requirement.
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
      allOf:
        - anyOf:
          - required: [thruReq]
          - required: [covReq]
        - oneOf:
          - required: [supi]
          - required: [interGroupId]
          - required: [anyUeInd]
          - required: [roamUePlmnIds]

    AmInfluDataPatch:
      description: Represents the AM Influence Data that can be updated.
      type: object
      properties:
        appIds:
          type: array
          items:
            type: string
          minItems: 1
          description: Identifies one or more applications.
          nullable: true
        dnnSnssaiInfos:
          type: array
          items:
            $ref: 'TS29522_AMInfluence.yaml#/components/schemas/DnnSnssaiInformation'
          minItems: 1
          description: Identifies one or more DNN, S-NSSAI combinations.
          nullable: true
        evSubs:
          type: array
          items:
            $ref: 'TS29522_AMInfluence.yaml#/components/schemas/AmInfluEvent'
          minItems: 1
          description: List of AM related events for which a subscription is required.
          nullable: true
        headers:
          type: array
          description: Contains the headers provisioned by the NEF.
          items:
            type: string
          minItems: 1
        thruReq:
          type: boolean
          description: Indicates whether high throughput is desired for the indicated UE traffic.
          nullable: true
        notifUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/UriRm'
        notifCorrId:
          type: string
          description: Notification correlation identifier.
          nullable: true
        covReq:
          type: array
          items:
            $ref: 'TS29534_Npcf_AMPolicyAuthorization.yaml#/components/schemas/ServiceAreaCoverageInfo'
          minItems: 1
          description: Indicates the service area coverage requirement.
          nullable: true

    ApplicationDataSubs:
      description: Identifies a subscription to application data change notification.
      type: object
      properties:
        notificationUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        dataFilters:
          type: array
          items:
            $ref: '#/components/schemas/DataFilter'
          minItems: 1
        expiry:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
        immRep:
          type: boolean
          description: Immediate reporting indication.
        amInfluEntries:
          type: array
          items:
            $ref: '#/components/schemas/AmInfluData'
          minItems: 1
          description: The AM Influence Data entries stored in the UDR that match a subscription.
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
        resetIds:
          type: array
          items:
            type: string
          minItems: 1
        immReports:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationDataChangeNotif'
          minItems: 1
          description: Immediate report with existing UDR entries.
      required:
        - notificationUri

    ApplicationDataChangeNotif:
      description: Contains changed application data for which notification was requested.
      type: object
      properties:
        iptvConfigData:
          $ref: '#/components/schemas/IptvConfigData'
        pfdData:
          $ref: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdChangeNotification'
        bdtPolicyData:
          $ref: '#/components/schemas/BdtPolicyData'
        resUri:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
        serParamData:
          $ref: '#/components/schemas/ServiceParameterData'
        amInfluData:
          $ref: '#/components/schemas/AmInfluData'
      required:
        - resUri

    DataFilter:
      description: Identifies a data filter.
      type: object
      properties:
        dataInd:
          $ref: '#/components/schemas/DataInd'
        dnns:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
          minItems: 1
        snssais:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
          minItems: 1
        internalGroupIds:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/GroupId'
          minItems: 1
        supis:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi'
          minItems: 1
        appIds:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/ApplicationId'
          minItems: 1
        ueIpv4s:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr'
          minItems: 1
        ueIpv6s:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr'
          minItems: 1
        ueMacs:
          type: array
          items:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/MacAddr48'
          minItems: 1
        anyUeInd:
          type: boolean
          description: Indicates the request is for any UE.
        dnnSnssaiInfos:
          description: >
            Indicates the request is for any DNN and S-NSSAI combination present in the array.
          type: array
          items:
            $ref: 'TS29522_AMInfluence.yaml#/components/schemas/DnnSnssaiInformation'
          minItems: 1
      required:
        - dataInd

    DataInd:
      anyOf:
      - type: string
        enum:
          - PFD
          - IPTV
          - BDT
          - SVC_PARAM
          - AM
      - type: string
        description: >
          This string provides forward-compatibility with future
          extensions to the enumeration but is not used to encode
          content defined in the present version of this API.
      description: |
        Indicates the type of data.  
        Possible values are
        - PFD: PFD data.
        - IPTV: IPTV configuration data.
        - BDT: BDT data.
        - SVC_PARAM: Service parameter data.
        - AM: AM influence data.


