diff --git a/dump_manager_system.cpp b/dump_manager_system.cpp
index ab7ca72..865ed91 100644
--- a/dump_manager_system.cpp
+++ b/dump_manager_system.cpp
@@ -38,6 +38,21 @@
     lastEntryId++;
 }
 
+uint32_t Manager::createDump()
+{
+    constexpr auto SYSTEMD_SERVICE = "org.freedesktop.systemd1";
+    constexpr auto SYSTEMD_OBJ_PATH = "/org/freedesktop/systemd1";
+    constexpr auto SYSTEMD_INTERFACE = "org.freedesktop.systemd1.Manager";
+    constexpr auto DIAG_MOD_TARGET = "obmc-host-diagnostic-mode@0.target";
+    auto b = sdbusplus::bus::new_default();
+    auto method = bus.new_method_call(SYSTEMD_SERVICE, SYSTEMD_OBJ_PATH,
+                                      SYSTEMD_INTERFACE, "StartUnit");
+    method.append(DIAG_MOD_TARGET); // unit to activate
+    method.append("replace");
+    bus.call_noreply(method);
+    return ++lastEntryId;
+}
+
 } // namespace system
 } // namespace dump
 } // namespace phosphor
diff --git a/dump_manager_system.hpp b/dump_manager_system.hpp
index 948dc3d..441611d 100644
--- a/dump_manager_system.hpp
+++ b/dump_manager_system.hpp
@@ -6,6 +6,7 @@
 
 #include <sdbusplus/bus.hpp>
 #include <sdbusplus/server/object.hpp>
+#include <xyz/openbmc_project/Dump/Create/server.hpp>
 
 namespace phosphor
 {
@@ -15,6 +16,7 @@
 {
 
 using NotifyIface = sdbusplus::server::object::object<
+    sdbusplus::xyz::openbmc_project::Dump::server::Create,
     sdbusplus::xyz::openbmc_project::Dump::server::NewDump>;
 
 /** @class Manager
@@ -59,6 +61,13 @@
      */
     void notify(NewDump::DumpType dumpType, uint32_t dumpId,
                 uint64_t size) override;
+
+    /** @brief Implementation for CreateDump
+     *  Method to create Dump.
+     *
+     *  @return id - The Dump entry id number.
+     */
+    uint32_t createDump() override;
 };
 
 } // namespace system
