diff --git a/custom_components/einskomma5grad/api/client.py b/custom_components/einskomma5grad/api/client.py index 0493460..b3e7de1 100644 --- a/custom_components/einskomma5grad/api/client.py +++ b/custom_components/einskomma5grad/api/client.py @@ -59,7 +59,10 @@ def get_token(self) -> str: # Check for expiration and refresh token if self.is_token_expiring(60): - return self.refresh_token() + try: + return self.refresh_token() + except AuthenticationError: + return self.login() return self.token_set["access_token"] @@ -146,6 +149,9 @@ def refresh_token(self) -> str: if self.token_set is None: raise AuthenticationError("No token set") + if "refresh_token" not in self.token_set: + raise AuthenticationError("No refresh token found") + res = requests.post( url=self.TOKEN_URL, json={