diff --git a/platformio/clients/account.py b/platformio/clients/account.py index c7c2c6fa..69c860f8 100644 --- a/platformio/clients/account.py +++ b/platformio/clients/account.py @@ -16,7 +16,7 @@ import os import time from platformio import __accounts_api__, app -from platformio.clients.http import HTTPClient +from platformio.clients.http import HTTPClient, HTTPClientError from platformio.exception import PlatformioException @@ -69,6 +69,12 @@ class AccountClient(HTTPClient): # pylint:disable=too-many-public-methods kwargs["headers"] = headers return self.fetch_json_data(*args, **kwargs) + def fetch_json_data(self, *args, **kwargs): + try: + return super(AccountClient, self).fetch_json_data(*args, **kwargs) + except HTTPClientError as exc: + raise AccountError(str(HTTPClientError)) from exc + def login(self, username, password): try: self.fetch_authentication_token()