{"record":{"id":"57704ca0812ea86e","repo":"home-assistant/core","slug":"setup-auth-error","errorCode":"setup_auth_error","errorMessage":"Authentication failed while retrieving static device data","messagePattern":"Authentication failed while retrieving static device data","errorType":"exception","errorClass":"ConfigEntryAuthFailed","httpStatus":null,"severity":"error","filePath":"homeassistant/components/bsblan/__init__.py","lineNumber":203,"sourceCode":"        # Devices reporting a JSON-API version below v2 operate in a reduced\n        # single-circuit mode. A previously configured entry may still list\n        # additional circuits from when the device ran newer firmware, which\n        # would make setup fail when fetching those now-unsupported circuits.\n        # Restrict to the default single circuit so the integration still loads.\n        if _is_reduced_api_mode(bsblan.json_api_version):\n            circuits = list(DEFAULT_HEATING_CIRCUITS)\n\n        # Fetch device metadata\n        device = await bsblan.device()\n        info = await bsblan.info()\n    except BSBLANConnectionError as err:\n        raise ConfigEntryNotReady(\n            translation_domain=DOMAIN,\n            translation_key=\"setup_connection_error\",\n            translation_placeholders={\"host\": entry.data[CONF_HOST]},\n        ) from err\n    except BSBLANAuthError as err:\n        raise ConfigEntryAuthFailed(\n            translation_domain=DOMAIN,\n            translation_key=\"setup_auth_error\",\n        ) from err\n    except TimeoutError as err:\n        raise ConfigEntryNotReady(\n            translation_domain=DOMAIN,\n            translation_key=\"setup_connection_error\",\n            translation_placeholders={\"host\": entry.data[CONF_HOST]},\n        ) from err\n    except BSBLANVersionError as err:\n        # The device does not report a supported JSON-API version, so the\n        # integration cannot operate. Surface a clear, actionable error.\n        firmware_version = bsblan.device_info.version if bsblan.device_info else None\n        raise ConfigEntryError(\n            translation_domain=DOMAIN,\n            translation_key=\"setup_outdated_firmware\",\n            translation_placeholders={\n                \"firmware_version\": firmware_version or \"unknown\"","sourceCodeStart":185,"sourceCodeEnd":221,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/bsblan/__init__.py#L185-L221","documentation":"Raised during bsblan config-entry setup when the static-data fetch raises BSBLANAuthError, i.e. the BSB-LAN device answered but rejected the configured credentials (HTTP 401/403 from the python-bsblan library). It is raised as ConfigEntryAuthFailed with translation key `setup_auth_error`, which forces the config entry into the re-auth flow so the user is prompted for a new password.","triggerScenarios":"Loading a bsblan entry where the device has HTTP basic auth enabled and the stored user/pass is wrong, was changed on the device, or the passkey/API-password scheme changed after a firmware update.","commonSituations":"User changed the BSB-LAN web password in the device's config; migrated device settings; firmware update changed auth from user/pass to API key or vice versa; typo during initial setup that only fails on protected endpoints.","solutions":["Follow the re-auth prompt that appears on the integration card and re-enter the correct username/password.","Verify the same credentials work by logging into `http://<host>/` in a browser.","If auth style changed after a firmware update, reconfigure the entry (delete and re-add) so the right fields are stored."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep BSB-LAN web credentials stable, or update the HA entry immediately after changing them.","Test credentials in the browser before entering them in the config flow.","Respond to the re-auth prompt promptly; entities stay unavailable until resolved."],"tags":["home-assistant","bsblan","authentication","setup","credentials"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}