home-assistant/core · warning · ConfigEntryNotReady

api_error

api_error

Error message

An error occurred while communicating with the Aqvify API for {entry}

What it means

ConfigEntryNotReady raised during Aqvify coordinator setup (translation_key 'api_error') when async_get_account_id() raises aiohttp ClientResponseError — the Aqvify API answered with a non-auth HTTP error (4xx/5xx). HA will treat the entry as not ready and automatically retry setup with backoff.

Source

Thrown at homeassistant/components/aqvify/coordinator.py:81

            update_interval=UPDATE_INTERVAL,
            config_entry=entry,
        )

        self.api_client = api_client
        self.previous_devices: set[str] = set()

    @override
    async def _async_setup(self) -> None:
        """Set up the coordinator."""
        try:
            await self.api_client.async_get_account_id()
        except AqvifyAuthException:
            raise ConfigEntryAuthFailed(
                translation_domain=DOMAIN,
                translation_key="invalid_api_key",
            ) from None
        except ClientResponseError as err:
            raise ConfigEntryNotReady(
                translation_domain=DOMAIN,
                translation_key="api_error",
                translation_placeholders={
                    "entry": self.config_entry.title,
                },
            ) from err
        except TimeoutError as err:
            raise ConfigEntryNotReady(
                translation_domain=DOMAIN,
                translation_key="api_timeout",
                translation_placeholders={
                    "entry": self.config_entry.title,
                },
            ) from err

    @override
    async def _async_update_data(self) -> AqvifyCoordinatorData:
        """Fetch device state."""

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Do nothing immediately — ConfigEntryNotReady makes HA retry setup automatically; check if the error clears within minutes.
  2. Check the Aqvify service status / their support channel if every retry fails.
  3. If a 404 persists, update Home Assistant to the latest core version in case the Aqvify API path changed.
Defensive patterns

Strategy: retry

Try / catch

from aiohttp import ClientResponseError

try:
    await api_client.async_get_account_id()
except ClientResponseError as err:
    if err.status in (401, 403):
        raise ConfigEntryAuthFailed(...) from err
    raise ConfigEntryNotReady(f"API error {err.status}") from err

Prevention

When it happens

Trigger: The first authenticated setup call returns an HTTP status such as 500/502/503/404; placeholder 'entry' carries the config entry title for the translated message.

Common situations: Aqvify API outage or maintenance; rate limiting returning 429; server-side incidents; API version change altering the endpoint.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/1eee3d27bd19ddba. Report an issue: GitHub.