diff --git a/src/metric.cpp b/src/metric.cpp
index 8d9f19b..b12f3a6 100644
--- a/src/metric.cpp
+++ b/src/metric.cpp
@@ -52,13 +52,11 @@
     return readings.at(index);
 }
 
-nlohmann::json Metric::to_json() const
+LabeledMetricParameters Metric::dumpConfiguration() const
 {
-    auto sensorPaths = utils::transform(
-        sensors, [](const auto& sensor) -> sdbusplus::message::object_path {
-            return sdbusplus::message::object_path(sensor->id().service + ":" +
-                                                   sensor->id().path);
-        });
-    return LabeledReadingParameter::to_json(ReadingParameters::value_type(
-        std::move(sensorPaths), operationType, id, metadata));
+    auto sensorPaths = utils::transform(sensors, [](const auto& sensor) {
+        return LabeledSensorParameters(sensor->id().service, sensor->id().path);
+    });
+    return LabeledMetricParameters(std::move(sensorPaths), operationType, id,
+                                   metadata);
 }
