{ "additionalProperties": true, "type": "object", "properties": { "homeassistant": { "anyOf": [{ "$ref": "#/definitions/HomeAssistantComponent" }, { "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }] }, "automation": { "anyOf": [{ "type": "array", "items": { "$ref": "#/definitions/Automation" } }, { "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }] }, "group": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "$ref": "#/definitions/GroupComponent" }] }, "panel_iframe": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "$ref": "#/definitions/PanelIframeComponent" }] }, "sensor": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/MqttSensor" }, { "$ref": "#/definitions/TemplateSensor" }, { "$ref": "#/definitions/OtherSensor" }] } }, { "type": "null" }] }, "scene": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "type": "array", "items": { "$ref": "#/definitions/SceneComponentEntry" } }] }, "input_boolean": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "$ref": "#/definitions/InputBooleanEntry" }] }, "script": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "$ref": "#/definitions/Script" }] }, "http": {}, "default_config": {}, "person": {}, "system_health": {}, "panel_custom": {}, "updater": {}, "discovery": {}, "conversation": {}, "history": {}, "config": {}, "logbook": {}, "sun": {}, "tts": {}, "recorder": {}, "ifttt": {}, "ios": {}, "mqtt": {}, "remote": {} }, "definitions": { "HomeAssistantComponent": { "type": "object", "properties": { "name": { "type": "string" }, "latitude": { "type": ["string", "number"] }, "longitude": { "type": ["string", "number"] }, "elevation": { "type": "number" }, "unit_system": { "enum": ["imperial", "metric"], "type": "string" }, "time_zone": { "type": "string" }, "whitelist_external_dirs": { "type": "array", "items": { "type": "string" } }, "customize": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "$ref": "#/definitions/CustomizeComponent" }] }, "customize_domain": {}, "customize_glob": {}, "packages": { "anyOf": [{ "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }, { "type": "array", "items": { "$ref": "#/definitions/HomeAssistantComponent" } }] }, "auth_providers": { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/HomeAssistantAuthProvider" }, { "$ref": "#/definitions/TrustedNetworksAuthProvider" }, { "$ref": "#/definitions/CommandLineAuthProvider" }, { "$ref": "#/definitions/LegacyApiPasswordAuthProvider" }] } }, "auth_mfa_modules": { "anyOf": [{ "type": "array", "items": {} }, { "$ref": "#/definitions/IncludeTag" }, { "$ref": "#/definitions/IncludeFolderTag" }] } }, "additionalProperties": false }, "IncludeTag": { "type": "string", "pattern": "[.]yaml|[.]yml$" }, "IncludeFolderTag": { "type": "string" }, "CustomizeComponent": { "type": "object", "additionalProperties": { "$ref": "#/definitions/CustomizeComponentEntry" } }, "CustomizeComponentEntry": { "additionalProperties": true, "type": "object", "properties": { "friendly_name": { "type": "string" }, "homebridge_name": { "type": "string" }, "hidden": { "type": "boolean" }, "homebridge_hidden": { "type": "boolean" }, "emulated_hue_hidden": { "type": "boolean" }, "entity_picture": { "type": "string" }, "icon": { "type": "string" }, "assumed_state": { "type": "boolean" }, "device_class": { "type": "string" }, "unit_of_measurement": { "type": "string" }, "initial_state": { "type": "boolean" } } }, "HomeAssistantAuthProvider": { "type": "object", "properties": { "type": { "type": "string", "enum": ["homeassistant"] } }, "additionalProperties": false, "required": ["type"] }, "TrustedNetworksAuthProvider": { "type": "object", "properties": { "type": { "type": "string", "enum": ["trusted_networks"] }, "trusted_networks": { "anyOf": [{ "type": "array", "items": {} }, { "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "trusted_users": { "anyOf": [{ "type": "array", "items": {} }, { "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "allow_bypass_login": { "type": "boolean" } }, "additionalProperties": false, "required": ["trusted_networks", "type"] }, "CommandLineAuthProvider": { "type": "object", "properties": { "type": { "type": "string", "enum": ["command_line"] }, "command": { "type": "string" }, "args": {}, "meta": { "type": "boolean" } }, "additionalProperties": false, "required": ["command", "type"] }, "LegacyApiPasswordAuthProvider": { "type": "object", "properties": { "type": { "type": "string", "enum": ["legacy_api_password"] }, "api_password": { "anyOf": [{ "$ref": "#/definitions/SecretTag" }, { "type": "string" }] } }, "additionalProperties": false, "required": ["api_password", "type"] }, "SecretTag": { "type": "string", "pattern": "[.]yaml|[.]yml$" }, "Automation": { "type": "object", "properties": { "id": { "type": "string" }, "alias": { "type": "string" }, "initial_state": { "type": ["string", "boolean"] }, "hide_entity": { "type": "boolean" }, "trigger": { "anyOf": [{ "$ref": "#/definitions/HaTrigger" }, { "$ref": "#/definitions/SunTrigger" }, { "$ref": "#/definitions/TimeTrigger" }, { "$ref": "#/definitions/TemplateTrigger" }, { "$ref": "#/definitions/WebhookTrigger" }, { "$ref": "#/definitions/EventTrigger" }, { "$ref": "#/definitions/TimePatternTrigger" }, { "$ref": "#/definitions/MqttTrigger" }, { "$ref": "#/definitions/GeoLocationTrigger" }, { "$ref": "#/definitions/StateTrigger" }, { "$ref": "#/definitions/ZoneTrigger" }, { "$ref": "#/definitions/NumericStateTrigger" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/HaTrigger" }, { "$ref": "#/definitions/SunTrigger" }, { "$ref": "#/definitions/TimeTrigger" }, { "$ref": "#/definitions/TemplateTrigger" }, { "$ref": "#/definitions/WebhookTrigger" }, { "$ref": "#/definitions/EventTrigger" }, { "$ref": "#/definitions/TimePatternTrigger" }, { "$ref": "#/definitions/MqttTrigger" }, { "$ref": "#/definitions/GeoLocationTrigger" }, { "$ref": "#/definitions/StateTrigger" }, { "$ref": "#/definitions/ZoneTrigger" }, { "$ref": "#/definitions/NumericStateTrigger" }] } }] }, "condition": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }] } }] }, "action": { "anyOf": [{ "$ref": "#/definitions/EventActionSchema" }, { "$ref": "#/definitions/ServiceActionSchema" }, { "$ref": "#/definitions/DelayActionSchema" }, { "$ref": "#/definitions/ServiceActionTemplateSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/EventActionSchema" }, { "$ref": "#/definitions/ServiceActionSchema" }, { "$ref": "#/definitions/DelayActionSchema" }, { "$ref": "#/definitions/ServiceActionTemplateSchema" }, { "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }] } }] } }] } }, "additionalProperties": false, "required": ["action", "trigger"] }, "HaTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["homeassistant"] }, "event": { "enum": ["shutdown", "start"], "type": "string" } }, "additionalProperties": false, "required": ["event", "platform"] }, "SunTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["sun"] }, "event": { "enum": ["sunrise", "sunset"], "type": "string" }, "offset": { "type": "string" } }, "additionalProperties": false, "required": ["event", "platform"] }, "TimeTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["time"] }, "at": { "type": "string" } }, "additionalProperties": false, "required": ["at", "platform"] }, "TemplateTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["template"] }, "value_template": { "type": "string" } }, "additionalProperties": false, "required": ["platform", "value_template"] }, "WebhookTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["webhook"] }, "webhook_id": { "type": "string" } }, "additionalProperties": false, "required": ["platform", "webhook_id"] }, "EventTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["event"] }, "event_type": { "type": "string" }, "event_data": {} }, "additionalProperties": false, "required": ["event_type", "platform"] }, "TimePatternTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["time_pattern"] }, "hours": { "type": "string" }, "minutes": { "type": ["string", "number"] }, "seconds": { "type": ["string", "number"] } }, "additionalProperties": false, "required": ["platform"] }, "MqttTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["mqtt"] }, "topic": { "type": "string" }, "payload": { "type": "string" }, "encoding": { "type": "string" } }, "additionalProperties": false, "required": ["platform", "topic"] }, "GeoLocationTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["geo_location"] }, "source": { "type": "string" }, "zone": { "type": "string" }, "event": { "enum": ["enter", "leave"], "type": "string" } }, "additionalProperties": false, "required": ["event", "platform", "source", "zone"] }, "StateTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["state"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "from": { "type": ["string", "boolean"] }, "to": { "type": ["string", "boolean"] }, "for": { "anyOf": [{ "$ref": "#/definitions/TimePeriod" }, { "type": "string" }] } }, "additionalProperties": false, "required": ["entity_id", "platform"] }, "TimePeriod": { "type": "object", "properties": { "days": { "type": ["string", "number"] }, "hours": { "type": ["string", "number"] }, "minutes": { "type": ["string", "number"] }, "seconds": { "type": ["string", "number"] }, "milliseconds": { "type": ["string", "number"] } }, "additionalProperties": false }, "ZoneTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["zone"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "zone": { "type": "string" }, "event": { "enum": ["enter", "leave"], "type": "string" } }, "additionalProperties": false, "required": ["entity_id", "event", "platform", "zone"] }, "NumericStateTrigger": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["numeric_state"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "below": { "type": ["string", "number"] }, "above": { "type": ["string", "number"] }, "value_template": { "type": "string" }, "for": { "anyOf": [{ "$ref": "#/definitions/TimePeriod" }, { "type": "string" }] } }, "additionalProperties": false, "required": ["entity_id", "platform"] }, "NumericStateConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["numeric_state"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "below": { "type": ["string", "number"] }, "above": { "type": ["string", "number"] }, "value_template": { "type": "string" } }, "additionalProperties": false, "required": ["condition", "entity_id"] }, "StateConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["state"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "state": { "type": ["string", "boolean"] }, "for": { "anyOf": [{ "$ref": "#/definitions/TimePeriod" }, { "type": "string" }] }, "from": { "type": "string" } }, "additionalProperties": false, "required": ["condition", "entity_id", "state"] }, "SunConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["sun"] }, "before": { "type": "string" }, "before_offset": { "type": "string" }, "after": { "type": "string" }, "after_offset": { "type": "string" } }, "additionalProperties": false, "required": ["condition"] }, "TemplateConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["template"] }, "value_template": { "type": "string" } }, "additionalProperties": false, "required": ["condition"] }, "TimeConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["time"] }, "before": { "type": "string" }, "after": { "type": "string" }, "weekday": { "anyOf": [{ "type": "array", "items": { "enum": ["fri", "mon", "sat", "sun", "thu", "tue", "wed"], "type": "string" } }, { "enum": ["fri", "mon", "sat", "sun", "thu", "tue", "wed"], "type": "string" }] } }, "additionalProperties": false, "required": ["condition"] }, "ZoneConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["zone"] }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "zone": { "type": "string" } }, "additionalProperties": false, "required": ["condition", "entity_id"] }, "AndConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["and"] }, "conditions": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }] } }] } }, "additionalProperties": false, "required": ["condition", "conditions"] }, "OrConditionSchema": { "type": "object", "properties": { "condition": { "type": "string", "enum": ["or"] }, "conditions": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }] } }] } }, "additionalProperties": false, "required": ["condition", "conditions"] }, "EventActionSchema": { "type": "object", "properties": { "alias": { "type": "string" }, "event": { "type": "string" }, "event_data": {}, "event_data_template": {} }, "additionalProperties": false, "required": ["event"] }, "ServiceActionSchema": { "type": "object", "properties": { "service": { "type": "string" }, "service_template": { "type": "string" }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "data": {}, "data_template": {} }, "additionalProperties": false, "required": ["service"] }, "DelayActionSchema": { "type": "object", "properties": { "delay": { "anyOf": [{ "$ref": "#/definitions/TimePeriod" }, { "type": ["string", "number"] }] } }, "additionalProperties": false, "required": ["delay"] }, "ServiceActionTemplateSchema": { "type": "object", "properties": { "service_template": { "type": "string" }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "data": {}, "data_template": {} }, "additionalProperties": false, "required": ["service_template"] }, "GroupComponent": { "type": "object", "additionalProperties": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "$ref": "#/definitions/GroupComponentEntry" }] } }, "GroupComponentEntry": { "type": "object", "properties": { "name": { "type": "string" }, "view": { "type": "boolean" }, "icon": { "type": "string" }, "control": { "type": "string" }, "entities": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "all": { "type": "boolean" } }, "additionalProperties": false, "required": ["entities"] }, "PanelIframeComponent": { "type": "object", "additionalProperties": { "$ref": "#/definitions/PanelIframeComponentEntry" } }, "PanelIframeComponentEntry": { "type": "object", "properties": { "title": { "type": "string" }, "url": { "type": "string" }, "icon": { "type": "string" }, "require_admin": { "type": "boolean" } }, "additionalProperties": false, "required": ["title", "url"] }, "MqttSensor": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["mqtt"] }, "state_topic": { "type": "string" }, "name": { "type": "string" }, "qos": { "type": "number" }, "unit_of_measurement": { "type": "string" }, "icon": { "type": "string" }, "expire_after": { "type": "number" }, "value_template": { "type": "string" }, "force_update": { "type": "boolean" }, "availability_topic": { "type": "string" }, "payload_available": { "type": "string" }, "payload_not_available": { "type": "string" }, "json_attributes_topic": { "type": "string" }, "json_attributes": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "unique_id": { "type": "string" }, "device_class": { "type": "string" }, "device": {} }, "additionalProperties": false, "required": ["platform", "state_topic"] }, "TemplateSensor": { "type": "object", "properties": { "platform": { "type": "string", "enum": ["template"] }, "sensors": { "type": "object", "additionalProperties": { "$ref": "#/definitions/TemplateSensorEntry" } } }, "additionalProperties": false, "required": ["platform", "sensors"] }, "TemplateSensorEntry": { "type": "object", "properties": { "friendly_name": { "type": "string" }, "friendly_name_template": { "type": "string" }, "entity_id": { "anyOf": [{ "type": "array", "items": { "type": "string" } }, { "type": "string" }] }, "unit_of_measurement": { "type": "string" }, "value_template": { "type": "string" }, "icon_template": { "type": "string" }, "entity_picture_template": { "type": "string" }, "device_class": { "type": "string" } }, "additionalProperties": false }, "OtherSensor": { "additionalProperties": true, "type": "object", "properties": { "platform": { "pattern": "(^(?!.*(mqtt|template)).*)$", "type": "string" } }, "required": ["platform"] }, "SceneComponentEntry": { "type": "object", "properties": { "name": { "type": "string" }, "entities": { "type": "object", "additionalProperties": { "anyOf": [{ "$ref": "#/definitions/EntitySceneConfig" }, { "type": ["string", "boolean"] }] } } }, "additionalProperties": false, "required": ["entities", "name"] }, "EntitySceneConfig": { "additionalProperties": true, "type": "object", "properties": { "state": { "type": "boolean" }, "brightness": { "type": ["string", "number"] }, "source": { "type": "string" }, "color_temp": { "type": ["string", "number"] }, "xy_color": {} } }, "InputBooleanEntry": { "type": "object", "additionalProperties": { "type": "object", "properties": { "name": { "type": "string" }, "initial": { "type": "boolean" }, "icon": { "type": "string" } }, "additionalProperties": false } }, "Script": { "type": "object", "additionalProperties": { "anyOf": [{ "$ref": "#/definitions/SequencedAction" }, { "$ref": "#/definitions/ServiceAction" }, { "$ref": "#/definitions/DelayAction" }, { "$ref": "#/definitions/WaitAction" }, { "$ref": "#/definitions/EventAction" }] } }, "SequencedAction": { "type": "object", "properties": { "alias": { "type": "string" }, "sequence": { "anyOf": [{ "$ref": "#/definitions/ServiceAction" }, { "$ref": "#/definitions/DelayAction" }, { "$ref": "#/definitions/WaitAction" }, { "$ref": "#/definitions/EventAction" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }, { "type": "array", "items": { "anyOf": [{ "$ref": "#/definitions/NumericStateConditionSchema" }, { "$ref": "#/definitions/StateConditionSchema" }, { "$ref": "#/definitions/SunConditionSchema" }, { "$ref": "#/definitions/TemplateConditionSchema" }, { "$ref": "#/definitions/TimeConditionSchema" }, { "$ref": "#/definitions/ZoneConditionSchema" }, { "$ref": "#/definitions/AndConditionSchema" }, { "$ref": "#/definitions/OrConditionSchema" }] } }, { "$ref": "#/definitions/ServiceAction" }, { "$ref": "#/definitions/DelayAction" }, { "$ref": "#/definitions/WaitAction" }, { "$ref": "#/definitions/EventAction" }] } }] } }, "additionalProperties": false, "required": ["sequence"] }, "ServiceAction": { "type": "object", "properties": { "service": { "type": "string" }, "service_template": { "type": "string" }, "data": {}, "data_template": {}, "entity_id": { "type": "string" } }, "additionalProperties": false, "required": ["service"] }, "DelayAction": { "type": "object", "properties": { "delay": { "anyOf": [{ "$ref": "#/definitions/TimePeriod" }, { "type": ["string", "number"] }] } }, "additionalProperties": false, "required": ["delay"] }, "WaitAction": { "type": "object", "properties": { "wait_template": { "type": "string" }, "timeout": { "type": "string" }, "continue_on_timeout": { "type": "boolean" } }, "additionalProperties": false, "required": ["wait_template"] }, "EventAction": { "type": "object", "properties": { "event": { "type": "string" }, "event_data": { "$ref": "#/definitions/EventActionData" }, "event_data_template": {} }, "additionalProperties": false, "required": ["event", "event_data", "event_data_template"] }, "EventActionData": { "additionalProperties": true, "type": "object", "properties": { "name": { "type": "string" }, "message": { "type": "string" }, "entity_id": { "type": "string" }, "domain": { "type": "string" } } } }, "$schema": "http://json-schema.org/draft-07/schema#" }
