openapi: 3.0.0 info: title: 3gpp-data-reporting version: 1.2.0 description: | API for 3GPP Data Reporting. © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > 3GPP TS 29.522 V19.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: - {} - oAuth2ClientCredentials: [] servers: - url: '{apiRoot}/3gpp-data-reporting/v1' variables: apiRoot: default: https://example.com description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122. paths: /sessions: post: summary: Create a new Data Reporting Session. operationId: CreateDataRepSession tags: - Data Reporting Sessions requestBody: description: > Representation of the Data Reporting Session to be created in the NEF. required: true content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' responses: '201': description: Created. Successful creation of a new Data Reporting Session. content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' headers: Location: required: true schema: type: string description: > Contains the URI of the newly created resource, according to the structure {apiRoot}/3gpp-data-reporting//sessions/{sessionId} '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29122_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' '411': $ref: 'TS29122_CommonData.yaml#/components/responses/411' '413': $ref: 'TS29122_CommonData.yaml#/components/responses/413' '415': $ref: 'TS29122_CommonData.yaml#/components/responses/415' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29122_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' /sessions/{sessionId}: parameters: - name: sessionId in: path description: Identifier of the Data Reporting Session. required: true schema: type: string get: summary: Request the retrieval of an existing Individual Data Reporting Session resource. operationId: GetIndDataRepSession tags: - Individual Data Reporting Session responses: '200': description: > OK. The requested Individual Data Reporting Session resource is Successfully returned. content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': $ref: 'TS29122_CommonData.yaml#/components/responses/308' '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29122_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' '411': $ref: 'TS29122_CommonData.yaml#/components/responses/411' '413': $ref: 'TS29122_CommonData.yaml#/components/responses/413' '415': $ref: 'TS29122_CommonData.yaml#/components/responses/415' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29122_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' put: summary: Request the update of an existing Individual Data Reporting Session resource. operationId: UpdateIndDataRepSession tags: - Individual Data Reporting Session requestBody: required: true content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' responses: '200': description: > OK. The Individual Data Reporting Session resource was successfully updated. content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' '204': description: > No Content. The Individual Data Reporting Session resource was successfully updated and no content is returned in the response body. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': $ref: 'TS29122_CommonData.yaml#/components/responses/308' '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29122_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' '411': $ref: 'TS29122_CommonData.yaml#/components/responses/411' '413': $ref: 'TS29122_CommonData.yaml#/components/responses/413' '415': $ref: 'TS29122_CommonData.yaml#/components/responses/415' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29122_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' delete: summary: Deletes an already existing Data Reporting Session resource. operationId: DeleteIndDataRepSession tags: - Individual Data Reporting Session responses: '204': description: > No Content. The concerned Individual Data Reporting Session resource was successfully deleted. '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': $ref: 'TS29122_CommonData.yaml#/components/responses/308' '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29122_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29122_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' /sessions/{sessionId}/report: parameters: - name: sessionId in: path description: Identifier of the Data Reporting Session. required: true schema: type: string post: summary: Report collected UE data. operationId: ReportUEData tags: - Individual Data Reporting Session requestBody: required: true content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReport' responses: '200': description: OK. The UE data report was successfully received. content: application/json: schema: $ref: 'TS26532_Ndcaf_DataReporting.yaml#/components/schemas/DataReportingSession' '307': $ref: 'TS29122_CommonData.yaml#/components/responses/307' '308': $ref: 'TS29122_CommonData.yaml#/components/responses/308' '400': $ref: 'TS29122_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29122_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29122_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29122_CommonData.yaml#/components/responses/404' '411': $ref: 'TS29122_CommonData.yaml#/components/responses/411' '413': $ref: 'TS29122_CommonData.yaml#/components/responses/413' '415': $ref: 'TS29122_CommonData.yaml#/components/responses/415' '429': $ref: 'TS29122_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29122_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29122_CommonData.yaml#/components/responses/503' default: $ref: 'TS29122_CommonData.yaml#/components/responses/default' components: securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: '{tokenUrl}' scopes: {}