diff --git a/manager/json-config.hpp b/manager/json-config.hpp
index 3b836a1..2c4e16d 100644
--- a/manager/json-config.hpp
+++ b/manager/json-config.hpp
@@ -34,8 +34,7 @@
      * @param[in] bus       - The D-Bus object
      * @param[in] event     - sd event handler
      */
-    JsonConfig(sdbusplus::bus::bus& bus, sdeventplus::Event& event) :
-        event(event)
+    JsonConfig(sdbusplus::bus_t& bus, sdeventplus::Event& event) : event(event)
     {
         match = std::make_unique<sdbusplus::bus::match_t>(
             bus,
@@ -93,7 +92,7 @@
      *
      * @param[in] msg - The D-Bus message contents
      */
-    void ifacesAddedCallback(sdbusplus::message::message& msg)
+    void ifacesAddedCallback(sdbusplus::message_t& msg)
     {
         sdbusplus::message::object_path path;
         std::unordered_map<
@@ -183,7 +182,7 @@
                     }
                     confFile.clear();
                 }
-                catch (const sdbusplus::exception::exception& e)
+                catch (const sdbusplus::exception_t& e)
                 {
                     // Property unavailable on object.
                     lg2::error(
@@ -195,7 +194,7 @@
                 }
             }
         }
-        catch (const sdbusplus::exception::exception& e)
+        catch (const sdbusplus::exception_t& e)
         {
             lg2::error(
                 "Failed to call the SubTreePaths method, ERROR = {ERROR}, INTERFACE = {INTERFACE}",
