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' externalDocs: description: 3GPP TS 29.519 V15.2.0; 5G System; Usage of the Unified Data Repository Service for Policy Data, Application Data and Structured Data for Exposure. url: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.519/' paths: /application-data/pfds: get: 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' responses: '200': description: A representation of PFDs for request applications is returned. content: application/json: schema: type: array items: $ref: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdDataForApp' '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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' /application-data/pfds/{appId}: get: 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: '200': description: A representation of PFDs for the request application identified by the application identifier is returned. content: application/json: schema: $ref: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdDataForApp' '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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' delete: 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' put: requestBody: required: true content: application/json: schema: $ref: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdDataForApp' 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: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdDataForApp' headers: Location: description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nudr-dr/v1/application-data/pfds/{application-identifier}' 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: 'TS29551_Nnef_PFDmanagement.yaml#/components/schemas/PfdDataForApp' '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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' /application-data/influenceData: get: parameters: - name: influence-Ids in: query description: Each element identifies a service. required: false schema: type: array items: type: string - name: dnns in: query description: Each element identifies a DNN. required: false schema: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn' - name: snssais in: query description: Each element identifies a slice. required: false schema: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' - name: internal-Group-Ids in: query description: Each element identifies a group of users. required: false schema: type: array items: type: string - name: supis in: query description: Each element identifies the user. required: false schema: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' /application-data/influenceData/{influenceId}: put: 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/v1/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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' patch: requestBody: required: true content: application/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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' delete: 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: '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' /application-data/influenceData/subs-to-notify: post: 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' '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: $ref: '#/components/schemas/TrafficInfluData' minItems: 1 responses: '204': description: No Content, Notification was succesfull '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' get: 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 schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' - name: internal-Group-Id in: query description: Identifies a group of users. required: false schema: $ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId' - name: supi in: query description: Identifies a user. required: false schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/Supi' 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' /application-data/influenceData/subs-to-notify/{subscriptionId}: get: 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' put: 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' delete: 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' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: $ref: 'TS29571_CommonData.yaml#/components/responses/default' components: schemas: TrafficInfluData: 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: type: string description: Identifies a group of users. 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. validStartTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' validEndTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' nwAreaInfo: $ref: 'TS29554_Npcf_BDTPolicyControl.yaml#/components/schemas/NetworkAreaInfo' upPathChgNotifUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' required: - trafficRoutes allOf: - oneOf: - required: [afAppId] - required: [trafficFilters] - required: [ethTrafficFilters] - oneOf: - required: [supi] - required: [interGroupId] TrafficInfluDataPatch: 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. 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' internalGroupId: type: string description: Identifies a group of users. 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. validStartTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' validEndTime: $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' nwAreaInfo: $ref: 'TS29554_Npcf_BDTPolicyControl.yaml#/components/schemas/NetworkAreaInfo' upPathChgNotifUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' TrafficInfluSub: 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: type: string minItems: 1 description: Each element identifies a group of users. 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' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - notificationUri oneOf: - required: [dnns] - required: [snssais] - required: [internalGroupIds] - required: [supis]