diff --git a/include/openbmc_dbus_rest.hpp b/include/openbmc_dbus_rest.hpp
index 8a6830e..c35a2be 100644
--- a/include/openbmc_dbus_rest.hpp
+++ b/include/openbmc_dbus_rest.hpp
@@ -66,6 +66,19 @@
 #include <variant>
 #include <vector>
 
+namespace nlohmann
+{
+template <typename... Args>
+struct adl_serializer<std::variant<Args...>>
+{
+    // NOLINTNEXTLINE(readability-identifier-naming)
+    static void to_json(json& j, const std::variant<Args...>& args)
+    {
+        std::visit([&j](auto&& val) { j = val; }, args);
+    }
+};
+} // namespace nlohmann
+
 namespace crow
 {
 namespace openbmc_mapper
@@ -204,20 +217,8 @@
             for (const auto& [name, value] : propertiesList)
             {
                 nlohmann::json& propertyJson = objectJson[name];
-                std::visit(
-                    [&propertyJson](auto&& val) {
-                        if constexpr (std::is_same_v<
-                                          std::decay_t<decltype(val)>,
-                                          sdbusplus::message::unix_fd>)
-                        {
-                            propertyJson = val.fd;
-                        }
-                        else
-                        {
-                            propertyJson = val;
-                        }
-                    },
-                    value);
+                std::visit([&propertyJson](auto&& val) { propertyJson = val; },
+                           value);
             }
         });
 }
