diff --git a/docs/api.yml b/docs/api.yml
index 38b48548935b1da0e44d3a51a8571e0aaa44cef4..4d8a12f78a294f00a1c1d4019c49ed737a2a3efd 100644
--- a/docs/api.yml
+++ b/docs/api.yml
@@ -219,6 +219,33 @@ paths:
             application/json:
               schema:
                 $ref: '#/components/schemas/Measurement'
+    delete:
+      tags:
+        - measurement
+      summary: Deletes a specific measurement
+      operationId: deleteMeasurement
+      security:
+        - bearerAuth: []
+      parameters:
+        - in: path
+          name: measurementID
+          description: The measurement id
+          required: true
+          schema:
+            type: integer
+      responses:
+        '200':
+          description: success response
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/SuccessResponse'
+          default:
+            description: error response
+            content:
+              application/json:
+                schema:
+                  $ref: '#/components/schemas/ErrorResponse'
 
 components:
   securitySchemes:
diff --git a/src/blueprints/Measurements.py b/src/blueprints/Measurements.py
index 932d9fa2da6357e546128774d6a4d6b8e551d5c1..536b8eef06d27ad068fc845a045ed6be2cd7ca0c 100644
--- a/src/blueprints/Measurements.py
+++ b/src/blueprints/Measurements.py
@@ -56,4 +56,14 @@ def construct_blueprint(settings):
         database.sensorAccess.add_sensor(deviceID, sensorName, sensorType)
         return database.sensorAccess.get_sensor_by_name_and_device_id(deviceID, sensorName)
 
+    @measurements.route('/measurement/<int:measurementID>', methods=['DELETE'])
+    @require_api_key(password=settings['api']['key'])
+    def delete_measurement(measurementID):
+        database = Database(settings['database']['databasePath'])
+        if not database.measurementAccess.get_measurement(measurementID):
+            return jsonify({'success': False, 'msg': f'No measurement with id "{measurementID}" existing'})
+
+        database.measurementAccess.delete_measurement(measurementID)
+        return jsonify({'success': True})
+
     return measurements
diff --git a/src/logic/database/MeasurementAccess.py b/src/logic/database/MeasurementAccess.py
index 0ff97c5611860370d30d3ca8434fd713ee2e9e03..e617b0f6262ffe337ba357742c7b4787f738aef4 100644
--- a/src/logic/database/MeasurementAccess.py
+++ b/src/logic/database/MeasurementAccess.py
@@ -48,3 +48,8 @@ class MeasurementAccess(DatabaseAccess):
         self._query(f'INSERT INTO {self.TABLE_NAME}(sensor_id, value, timestamp ) VALUES(?, ?, ?)',
                     sensorID, value, self.__get_current_datetime(),
                     fetch_type=FetchType.NONE)
+
+    def delete_measurement(self, measurementID: int):
+        LOGGER.debug(f'Deleting measurement "{measurementID}"')
+        self._query(f'DELETE FROM {self.TABLE_NAME} WHERE id = ?', measurementID, fetch_type=FetchType.NONE)
+