{"record":{"id":"07f4eec99520b126","repo":"home-assistant/core","slug":"can-not-connect-to-host","errorCode":null,"errorMessage":"Can not connect to host","messagePattern":"Can not connect to host","errorType":"exception","errorClass":"ConfigEntryNotReady","httpStatus":null,"severity":"error","filePath":"homeassistant/components/blink/coordinator.py","lineNumber":52,"sourceCode":"        self, hass: HomeAssistant, config_entry: BlinkConfigEntry, api: Blink\n    ) -> None:\n        \"\"\"Initialize the data service.\"\"\"\n        self.api = api\n        super().__init__(\n            hass,\n            _LOGGER,\n            config_entry=config_entry,\n            name=DOMAIN,\n            update_interval=timedelta(seconds=SCAN_INTERVAL),\n        )\n\n    @override\n    async def _async_setup(self):\n        \"\"\"Set up the coordinator.\"\"\"\n        try:\n            await self.api.start()\n        except (ClientError, TimeoutError) as ex:\n            raise ConfigEntryNotReady(\"Can not connect to host\") from ex\n        except (BlinkTwoFARequiredError, UnauthorizedError) as ex:\n            raise ConfigEntryAuthFailed(\"Required Blink re-authentication\") from ex\n        except Exception as ex:\n            raise ConfigEntryError(\"Unknown error connecting to Blink\") from ex\n\n        if not self.api.available:\n            raise ConfigEntryNotReady\n\n    @override\n    async def _async_update_data(self) -> dict[str, Any]:\n        \"\"\"Async update wrapper.\"\"\"\n        try:\n            return await self.api.refresh(force=True)\n        except UnauthorizedError as ex:\n            raise ConfigEntryAuthFailed(\"Blink API authorization failed\") from ex\n","sourceCodeStart":34,"sourceCodeEnd":68,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/blink/coordinator.py#L34-L68","documentation":"ConfigEntryNotReady('Can not connect to host') raised from BlinkCoordinator._async_setup when api.start() raises aiohttp ClientError or TimeoutError. ConfigEntryNotReady tells Home Assistant setup failed transiently; the entry stays in SETUP_RETRY and the coordinator retries with exponential backoff.","triggerScenarios":"Initial blinkpy login/startup HTTP request fails: DNS failure, TCP refused, TLS error (aiohttp ClientError) or the request exceeds the timeout during Blink's (historically slow) authentication handshake.","commonSituations":"Blink cloud outage or throttling; local network down or DNS broken; overly aggressive firewall/pihole blocking Blink endpoints; slow Blink auth servers during regional incidents; container without network at startup.","solutions":["Wait: Home Assistant retries setup automatically with backoff; check status changes to SETUP_RETRY then LOADED","Verify connectivity to Blink endpoints (curl https://rest.prod.immedia-semi.com) from the HA host","Check DNS/firewall/ad-blocker isn't blocking or rate-limiting Blink domains","If it persists for hours, check Blink status pages/community for an outage or API change"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":"# In a custom coordinator wrapping blink: catch and translate\ntry:\n    await api.start()\nexcept (ClientError, TimeoutError) as ex:\n    raise ConfigEntryNotReady(\"Can not connect to host\") from ex","preventionTips":["Let HA's SETUP_RETRY backoff work; do not delete/re-add the entry on first failure","Whitelist Blink endpoints on ad-blocking DNS/firewalls","Ensure the HA host has working DNS before startup"],"tags":["blink","network","config-entry-not-ready","timeout","coordinator"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}