diff --git a/src/types/error_message.hpp b/src/types/error_message.hpp
new file mode 100644
index 0000000..de27772
--- /dev/null
+++ b/src/types/error_message.hpp
@@ -0,0 +1,11 @@
+#pragma once
+
+#include "error_type.hpp"
+
+#include <string>
+
+struct ErrorMessage
+{
+    ErrorType error;
+    std::string arg0;
+};
diff --git a/src/types/error_type.hpp b/src/types/error_type.hpp
new file mode 100644
index 0000000..0f1d61e
--- /dev/null
+++ b/src/types/error_type.hpp
@@ -0,0 +1,40 @@
+#pragma once
+
+#include "utils/conversion.hpp"
+
+#include <sdbusplus/exception.hpp>
+
+#include <array>
+#include <cstdint>
+#include <string_view>
+#include <type_traits>
+
+enum class ErrorType : uint32_t
+{
+    propertyConflict
+};
+
+namespace utils
+{
+
+constexpr auto convDataErrorType =
+    std::array{std::make_pair<std::string_view, ErrorType>(
+        "PropertyConflict", ErrorType::propertyConflict)};
+
+inline ErrorType toErrorType(std::underlying_type_t<ErrorType> value)
+{
+    return toEnum<ErrorType, minEnumValue(convDataErrorType),
+                  maxEnumValue(convDataErrorType)>(value);
+}
+
+inline ErrorType toErrorType(const std::string& value)
+{
+    return toEnum(convDataErrorType, value);
+}
+
+inline std::string enumToString(ErrorType value)
+{
+    return std::string(enumToString(convDataErrorType, value));
+}
+
+} // namespace utils
