"""Diagnostics support for Ring.""" from __future__ import annotations from typing import Any import ring_doorbell from homeassistant.components.diagnostics import async_redact_data from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from .const import DOMAIN TO_REDACT = { "id", "device_id", "description", "first_name", "last_name", "email", "location_id", "ring_net_id", "wifi_name", "latitude", "longitude", "address", "ring_id", } async def async_get_config_entry_diagnostics( hass: HomeAssistant, entry: ConfigEntry ) -> dict[str, Any]: """Return diagnostics for a config entry.""" ring: ring_doorbell.Ring = hass.data[DOMAIN][entry.entry_id]["api"] devices_raw = [] for device_type in ring.devices_data: for device_id in ring.devices_data[device_type]: devices_raw.append(ring.devices_data[device_type][device_id]) return async_redact_data( {"device_data": devices_raw}, TO_REDACT, )