diff --git a/redfish-core/include/error_messages.hpp b/redfish-core/include/error_messages.hpp
index 5e4fb5d..6993a9d 100644
--- a/redfish-core/include/error_messages.hpp
+++ b/redfish-core/include/error_messages.hpp
@@ -429,9 +429,10 @@
  * @param[in] arg1 Parameter of message that will replace %1 in its body.
  *
  * @returns Message ResourceCreationConflict formatted to JSON */
-nlohmann::json resourceCreationConflict(std::string_view arg1);
+nlohmann::json resourceCreationConflict(const boost::urls::url_view& arg1);
 
-void resourceCreationConflict(crow::Response& res, std::string_view arg1);
+void resourceCreationConflict(crow::Response& res,
+                              const boost::urls::url_view& arg1);
 
 /**
  * @brief Formats MaximumErrorsExceeded message into JSON
@@ -631,9 +632,9 @@
  * @param[in] arg1 Parameter of message that will replace %1 in its body.
  *
  * @returns Message AccessDenied formatted to JSON */
-nlohmann::json accessDenied(std::string_view arg1);
+nlohmann::json accessDenied(const boost::urls::url_view& arg1);
 
-void accessDenied(crow::Response& res, std::string_view arg1);
+void accessDenied(crow::Response& res, const boost::urls::url_view& arg1);
 
 /**
  * @brief Formats QueryNotSupported message into JSON
diff --git a/redfish-core/lib/log_services.hpp b/redfish-core/lib/log_services.hpp
index 8a0bd3a..4b48873 100644
--- a/redfish-core/lib/log_services.hpp
+++ b/redfish-core/lib/log_services.hpp
@@ -2842,7 +2842,8 @@
     invalid,
 };
 
-OEMDiagnosticType getOEMDiagnosticType(const std::string_view& oemDiagStr)
+inline OEMDiagnosticType
+    getOEMDiagnosticType(const std::string_view& oemDiagStr)
 {
     if (oemDiagStr == "OnDemand")
     {
diff --git a/redfish-core/lib/ut/service_root_test.cpp b/redfish-core/lib/ut/service_root_test.cpp
index a835879..9e6c423 100644
--- a/redfish-core/lib/ut/service_root_test.cpp
+++ b/redfish-core/lib/ut/service_root_test.cpp
@@ -8,7 +8,7 @@
 
 #include "gmock/gmock.h"
 
-void assertServiceRootGet(crow::Response& res)
+static void assertServiceRootGet(crow::Response& res)
 {
     nlohmann::json& json = res.jsonValue;
     EXPECT_EQ(json["@odata.id"], "/redfish/v1");
diff --git a/redfish-core/src/error_messages.cpp b/redfish-core/src/error_messages.cpp
index a301307..7733db3 100644
--- a/redfish-core/src/error_messages.cpp
+++ b/redfish-core/src/error_messages.cpp
@@ -107,8 +107,8 @@
     field.push_back(message);
 }
 
-nlohmann::json getLog(redfish::registries::base::Index name,
-                      std::span<const std::string_view> args)
+static nlohmann::json getLog(redfish::registries::base::Index name,
+                             std::span<const std::string_view> args)
 {
     size_t index = static_cast<size_t>(name);
     if (index >= redfish::registries::base::registry.size())
