diff --git a/duniterpy/api/endpoint.py b/duniterpy/api/endpoint.py
index 50833ab528e3b76a77ea18989824972edaef436b..08792235636ac3562ef23eb9ff7455daf906dd5e 100644
--- a/duniterpy/api/endpoint.py
+++ b/duniterpy/api/endpoint.py
@@ -389,9 +389,12 @@ class WS2PEndpoint(Endpoint):
         :param proxy: Proxy url
         :return:
         """
-        return ConnectionHandler(
-            "https", "wss", self.server, self.port, self.path, session, proxy
-        )
+        http_scheme = 'http'
+        websocket_scheme = 'ws'
+        if self.port == 443:
+            http_scheme += 's'
+            websocket_scheme += 's'
+        return ConnectionHandler(http_scheme, websocket_scheme, self.server, self.port, self.path, session, proxy)
 
     def __str__(self) -> str:
         return self.inline()