diff --git a/http/http_request.hpp b/http/http_request.hpp
index bfbe2e3..c2778ca 100644
--- a/http/http_request.hpp
+++ b/http/http_request.hpp
@@ -32,6 +32,8 @@
   private:
     boost::urls::url urlBase;
 
+    Request(const Request& other) = default;
+
   public:
     boost::asio::ip::address ipAddress;
 
@@ -51,13 +53,17 @@
 
     Request() = default;
 
-    Request(const Request& other) = default;
     Request(Request&& other) = default;
 
-    Request& operator=(const Request&) = default;
+    Request& operator=(const Request&) = delete;
     Request& operator=(Request&&) = default;
     ~Request() = default;
 
+    Request copy() const
+    {
+        return {*this};
+    }
+
     void addHeader(std::string_view key, std::string_view value)
     {
         req.insert(key, value);
