home-assistant/core · error · UpdateFailed

setup_parse_exception

Error message

setup_parse_exception

What it means

UpdateFailed with translation_key setup_parse_exception (bring/coordinator.py:97), rendered as 'Failed to parse server response, try again later'. Raised when load_lists() raises BringParseException — the HTTP request succeeded but the response body could not be parsed (invalid/unexpected JSON).

Source

Thrown at homeassistant/components/bring/coordinator.py:97

            name=DOMAIN,
            update_interval=timedelta(seconds=90),
        )
        self.bring = bring
        self.previous_lists: set[str] = set()

    @override
    async def _async_update_data(self) -> dict[str, BringData]:
        """Fetch the latest data from bring."""

        try:
            self.lists = (await self.bring.load_lists()).lists
        except BringRequestException as e:
            raise UpdateFailed(
                translation_domain=DOMAIN,
                translation_key="setup_request_exception",
            ) from e
        except BringParseException as e:
            raise UpdateFailed(
                translation_domain=DOMAIN,
                translation_key="setup_parse_exception",
            ) from e
        except BringAuthException as e:
            raise ConfigEntryAuthFailed(
                translation_domain=DOMAIN,
                translation_key="setup_authentication_exception",
                translation_placeholders={CONF_EMAIL: self.bring.mail},
            ) from e

        if self.previous_lists - (
            current_lists := {lst.listUuid for lst in self.lists}
        ):
            self._purge_deleted_lists()
        new_lists = current_lists - self.previous_lists
        self.previous_lists = current_lists

        list_dict: dict[str, BringData] = {}

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Update Home Assistant (which pins bring-client) to get a library compatible with the current API schema.
  2. Retry later — transient parse failures during server-side rollouts usually clear.
  3. Verify no proxy/captive portal is intercepting the response (curl the API from the HA host).
  4. Report with debug logs if it persists across updates.
Defensive patterns

Strategy: retry

Prevention

When it happens

Trigger: The Bring! server returns a 200 with malformed or schema-shifted JSON for the list endpoint; the bring-client library then raises BringParseException, converted here to UpdateFailed.

Common situations: Bring! deploying a breaking API change before the client library catches up; a proxy or captive portal injecting an HTML error page where JSON is expected; version mismatch between the installed bring-client and the live API.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/d35e81dfbf08a516. Report an issue: GitHub.