{"record":{"id":"f03bd0bb04162f23","repo":"home-assistant/core","slug":"error-communicating-with-api-err","errorCode":null,"errorMessage":"Error communicating with API: {err}","messagePattern":"Error communicating with API: (.+?)","errorType":"exception","errorClass":"UpdateFailed","httpStatus":null,"severity":"error","filePath":"homeassistant/components/aladdin_connect/coordinator.py","lineNumber":52,"sourceCode":"            hass,\n            logger=_LOGGER,\n            config_entry=entry,\n            name=\"Aladdin Connect Coordinator\",\n            update_interval=SCAN_INTERVAL,\n        )\n        self.client = client\n\n    @override\n    async def _async_update_data(self) -> dict[str, GarageDoor]:\n        \"\"\"Fetch data from the Aladdin Connect API.\"\"\"\n        try:\n            doors = await self.client.get_doors()\n        except aiohttp.ClientResponseError as err:\n            if 400 <= err.status < 500:\n                raise ConfigEntryAuthFailed(err) from err\n            raise UpdateFailed(f\"Error communicating with API: {err}\") from err\n        except aiohttp.ClientError as err:\n            raise UpdateFailed(f\"Error communicating with API: {err}\") from err\n\n        return {door.unique_id: door for door in doors}\n","sourceCodeStart":34,"sourceCodeEnd":55,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/aladdin_connect/coordinator.py#L34-L55","documentation":"UpdateFailed('Error communicating with API: {err}') raised by the Aladdin Connect coordinator for aiohttp.ClientError that is not a 4xx ClientResponseError — i.e. 5xx server errors and transport-level failures (DNS, connection refused, timeouts surfacing as ClientError). HA shows the message and retries the poll with backoff.","triggerScenarios":"get_doors() request failing at transport level (HA offline, DNS failure, Aladdin API unreachable) or returning HTTP 5xx.","commonSituations":"Aladdin/Genie cloud outage; local internet drop; DNS problems on the HA host; TLS interception breaking the session.","solutions":["Verify outbound internet and DNS from the HA host.","Check Aladdin Connect service status / app behavior; if the app also fails, wait for recovery.","Let the coordinator retry — transient ClientErrors self-heal.","Persistent failure with a specific {err} (e.g. certificate) points to proxy/firewall interception to fix locally."],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":"try:\n    doors = await client.get_doors()\nexcept aiohttp.ClientError as err:\n    raise UpdateFailed(f\"Error communicating with API: {err}\") from err","preventionTips":["Let the coordinator's backoff retry transient ClientErrors.","Monitor DNS/outbound connectivity on the HA host for chronic failures.","Do not treat 5xx as auth failures; only 4xx indicate re-auth."],"tags":["http-5xx","network","coordinator","update-failed"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}