diff --git a/redfish-core/lib/certificate_service.hpp b/redfish-core/lib/certificate_service.hpp
index 9e958cb..fc347dc 100644
--- a/redfish-core/lib/certificate_service.hpp
+++ b/redfish-core/lib/certificate_service.hpp
@@ -1,8 +1,10 @@
 #pragma once
 
 #include <app.hpp>
+#include <async_resp.hpp>
 #include <boost/system/linux_error.hpp>
 #include <dbus_utility.hpp>
+#include <http_response.hpp>
 #include <query.hpp>
 #include <registries/privilege_registry.hpp>
 
@@ -702,7 +704,8 @@
             }
         }
         asyncResp->res.addHeader(
-            "Location", std::string_view(certURL.data(), certURL.size()));
+            boost::beast::http::field::location,
+            std::string_view(certURL.data(), certURL.size()));
         },
         service, objectPath, certs::dbusPropIntf, "GetAll",
         certs::certPropIntf);
diff --git a/redfish-core/lib/log_services.hpp b/redfish-core/lib/log_services.hpp
index 7740014..34e9f73 100644
--- a/redfish-core/lib/log_services.hpp
+++ b/redfish-core/lib/log_services.hpp
@@ -1747,9 +1747,10 @@
             std::string_view strData(data.data(), data.size());
             std::string output = crow::utility::base64encode(strData);
 
-            asyncResp->res.addHeader("Content-Type",
+            asyncResp->res.addHeader(boost::beast::http::field::content_type,
                                      "application/octet-stream");
-            asyncResp->res.addHeader("Content-Transfer-Encoding", "Base64");
+            asyncResp->res.addHeader(
+                boost::beast::http::field::content_transfer_encoding, "Base64");
             asyncResp->res.body() = std::move(output);
             },
             "xyz.openbmc_project.Logging",
@@ -2971,7 +2972,8 @@
 
             // Configure this to be a file download when accessed
             // from a browser
-            asyncResp->res.addHeader("Content-Disposition", "attachment");
+            asyncResp->res.addHeader(
+                boost::beast::http::field::content_disposition, "attachment");
         };
         crow::connections::systemBus->async_method_call(
             std::move(getStoredLogCallback), crashdumpObject,
@@ -3620,9 +3622,10 @@
             const char* d = reinterpret_cast<const char*>(c.data());
             std::string_view strData(d, c.size());
 
-            asyncResp->res.addHeader("Content-Type",
+            asyncResp->res.addHeader(boost::beast::http::field::content_type,
                                      "application/octet-stream");
-            asyncResp->res.addHeader("Content-Transfer-Encoding", "Base64");
+            asyncResp->res.addHeader(
+                boost::beast::http::field::content_transfer_encoding, "Base64");
             asyncResp->res.body() = crow::utility::base64encode(strData);
             },
             "xyz.openbmc_project.State.Boot.PostCode0",
