diff --git a/API.md b/API.md index e6720bd71..62222d8bd 100644 --- a/API.md +++ b/API.md @@ -417,7 +417,7 @@ Get all available addons. } ``` -For reset custom network/audio settings, set it `null`. +Reset custom network/audio/options, set it `null`. - POST `/addons/{addon}/start` diff --git a/hassio/addons/addon.py b/hassio/addons/addon.py index 7944de1b6..c66a5e4c3 100644 --- a/hassio/addons/addon.py +++ b/hassio/addons/addon.py @@ -120,7 +120,10 @@ class Addon(CoreSysAttributes): @options.setter def options(self, value): """Store user addon options.""" - self._data.user[self._id][ATTR_OPTIONS] = deepcopy(value) + if value is None: + self._data.user[self._id][ATTR_OPTIONS] = {} + else: + self._data.user[self._id][ATTR_OPTIONS] = deepcopy(value) self._data.save() @property diff --git a/hassio/api/addons.py b/hassio/api/addons.py index 8f593f79f..ddbfd8894 100644 --- a/hassio/api/addons.py +++ b/hassio/api/addons.py @@ -140,7 +140,7 @@ class APIAddons(CoreSysAttributes): addon = self._extract_addon(request) addon_schema = SCHEMA_OPTIONS.extend({ - vol.Optional(ATTR_OPTIONS): addon.schema, + vol.Optional(ATTR_OPTIONS): vol.Any(None, addon.schema), }) body = await api_validate(addon_schema, request)