diff --git a/homeassistant/components/habitica/__init__.py b/homeassistant/components/habitica/__init__.py index a1e0f4a0696..e8c0af8f97f 100644 --- a/homeassistant/components/habitica/__init__.py +++ b/homeassistant/components/habitica/__init__.py @@ -151,12 +151,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: HabiticaConfigEntry) -> username = entry.data[CONF_API_USER] password = entry.data[CONF_API_KEY] - api = HAHabitipyAsync( + api = await hass.async_add_executor_job( + HAHabitipyAsync, { "url": url, "login": username, "password": password, - } + }, ) try: user = await api.user.get(userFields="profile") diff --git a/homeassistant/components/habitica/config_flow.py b/homeassistant/components/habitica/config_flow.py index 4c733bcf1d5..5dd9fb2aa22 100644 --- a/homeassistant/components/habitica/config_flow.py +++ b/homeassistant/components/habitica/config_flow.py @@ -33,12 +33,13 @@ async def validate_input(hass: HomeAssistant, data: dict[str, str]) -> dict[str, """Validate the user input allows us to connect.""" websession = async_get_clientsession(hass) - api = HabitipyAsync( - conf={ + api = await hass.async_add_executor_job( + HabitipyAsync, + { "login": data[CONF_API_USER], "password": data[CONF_API_KEY], "url": data[CONF_URL] or DEFAULT_URL, - } + }, ) try: await api.user.get(session=websession)