openapi: 3.0.3 info: title: Cumulocity Measurement API version: 10.20.0 description: | Ingest, query, and delete device measurements (telemetry data points) including temperature, voltage, location, and arbitrary custom fragments with units. Supports time-range queries, source/type filters, series aggregations (hourly/daily), and bulk creation. servers: - url: https://{tenant}.cumulocity.com variables: tenant: default: example security: - basicAuth: [] - bearerAuth: [] tags: - name: Measurements - name: Series paths: /measurement/measurements: get: tags: [Measurements] summary: List Measurements operationId: listMeasurements parameters: - name: source in: query schema: {type: string} - name: type in: query schema: {type: string} - name: valueFragmentType in: query schema: {type: string} - name: valueFragmentSeries in: query schema: {type: string} - name: dateFrom in: query schema: {type: string, format: date-time} - name: dateTo in: query schema: {type: string, format: date-time} - name: revert in: query schema: {type: boolean} - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/CurrentPage' responses: '200': description: A collection of measurements. content: application/vnd.com.nsn.cumulocity.measurementCollection+json: schema: $ref: '#/components/schemas/MeasurementCollection' post: tags: [Measurements] summary: Create a Measurement operationId: createMeasurement requestBody: required: true content: application/vnd.com.nsn.cumulocity.measurement+json: schema: $ref: '#/components/schemas/Measurement' application/vnd.com.nsn.cumulocity.measurementCollection+json: schema: $ref: '#/components/schemas/MeasurementCollection' responses: '201': description: Measurement created. content: application/vnd.com.nsn.cumulocity.measurement+json: schema: $ref: '#/components/schemas/Measurement' delete: tags: [Measurements] summary: Delete Measurements by Filter operationId: deleteMeasurements parameters: - name: source in: query schema: {type: string} - name: type in: query schema: {type: string} - name: dateFrom in: query schema: {type: string, format: date-time} - name: dateTo in: query schema: {type: string, format: date-time} responses: '204': description: Measurements deleted. /measurement/measurements/{id}: parameters: - name: id in: path required: true schema: {type: string} get: tags: [Measurements] summary: Retrieve a Measurement operationId: getMeasurement responses: '200': description: A single measurement. content: application/vnd.com.nsn.cumulocity.measurement+json: schema: $ref: '#/components/schemas/Measurement' delete: tags: [Measurements] summary: Delete a Measurement operationId: deleteMeasurement responses: '204': description: Measurement deleted. /measurement/measurements/series: get: tags: [Series] summary: Retrieve Series Aggregations operationId: getSeries parameters: - name: source in: query required: true schema: {type: string} - name: series in: query required: true schema: {type: array, items: {type: string}} style: form explode: true - name: aggregationType in: query schema: type: string enum: [MINUTELY, HOURLY, DAILY] - name: dateFrom in: query required: true schema: {type: string, format: date-time} - name: dateTo in: query required: true schema: {type: string, format: date-time} responses: '200': description: Series aggregation result. components: securitySchemes: basicAuth: type: http scheme: basic bearerAuth: type: http scheme: bearer bearerFormat: JWT parameters: PageSize: name: pageSize in: query schema: {type: integer, minimum: 1, maximum: 2000, default: 5} CurrentPage: name: currentPage in: query schema: {type: integer, minimum: 1, default: 1} schemas: Measurement: type: object required: [time, type, source] properties: id: {type: string, readOnly: true} self: {type: string, format: uri, readOnly: true} time: {type: string, format: date-time} type: {type: string} source: type: object properties: id: {type: string} self: {type: string, format: uri} additionalProperties: true MeasurementCollection: type: object properties: self: {type: string, format: uri} measurements: type: array items: $ref: '#/components/schemas/Measurement'