diff --git a/gso/services/librenms_client.py b/gso/services/librenms_client.py
index a4857b9d4a59eb5304fdea193c756ad42a2e09c8..2e04a866e3f85b539f22031b3f878b2149823d0f 100644
--- a/gso/services/librenms_client.py
+++ b/gso/services/librenms_client.py
@@ -7,6 +7,7 @@ from typing import Any, Literal
 
 import requests
 from requests import HTTPError, Response
+from requests.adapters import HTTPAdapter
 
 from gso.settings import load_oss_params
 from gso.utils.helpers import SNMPVersion
@@ -26,6 +27,7 @@ class LibreNMSClient:
         self.snmp_config = config.SNMP
 
         self.session = requests.Session()
+        self.session.mount("https://", HTTPAdapter(max_retries=5))
         self.session.headers.update({
             "User-Agent": f"geant-service-orchestrator/{metadata.version("geant-service-orchestrator")}",
             "Accept": "application/json",
@@ -34,11 +36,11 @@ class LibreNMSClient:
         })
 
     def _send_request(
-            self, method: Literal["GET", "POST", "PUT", "DELETE"], endpoint: str, data: dict[str, Any] | None = None
+        self, method: Literal["GET", "POST", "PUT", "DELETE"], endpoint: str, data: dict[str, Any] | None = None
     ) -> Response:
         url = self.base_url + endpoint
         logger.debug("LibreNMS - Sending request", extra={"method": method, "endpoint": url, "form_data": data})
-        result = self.session.request(method, url, json=data)
+        result = self.session.request(method, url, json=data, timeout=(0.5, 75))
         logger.debug("LibreNMS - Received response", extra=result.__dict__)
 
         return result