diff --git a/include/http_utility.hpp b/include/http_utility.hpp
index e13dfc0..0f5bb8c 100644
--- a/include/http_utility.hpp
+++ b/include/http_utility.hpp
@@ -24,4 +24,29 @@
     }
     return false;
 }
+
+inline std::string urlEncode(const boost::string_view value)
+{
+    std::ostringstream escaped;
+    escaped.fill('0');
+    escaped << std::hex;
+
+    for (const char c : value)
+    {
+        // Keep alphanumeric and other accepted characters intact
+        if (isalnum(c) || c == '-' || c == '_' || c == '.' || c == '~')
+        {
+            escaped << c;
+            continue;
+        }
+
+        // Any other characters are percent-encoded
+        escaped << std::uppercase;
+        escaped << '%' << std::setw(2)
+                << static_cast<int>(static_cast<unsigned char>(c));
+        escaped << std::nouppercase;
+    }
+
+    return escaped.str();
+}
 } // namespace http_helpers
\ No newline at end of file
