diff --git a/elog_entry.hpp b/elog_entry.hpp
new file mode 100644
index 0000000..6c0e52e
--- /dev/null
+++ b/elog_entry.hpp
@@ -0,0 +1,46 @@
+#pragma once
+
+#include <sdbusplus/bus.hpp>
+#include <sdbusplus/server/object.hpp>
+#include "xyz/openbmc_project/Logging/Entry/server.hpp"
+
+namespace phosphor
+{
+namespace logging
+{
+namespace details
+{
+
+template <typename T>
+using ServerObject = typename sdbusplus::server::object::object<T>;
+
+using EntryIface =
+    sdbusplus::xyz::openbmc_project::Logging::server::Entry;
+
+} // namespace details
+
+/** @class Entry
+ *  @brief OpenBMC logging entry implementation.
+ *  @details A concrete implementation for the
+ *  xyz.openbmc_project.Logging.Entry DBus API.
+ */
+class Entry final :
+    public details::ServerObject<details::EntryIface>
+{
+    public:
+        Entry() = delete;
+        Entry(const Entry&) = delete;
+        Entry& operator=(const Entry&) = delete;
+        Entry(Entry&&) = delete;
+        Entry& operator=(Entry&&) = delete;
+        virtual ~Entry() = default;
+
+        /** @brief Constructor for the Log Entry object
+         *  @param[in] bus - DBus bus to attach to.
+         *  @param[in] obj - Object path to attach to.
+         */
+        Entry(sdbusplus::bus::bus& bus, const char* obj);
+};
+
+} // namespace logging
+} // namespace phosphor
