B.3 Ndcaf_DataReportingProvisioning service API
26.5323GPPData Collection and ReportingProtocols and FormatsRelease 17TS
|
openapi: 3.0.0 info: title: Ndcaf_DataReportingProvisioning version: 1.1.0 description: | Data Collection AF: Provisioning Sessions API © 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. tags: – name: Ndcaf_DataReportingProvisioning description: ‘Data Collection and Reporting: Application Service Provider Provisioning (R1) APIs’ externalDocs: description: ‘TS 26.532 V17.1.0; Data Collection and Reporting; Protocols and Formats’ url: ‘https://www.3gpp.org/ftp/Specs/archive/26_series/26.532/’ servers: – url: ‘{apiRoot}/3gpp-ndcaf_data-reporting-provisioning/v1’ variables: apiRoot: default: https://example.com description: See 3GPP TS 29.532 clause 5.2. security: – {} – oAuth2ClientCredentials: [] paths: /sessions: post: operationId: CreateSession summary: ‘Create a new Data Reporting Provisioning Session’ requestBody: required: true content: application/json: schema: $ref: ‘#/components/schemas/DataReportingProvisioningSession’ responses: ‘201’: description: ‘Data Reporting Provisioning Session successfully created’ headers: Location: description: ‘URL including the resource identifier of the newly created Data Reporting Provisioning Session.’ required: true schema: $ref: ‘TS26512_CommonData.yaml#/components/schemas/Url’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingProvisioningSession’ ‘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’ /sessions/{sessionId}: parameters: – name: sessionId in: path required: true schema: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ description: ‘The resource identifier of an existing Data Reporting Provisioning Session.’ get: operationId: RetrieveSession summary: ‘Retrieve an existing Data Reporting Provisioning Session’ responses: ‘200’: description: ‘Representation of Data Reporting Provisioning Session is returned’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingProvisioningSession’ ‘307’: $ref: ‘TS29571_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29571_CommonData.yaml#/components/responses/308’ ‘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: operationId: DestroySession summary: ‘Destroy an existing Data Reporting Provisioning Session’ responses: ‘204’: description: ‘Data Reporting Provisioning Session resource successfully destroyed’ # No Content ‘307’: $ref: ‘TS29571_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29571_CommonData.yaml#/components/responses/308’ ‘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’ /sessions/{sessionId}/configurations/{configurationId}: parameters: – name: sessionId in: path required: true schema: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ description: ‘The resource identifier of an existing Data Reporting Provisioning Session.’ – name: configurationId in: path required: true schema: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ description: ‘The resource identifier of an existing Data Reporting Configuration.’ post: operationId: CreateConfiguration summary: ‘Create a new Data Reporting Configuration subresource within the scope of an existing Data Reporting Provisioning Session’ requestBody: required: true content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ responses: ‘201’: description: ‘Data Reporting Configuration successfully created’ headers: Location: description: ‘URL including the resource identifier of the newly created Data Reporting Configuration.’ required: true schema: $ref: ‘TS26512_CommonData.yaml#/components/schemas/Url’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ ‘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’ get: operationId: RetrieveConfiguration summary: ‘Retrieve an existing Data Reporting Configuration’ responses: ‘200’: description: ‘Representation of Data Reporting Configuration is returned’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ ‘307’: $ref: ‘TS29571_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29571_CommonData.yaml#/components/responses/308’ ‘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’ put: operationId: UpdateConfiguration summary: ‘Replace an existing Data Reporting Configuration subresource’ requestBody: required: true content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ responses: ‘200’: description: ‘Data Reporting Configuration successfully replaced and updated resource representation is returned’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ ‘204’: description: ‘Data Reporting Configuration successfully replaced’ # No Content. ‘307’: $ref: ‘TS29122_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29122_CommonData.yaml#/components/responses/308’ ‘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’ patch: operationId: ModifyConfiguration summary: ‘Modify an existing Data Reporting Configuration subresource’ requestBody: required: true content: application/merge-patch+json: schema: $ref: ‘#/components/schemas/DataReportingConfigurationPatch’ responses: ‘200’: description: ‘Data Reporting Configuration successfully replaced and updated resource representation is returned’ content: application/json: schema: $ref: ‘#/components/schemas/DataReportingConfiguration’ ‘204’: description: ‘Data Reporting Configuration successfully replaced’ # No Content. ‘307’: $ref: ‘TS29122_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29122_CommonData.yaml#/components/responses/308’ ‘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: operationId: DestroyConfiguration summary: ‘Destroy an existing Data Reporting Configuration’ responses: ‘204’: description: ‘Data Reporting Configuration resource successfully destroyed’ # No Content ‘307’: $ref: ‘TS29571_CommonData.yaml#/components/responses/307’ ‘308’: $ref: ‘TS29571_CommonData.yaml#/components/responses/308’ ‘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: securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: ‘{tokenUri}’ scopes: {} description: > For a trusted Provisioning AF, ‘ndcaf-datareportingprovisioning’ shall be used as ‘scopes’ and ‘{nrfApiRoot}/oauth2/token’ shall be used as ‘tokenUri’. schemas: DataReportingProvisioningSession: description: "A representation of a Data Reporting Provisioning Session." type: object properties: provisioningSessionId: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ aspId: $ref: ‘TS29514_Npcf_PolicyAuthorization.yaml#/components/schemas/AspId’ externalApplicationId: $ref: ‘TS29571_CommonData.yaml#/components/schemas/ApplicationId’ internalApplicationId: $ref: ‘TS29571_CommonData.yaml#/components/schemas/ApplicationId’ eventId: $ref: ‘TS29517_Naf_EventExposure.yaml#/components/schemas/AfEvent’ dataReportingConfigurationIds: type: array items: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ minItems: 0 required: – provisioningSessionId – aspId – externalApplicationId – eventId – dataReportingConfigurationIds DataReportingConfiguration: description: "A Data Reporting Configuration subresource." type: object properties: dataReportingConfigurationId: $ref: ‘TS26512_CommonData.yaml#/components/schemas/ResourceId’ dataCollectionClientType: $ref: ‘TS26532_CommonData.yaml#/components/schemas/DataCollectionClientType’ authorizationURL: $ref: ‘TS26512_CommonData.yaml#/components/schemas/Url’ dataAccessProfiles: type: array items: $ref: ‘#/components/schemas/DataAccessProfile’ minItems: 0 required: – dataReportingConfigurationId – dataCollectionClientType – dataAccessProfiles DataReportingConfigurationPatch: description: "A JSON patch for a Data Reporting Configuration." type: object properties: authorizationURL: $ref: ‘TS26512_CommonData.yaml#/components/schemas/Url’ dataAccessProfiles: type: array items: $ref: ‘#/components/schemas/DataAccessProfile’ minItems: 0 DataAccessProfile: description: "A data access profile." type: object properties: dataAccessProfileId: type: string targetEventConsumerTypes: type: array items: $ref: ‘#/components/schemas/EventConsumerType’ minItems: 0 uniqueItems: true parameters: type: array items: type: string minItems: 0 uniqueItems: true timeAccessRestrictions: type: object properties: duration: $ref: ‘TS29571_CommonData.yaml#/components/schemas/DurationSec’ aggregationFunctions: type: array items: $ref: ‘#/components/schemas/DataAggregationFunctionType’ minItems: 0 uniqueItems: true required: – duration – aggregationFunctions userAccessRestrictions: type: object properties: groupIds: type: array items: $ref: ‘TS29571_CommonData.yaml#/components/schemas/GroupId’ minItems: 0 uniqueItems: true userIds: type: array items: anyOf: – $ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’ – $ref: ‘TS29571_CommonData.yaml#/components/schemas/Supi’ minItems: 0 uniqueItems: true aggregationFunctions: type: array items: $ref: ‘#/components/schemas/DataAggregationFunctionType’ minItems: 0 uniqueItems: true required: – groupIds – userIds – aggregationFunctions locationAccessRestrictions: type: object properties: locationAreas: type: array items: $ref: ‘TS29122_CommonData.yaml#/components/schemas/LocationArea5G’ minItems: 1 uniqueItems: true aggregationFunctions: type: array items: $ref: ‘#/components/schemas/DataAggregationFunctionType’ minItems: 0 uniqueItems: true required: – locationAreas – aggregationFunctions required: – dataAccessProfileId – targetEventConsumerTypes – parameters EventConsumerType: description: "The type of event consumer." anyOf: – type: string enum: [NWDAF, EVENT_CONSUMER_AF, NEF] – 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. DataAggregationFunctionType: description: "The type of data aggregation function." anyOf: – type: string enum: ["NULL", COUNT, MEAN, MAXIMUM, MINIMUM, SUM] – 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. |