home-assistant/core · warning · UpdateFailed

An error occurred while retrieving data from the Airly API f

Error message

An error occurred while retrieving data from the Airly API for {entry}: no measuring stations in this area

What it means

Raised by the Airly coordinator after a successful API response when the first air-quality index entry's description equals NO_AIRLY_SENSORS, meaning the nearest/point location has no measuring stations providing data. It is an UpdateFailed with translation key no_station, so the entry keeps retrying but data will not appear until a station comes online or coordinates change.

Source

Thrown at homeassistant/components/airly/coordinator.py:138

            "Requests remaining: %s/%s",
            self.airly.requests_remaining,
            self.airly.requests_per_day,
        )

        # Airly API sometimes returns None for requests remaining so we update
        # update_interval only if we have valid value.
        if self.airly.requests_remaining:
            self.update_interval = set_update_interval(
                len(self.hass.config_entries.async_entries(DOMAIN)),
                self.airly.requests_remaining,
            )

        values = measurements.current["values"]
        index = measurements.current["indexes"][0]
        standards = measurements.current["standards"]

        if index["description"] == NO_AIRLY_SENSORS:
            raise UpdateFailed(
                translation_domain=DOMAIN,
                translation_key="no_station",
                translation_placeholders={"entry": self.config_entry.title},
            )
        for value in values:
            data[value["name"]] = value["value"]
        for standard in standards:
            data[f"{standard['pollutant']}_LIMIT"] = standard["limit"]
            data[f"{standard['pollutant']}_PERCENT"] = standard["percent"]
        data[ATTR_API_CAQI] = index["value"]
        data[ATTR_API_CAQI_LEVEL] = index["level"].lower().replace("_", " ")
        data[ATTR_API_CAQI_DESCRIPTION] = index["description"]
        data[ATTR_API_ADVICE] = index["advice"]
        return data

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Verify the coordinates in the config entry are the intended location (not defaults or swapped lat/long)
  2. Check the Airly map (map.airly.org) to confirm an active station within range of the coordinates
  3. If a station exists but is offline, wait for it to resume and let the coordinator retry
  4. If the region genuinely has no coverage, remove the Airly entry and use a different air-quality provider
Defensive patterns

Strategy: validation

Validate before calling

# Before adding the entry, confirm Airly has a station near the coordinates:
# curl -H "apikey: $KEY" "https://api.airly.eu/v2/nearest?lat=..&lng=..&maxDistanceKm=5"
# A non-empty `station` field in the response means the area is covered.

Prevention

When it happens

Trigger: Configured latitude/longitude resolve (via /v2/nearest or /v2/point) to an area where Airly reports no sensors — remote areas, oceans, or regions outside Airly's station coverage; or all nearby stations are temporarily offline.

Common situations: Using home-assistant coordinates outside Europe where Airly has no coverage, or typo'd/garbage coordinates (e.g. 0,0 default) in the config entry.

Related errors


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