home-assistant/core · warning · UpdateFailed
service_unavailable
Error message
service_unavailable
What it means
Raised as UpdateFailed (translation service_unavailable, retry_after 60s) when api.update() raises UnknownEndpointError: the Anglian Water API returned an unexpected/unknown response for an endpoint, treated as a transient service problem. The coordinator backs off one minute and retries; last-known entity values persist.
Source
Thrown at homeassistant/components/anglian_water/coordinator.py:88
try:
await self.api.update(self.config_entry.data[CONF_ACCOUNT_NUMBER])
await self._insert_statistics()
except ConsentRequiredError as err:
async_create_consent_required_issue(
self.hass, self.config_entry.data[CONF_ACCOUNT_NUMBER]
)
raise UpdateFailed(
translation_domain=DOMAIN,
translation_key="consent_required",
retry_after=900.0,
) from err
except (ExpiredAccessTokenError, InvalidGrantError) as err:
raise ConfigEntryAuthFailed(
translation_domain=DOMAIN,
translation_key="auth_expired",
) from err
except UnknownEndpointError as err:
raise UpdateFailed(
translation_domain=DOMAIN,
translation_key="service_unavailable",
retry_after=60.0,
) from err
else:
async_delete_consent_required_issue(
self.hass, self.config_entry.data[CONF_ACCOUNT_NUMBER]
)
async def _insert_statistics(self) -> None:
"""Insert statistics for water meters into Home Assistant."""
for meter in self.api.meters.values():
id_prefix = (
f"{self.config_entry.data[CONF_ACCOUNT_NUMBER]}_{meter.serial_number}"
)
usage_statistic_id = f"{DOMAIN}:{id_prefix}_usage".lower()
_LOGGER.debug("Updating statistics for meter %s", meter.serial_number)
name_prefix = (View on GitHub (pinned to 58a3fdb3ea)
Solutions
- Wait — the 60s retry usually rides out provider blips; check the Anglian Water service status.
- If it persists for hours, update Home Assistant so a patched anglian-water library/endpoint mapping is picked up.
- Report via GitHub issue with log timeframe if a new API change is suspected.
Defensive patterns
Strategy: retry
Try / catch
except UpdateFailed: accept the 60s retry cadence; only investigate after sustained failures spanning hours.
Prevention
- Keep HA updated so endpoint-mapping fixes for Anglian Water API changes arrive.
- Check provider status before debugging local config for this error.
When it happens
Trigger: api.update() hitting an endpoint whose response the library cannot parse or that returns an undocumented error code — API version changes, maintenance responses, or 404/5xx pages replacing JSON.
Common situations: Anglian Water backend deployments or outages; library (anglian-water API package) lagging behind an API change until an integration update ships.
Related errors
- consent_required
- Unable find multi-factor auth module: {mfa_module_id}
- {error}
- {error}
- Error communicating with API: {err}
AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14).
Data as JSON: /api/errors/8e4f164666e1deef.
Report an issue: GitHub.