{"record":{"id":"4353f5a892f0fe3c","repo":"home-assistant/core","slug":"oauth-implementation-not-available","errorCode":null,"errorMessage":"OAuth implementation not available","messagePattern":"OAuth implementation not available","errorType":"exception","errorClass":"ConfigEntryNotReady","httpStatus":null,"severity":"warning","filePath":"homeassistant/components/august/__init__.py","lineNumber":46,"sourceCode":"from .data import AugustData\nfrom .gateway import AugustGateway\nfrom .util import async_create_august_clientsession\n\ntype AugustConfigEntry = ConfigEntry[AugustData]\n\n\nasync def async_setup_entry(hass: HomeAssistant, entry: AugustConfigEntry) -> bool:\n    \"\"\"Set up August from a config entry.\"\"\"\n    # Check if this is a legacy config entry that needs migration to OAuth\n    if \"auth_implementation\" not in entry.data:\n        # This is a legacy entry using username/password, trigger reauth\n        raise ConfigEntryAuthFailed(\"Migration to OAuth required\")\n\n    session = async_create_august_clientsession(hass)\n    try:\n        implementation = await async_get_config_entry_implementation(hass, entry)\n    except ImplementationUnavailableError as err:\n        raise ConfigEntryNotReady(\"OAuth implementation not available\") from err\n    oauth_session = OAuth2Session(hass, entry, implementation)\n    august_gateway = AugustGateway(Path(hass.config.config_dir), session, oauth_session)\n    try:\n        await async_setup_august(hass, entry, august_gateway)\n    except OAuth2TokenRequestReauthError as err:\n        raise ConfigEntryAuthFailed from err\n    except (RequireValidation, InvalidAuth) as err:\n        raise ConfigEntryAuthFailed from err\n    except TimeoutError as err:\n        raise ConfigEntryNotReady(\"Timed out connecting to august api\") from err\n    except (\n        AugustApiAIOHTTPError,\n        OAuth2TokenRequestError,\n        ClientError,\n        CannotConnect,\n    ) as err:\n        raise ConfigEntryNotReady from err\n    await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)","sourceCodeStart":28,"sourceCodeEnd":64,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/august/__init__.py#L28-L64","documentation":"ConfigEntryNotReady('OAuth implementation not available') raised when async_get_config_entry_implementation raises ImplementationUnavailableError — the OAuth2 implementation recorded for the August entry (typically via application credentials) cannot currently be provided. NotReady means HA will retry setup with backoff rather than demanding reauth.","triggerScenarios":"The August OAuth implementation is provided by an application_credentials entry (often from a cloud/Nabu Casa helper or custom wrapper) that is not yet loaded or was removed; race during startup where the provider integration loads after August.","commonSituations":"Custom application credentials deleted after the August entry was created; startup ordering issues after moving config between instances; the credentials-providing integration failed to load.","solutions":["Wait one coordinator retry cycle — NotReady retries automatically and often self-heals once the provider loads","Verify the application credential for August exists under Settings > Application Credentials (or restore it)","If a custom implementation was removed permanently, delete and recreate the August config entry"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep the application credential (Settings > Application Credentials) that backs August OAuth intact","Don't uninstall the integration providing the credentials while August entries exist","NotReady retries automatically — wait a few minutes before manual action"],"tags":["august","oauth","application-credentials","config-entry","startup"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}