diff --git a/src/synclean/models/config.py b/src/synclean/models/config.py index eb5ea29..258e02b 100644 --- a/src/synclean/models/config.py +++ b/src/synclean/models/config.py @@ -14,9 +14,6 @@ class SynapseConfig: """Validate Synapse config after initialization.""" if not self.homeserver.strip(): raise ValueError("Homeserver URL cannot be empty") - parsed = urlparse(self.homeserver) - if not all([parsed.scheme, parsed.netloc]): - raise ValueError(f"Invalid homeserver URL: {self.homeserver}") if not self.access_token.strip(): raise ValueError("Access token cannot be empty") @@ -28,9 +25,12 @@ class SynapseConfig: raise ValueError("Blacklist contains invalid username") @property - def base_url(self) -> str: + def admin_api_url(self) -> str: """Get normalized base URL with trailing slash.""" - return self.homeserver.rstrip('/') + '/_synapse/admin' + parsed = urlparse(self.homeserver) + if not parsed.scheme: + return f"https://{self.homeserver}/_synapse/admin" + return self.homeserver.rstrip('/') + "/_synapse/admin" @property def headers(self) -> Dict[str, str]: