Skip to content

Instantly share code, notes, and snippets.

@jango-blockchained
Created July 22, 2024 15:59
Show Gist options
  • Save jango-blockchained/519c62a503457b870342975d7ac18f6a to your computer and use it in GitHub Desktop.
Save jango-blockchained/519c62a503457b870342975d7ac18f6a to your computer and use it in GitHub Desktop.
[
{
"domain": "homeassistant",
"services": {
"save_persistent_states": {
"name": "Save persistent states",
"description": "Saves the persistent states immediately. Maintains the normal periodic saving interval.",
"fields": {}
},
"turn_off": {
"name": "Generic turn off",
"description": "Generic action to turn devices off under any domain.",
"fields": {},
"target": {
"entity": [
{}
]
}
},
"turn_on": {
"name": "Generic turn on",
"description": "Generic action to turn devices on under any domain.",
"fields": {},
"target": {
"entity": [
{}
]
}
},
"toggle": {
"name": "Generic toggle",
"description": "Generic action to toggle devices on/off under any domain.",
"fields": {},
"target": {
"entity": [
{}
]
}
},
"stop": {
"name": "Stop",
"description": "Stops Home Assistant.",
"fields": {}
},
"restart": {
"name": "Restart",
"description": "Restarts Home Assistant.",
"fields": {}
},
"check_config": {
"name": "Check configuration",
"description": "Checks the Home Assistant YAML-configuration files for errors. Errors will be shown in the Home Assistant logs.",
"fields": {}
},
"update_entity": {
"name": "Update entity",
"description": "Forces one or more entities to update its data.",
"fields": {},
"target": {
"entity": [
{}
]
}
},
"reload_core_config": {
"name": "Reload core configuration",
"description": "Reloads the core configuration from the YAML-configuration.",
"fields": {}
},
"set_location": {
"name": "Set location",
"description": "Updates the Home Assistant location.",
"fields": {
"latitude": {
"required": true,
"example": 32.87336,
"selector": {
"number": {
"mode": "box",
"min": -90,
"max": 90,
"step": "any"
}
},
"name": "Latitude",
"description": "Latitude of your location."
},
"longitude": {
"required": true,
"example": 117.22743,
"selector": {
"number": {
"mode": "box",
"min": -180,
"max": 180,
"step": "any"
}
},
"name": "Longitude",
"description": "Longitude of your location."
},
"elevation": {
"required": false,
"example": 120,
"selector": {
"number": {
"mode": "box",
"step": "any"
}
},
"name": "Elevation",
"description": "Elevation of your location."
}
}
},
"reload_custom_templates": {
"name": "Reload custom Jinja2 templates",
"description": "Reloads Jinja2 templates found in the `custom_templates` folder in your config. New values will be applied on the next render of the template.",
"fields": {}
},
"reload_config_entry": {
"name": "Reload config entry",
"description": "Reloads the specified config entry.",
"fields": {
"entry_id": {
"advanced": true,
"required": false,
"example": "8955375327824e14ba89e4b29cc3ec9a",
"selector": {
"text": null
},
"name": "Config entry ID",
"description": "The configuration entry ID of the entry to be reloaded."
}
},
"target": {
"entity": [
{}
],
"device": [
{}
]
}
},
"reload_all": {
"name": "Reload all",
"description": "Reload all YAML configuration that can be reloaded without restarting Home Assistant.",
"fields": {}
}
}
},
{
"domain": "persistent_notification",
"services": {
"create": {
"name": "Create",
"description": "Shows a notification on the notifications panel.",
"fields": {
"message": {
"required": true,
"example": "Please check your configuration.yaml.",
"selector": {
"text": null
},
"name": "Message",
"description": "Message body of the notification."
},
"title": {
"example": "Test notification",
"selector": {
"text": null
},
"name": "Title",
"description": "Optional title of the notification."
},
"notification_id": {
"example": 1234,
"selector": {
"text": null
},
"name": "Notification ID",
"description": "ID of the notification. This new notification will overwrite an existing notification with the same ID."
}
}
},
"dismiss": {
"name": "Dismiss",
"description": "Removes a notification from the notifications panel.",
"fields": {
"notification_id": {
"required": true,
"example": 1234,
"selector": {
"text": null
},
"name": "Notification ID",
"description": "ID of the notification to be removed."
}
}
},
"dismiss_all": {
"name": "Dismiss all",
"description": "Removes all notifications from the notifications panel.",
"fields": {}
}
}
},
{
"domain": "system_log",
"services": {
"clear": {
"name": "Clear all",
"description": "Clears all log entries.",
"fields": {}
},
"write": {
"name": "Write",
"description": "Write log entry.",
"fields": {
"message": {
"required": true,
"example": "Something went wrong",
"selector": {
"text": null
},
"name": "Message",
"description": "Message to log."
},
"level": {
"default": "error",
"selector": {
"select": {
"options": [
"debug",
"info",
"warning",
"error",
"critical"
],
"translation_key": "level"
}
},
"name": "Level",
"description": "Log level."
},
"logger": {
"example": "mycomponent.myplatform",
"selector": {
"text": null
},
"name": "Logger",
"description": "Logger name under which to log the message. Defaults to `system_log.external`."
}
}
}
}
},
{
"domain": "logger",
"services": {
"set_default_level": {
"name": "Set default level",
"description": "Sets the default log level for integrations.",
"fields": {
"level": {
"selector": {
"select": {
"options": [
"debug",
"info",
"warning",
"error",
"fatal",
"critical"
],
"translation_key": "level"
}
},
"name": "Level",
"description": "Default severity level for all integrations."
}
}
},
"set_level": {
"name": "Set level",
"description": "Sets the log level for one or more integrations.",
"fields": {}
}
}
},
{
"domain": "person",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads persons from the YAML-configuration.",
"fields": {}
}
}
},
{
"domain": "recorder",
"services": {
"purge": {
"name": "Purge",
"description": "Starts purge task - to clean up old data from your database.",
"fields": {
"keep_days": {
"selector": {
"number": {
"min": 0,
"max": 365,
"unit_of_measurement": "days"
}
},
"name": "Days to keep",
"description": "Number of days to keep the data in the database. Starting today, counting backward. A value of `7` means that everything older than a week will be purged."
},
"repack": {
"default": false,
"selector": {
"boolean": null
},
"name": "Repack",
"description": "Attempt to save disk space by rewriting the entire database file."
},
"apply_filter": {
"default": false,
"selector": {
"boolean": null
},
"name": "Apply filter",
"description": "Apply `entity_id` and `event_type` filters in addition to time-based purge."
}
}
},
"purge_entities": {
"name": "Purge entities",
"description": "Starts a purge task to remove the data related to specific entities from your database.",
"fields": {
"entity_id": {
"required": false,
"selector": {
"entity": {
"multiple": true
}
},
"name": "Entities to remove",
"description": "List of entities for which the data is to be removed from the recorder database."
},
"domains": {
"example": "sun",
"required": false,
"selector": {
"object": null
},
"name": "Domains to remove",
"description": "List of domains for which the data needs to be removed from the recorder database."
},
"entity_globs": {
"example": "domain*.object_id*",
"required": false,
"selector": {
"object": null
},
"name": "Entity globs to remove",
"description": "List of glob patterns used to select the entities for which the data is to be removed from the recorder database."
},
"keep_days": {
"default": 0,
"selector": {
"number": {
"min": 0,
"max": 365,
"unit_of_measurement": "days"
}
},
"name": "Days to keep",
"description": "Number of days to keep the data for rows matching the filter. Starting today, counting backward. A value of `7` means that everything older than a week will be purged. The default of 0 days will remove all matching rows immediately."
}
}
},
"enable": {
"name": "Enable",
"description": "Starts the recording of events and state changes.",
"fields": {}
},
"disable": {
"name": "Disable",
"description": "Stops the recording of events and state changes.",
"fields": {}
}
}
},
{
"domain": "frontend",
"services": {
"set_theme": {
"name": "Set the default theme",
"description": "Sets the default theme Home Assistant uses. Can be overridden by a user.",
"fields": {
"name": {
"required": true,
"example": "default",
"selector": {
"theme": {
"include_default": true
}
},
"name": "Theme",
"description": "Name of a theme."
},
"mode": {
"default": "light",
"selector": {
"select": {
"options": [
"dark",
"light"
],
"translation_key": "mode"
}
},
"name": "Mode",
"description": "Theme mode."
}
}
},
"reload_themes": {
"name": "Reload themes",
"description": "Reloads themes from the YAML-configuration.",
"fields": {}
}
}
},
{
"domain": "hassio",
"services": {
"addon_start": {
"name": "Start add-on",
"description": "Starts an add-on.",
"fields": {
"addon": {
"required": true,
"example": "core_ssh",
"selector": {
"addon": null
},
"name": "Add-on",
"description": "The add-on slug."
}
}
},
"addon_stop": {
"name": "Stop add-on.",
"description": "Stops an add-on.",
"fields": {
"addon": {
"required": true,
"example": "core_ssh",
"selector": {
"addon": null
},
"name": "Add-on",
"description": "The add-on slug."
}
}
},
"addon_restart": {
"name": "Restart add-on.",
"description": "Restarts an add-on.",
"fields": {
"addon": {
"required": true,
"example": "core_ssh",
"selector": {
"addon": null
},
"name": "Add-on",
"description": "The add-on slug."
}
}
},
"addon_update": {
"name": "Update add-on.",
"description": "Updates an add-on. This action should be used with caution since add-on updates can contain breaking changes. It is highly recommended that you review release notes/change logs before updating an add-on.",
"fields": {
"addon": {
"required": true,
"example": "core_ssh",
"selector": {
"addon": null
},
"name": "Add-on",
"description": "The add-on slug."
}
}
},
"addon_stdin": {
"name": "Write data to add-on stdin.",
"description": "Writes data to add-on stdin.",
"fields": {
"addon": {
"required": true,
"example": "core_ssh",
"selector": {
"addon": null
},
"name": "Add-on",
"description": "The add-on slug."
}
}
},
"host_shutdown": {
"name": "Power off the host system.",
"description": "Powers off the host system.",
"fields": {}
},
"host_reboot": {
"name": "Reboot the host system.",
"description": "Reboots the host system.",
"fields": {}
},
"backup_full": {
"name": "Create a full backup.",
"description": "Creates a full backup.",
"fields": {
"name": {
"example": "Backup 1",
"selector": {
"text": null
},
"name": "Name",
"description": "Optional (default = current date and time)."
},
"password": {
"example": "password",
"selector": {
"text": null
},
"name": "Password",
"description": "Password to protect the backup with."
},
"compressed": {
"default": true,
"selector": {
"boolean": null
},
"name": "Compressed",
"description": "Compresses the backup files."
},
"location": {
"example": "my_backup_mount",
"selector": {
"backup_location": null
},
"name": "Location",
"description": "Name of a backup network storage to host backups."
},
"homeassistant_exclude_database": {
"default": false,
"selector": {
"boolean": null
},
"name": "Home Assistant exclude database",
"description": "Exclude the Home Assistant database file from backup"
}
}
},
"backup_partial": {
"name": "Create a partial backup.",
"description": "Creates a partial backup.",
"fields": {
"homeassistant": {
"selector": {
"boolean": null
},
"name": "Home Assistant settings",
"description": "Includes Home Assistant settings in the backup."
},
"homeassistant_exclude_database": {
"default": false,
"selector": {
"boolean": null
},
"name": "Home Assistant exclude database",
"description": "Exclude the Home Assistant database file from backup"
},
"addons": {
"example": [
"core_ssh",
"core_samba",
"core_mosquitto"
],
"selector": {
"object": null
},
"name": "Add-ons",
"description": "List of add-ons to include in the backup. Use the name slug of the add-on."
},
"folders": {
"example": [
"homeassistant",
"share"
],
"selector": {
"object": null
},
"name": "Folders",
"description": "List of directories to include in the backup."
},
"name": {
"example": "Partial backup 1",
"selector": {
"text": null
},
"name": "Name",
"description": "Optional (default = current date and time)."
},
"password": {
"example": "password",
"selector": {
"text": null
},
"name": "Password",
"description": "Password to protect the backup with."
},
"compressed": {
"default": true,
"selector": {
"boolean": null
},
"name": "Compressed",
"description": "Compresses the backup files."
},
"location": {
"example": "my_backup_mount",
"selector": {
"backup_location": null
},
"name": "Location",
"description": "Name of a backup network storage to host backups."
}
}
},
"restore_full": {
"name": "Restore from full backup.",
"description": "Restores from full backup.",
"fields": {
"slug": {
"required": true,
"selector": {
"text": null
},
"name": "Slug",
"description": "Slug of backup to restore from."
},
"password": {
"example": "password",
"selector": {
"text": null
},
"name": "Password",
"description": "Optional password."
}
}
},
"restore_partial": {
"name": "Restore from partial backup.",
"description": "Restores from a partial backup.",
"fields": {
"slug": {
"required": true,
"selector": {
"text": null
},
"name": "Slug",
"description": "Slug of backup to restore from."
},
"homeassistant": {
"selector": {
"boolean": null
},
"name": "Home Assistant settings",
"description": "Restores Home Assistant."
},
"folders": {
"example": [
"homeassistant",
"share"
],
"selector": {
"object": null
},
"name": "Folders",
"description": "List of directories to include in the backup."
},
"addons": {
"example": [
"core_ssh",
"core_samba",
"core_mosquitto"
],
"selector": {
"object": null
},
"name": "Add-ons",
"description": "List of add-ons to include in the backup. Use the name slug of the add-on."
},
"password": {
"example": "password",
"selector": {
"text": null
},
"name": "Password",
"description": "Optional password."
}
}
}
}
},
{
"domain": "update",
"services": {
"install": {
"name": "Install update",
"description": "Installs an update for this device or service.",
"fields": {
"version": {
"required": false,
"example": "1.0.0",
"selector": {
"text": null
},
"name": "Version",
"description": "The version to install. If omitted, the latest version will be installed."
},
"backup": {
"required": false,
"selector": {
"boolean": null
},
"name": "Backup",
"description": "If supported by the integration, this creates a backup before starting the update ."
}
},
"target": {
"entity": [
{
"domain": [
"update"
]
}
]
}
},
"skip": {
"name": "Skip update",
"description": "Marks currently available update as skipped.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"update"
]
}
]
}
},
"clear_skipped": {
"name": "Clear skipped update",
"description": "Removes the skipped version marker from an update.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"update"
]
}
]
}
}
}
},
{
"domain": "cloud",
"services": {
"remote_connect": {
"name": "Remote connect",
"description": "Makes the instance UI accessible from outside of the local network by using Home Assistant Cloud.",
"fields": {}
},
"remote_disconnect": {
"name": "Remote disconnect",
"description": "Disconnects the Home Assistant UI from the Home Assistant Cloud. You will no longer be able to access your Home Assistant instance from outside your local network.",
"fields": {}
}
}
},
{
"domain": "ffmpeg",
"services": {
"start": {
"name": "Start",
"description": "Sends a start command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"selector": {
"entity": {
"integration": "ffmpeg",
"domain": "binary_sensor"
}
},
"name": "Entity",
"description": "Name of entity that will start. Platform dependent."
}
}
},
"stop": {
"name": "Stop",
"description": "Sends a stop command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"selector": {
"entity": {
"integration": "ffmpeg",
"domain": "binary_sensor"
}
},
"name": "Entity",
"description": "Name of entity that will stop. Platform dependent."
}
}
},
"restart": {
"name": "Restart",
"description": "Sends a restart command to a ffmpeg based sensor.",
"fields": {
"entity_id": {
"selector": {
"entity": {
"integration": "ffmpeg",
"domain": "binary_sensor"
}
},
"name": "Entity",
"description": "Name of entity that will restart. Platform dependent."
}
}
}
}
},
{
"domain": "tts",
"services": {
"speak": {
"name": "Speak",
"description": "Speaks something using text-to-speech on a media player.",
"fields": {
"media_player_entity_id": {
"required": true,
"selector": {
"entity": {
"domain": "media_player"
}
},
"name": "Media player entity",
"description": "Media players to play the message."
},
"message": {
"example": "My name is hanna",
"required": true,
"selector": {
"text": null
},
"name": "Message",
"description": "The text you want to convert into speech so that you can listen to it on your device."
},
"cache": {
"default": true,
"selector": {
"boolean": null
},
"name": "Cache",
"description": "Stores this message locally so that when the text is requested again, the output can be produced more quickly."
},
"language": {
"example": "ru",
"selector": {
"text": null
},
"name": "Language",
"description": "Language to use for speech generation."
},
"options": {
"advanced": true,
"example": "platform specific",
"selector": {
"object": null
},
"name": "Options",
"description": "A dictionary containing integration-specific options."
}
},
"target": {
"entity": [
{
"domain": [
"tts"
]
}
]
}
},
"clear_cache": {
"name": "Clear TTS cache",
"description": "Removes all cached text-to-speech files and purges the memory.",
"fields": {}
},
"cloud_say": {
"name": "Say a TTS message with cloud",
"description": "Say something using text-to-speech on a media player with cloud.",
"fields": {
"entity_id": {
"required": true,
"selector": {
"entity": {
"domain": "media_player"
}
}
},
"message": {
"example": "My name is hanna",
"required": true,
"selector": {
"text": null
}
},
"cache": {
"default": false,
"selector": {
"boolean": null
}
},
"language": {
"example": "ru",
"selector": {
"text": null
}
},
"options": {
"advanced": true,
"example": "platform specific",
"selector": {
"object": null
}
}
}
}
}
},
{
"domain": "scene",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads the scenes from the YAML-configuration.",
"fields": {}
},
"apply": {
"name": "Apply",
"description": "Activates a scene with configuration.",
"fields": {
"entities": {
"required": true,
"example": "light.kitchen: \"on\"\nlight.ceiling:\n state: \"on\"\n brightness: 80\n",
"selector": {
"object": null
},
"name": "Entities state",
"description": "List of entities and their target state."
},
"transition": {
"selector": {
"number": {
"min": 0,
"max": 300,
"unit_of_measurement": "seconds"
}
},
"name": "Transition",
"description": "Time it takes the devices to transition into the states defined in the scene."
}
}
},
"create": {
"name": "Create",
"description": "Creates a new scene.",
"fields": {
"scene_id": {
"required": true,
"example": "all_lights",
"selector": {
"text": null
},
"name": "Scene entity ID",
"description": "The entity ID of the new scene."
},
"entities": {
"advanced": true,
"example": "light.tv_back_light: \"on\"\nlight.ceiling:\n state: \"on\"\n brightness: 200\n",
"selector": {
"object": null
},
"name": "Entities state",
"description": "List of entities and their target state. If your entities are already in the target state right now, use `snapshot_entities` instead."
},
"snapshot_entities": {
"example": "- light.ceiling\n- light.kitchen\n",
"selector": {
"entity": {
"multiple": true
}
},
"name": "Snapshot entities",
"description": "List of entities to be included in the snapshot. By taking a snapshot, you record the current state of those entities. If you do not want to use the current state of all your entities for this scene, you can combine the `snapshot_entities` with `entities`."
}
}
},
"delete": {
"name": "Delete",
"description": "Deletes a dynamically created scene.",
"fields": {},
"target": {
"entity": [
{
"integration": "homeassistant",
"domain": [
"scene"
]
}
]
}
},
"turn_on": {
"name": "Activate",
"description": "Activates a scene.",
"fields": {
"transition": {
"selector": {
"number": {
"min": 0,
"max": 300,
"unit_of_measurement": "seconds"
}
},
"name": "Transition",
"description": "Time it takes the devices to transition into the states defined in the scene."
}
},
"target": {
"entity": [
{
"domain": [
"scene"
]
}
]
}
}
}
},
{
"domain": "input_button",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"press": {
"name": "Press",
"description": "Mimics the physical button press on the device.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_button"
]
}
]
}
}
}
},
{
"domain": "input_select",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"select_first": {
"name": "First",
"description": "Selects the first option.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
},
"select_last": {
"name": "Last",
"description": "Selects the last option.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
},
"select_next": {
"name": "Next",
"description": "Select the next option.",
"fields": {
"cycle": {
"default": true,
"selector": {
"boolean": null
},
"name": "Cycle",
"description": "If the option should cycle from the last to the first option on the list."
}
},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
},
"select_option": {
"name": "Select",
"description": "Selects an option.",
"fields": {
"option": {
"required": true,
"example": "\"Item A\"",
"selector": {
"text": null
},
"name": "Option",
"description": "Option to be selected."
}
},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
},
"select_previous": {
"name": "Previous",
"description": "Selects the previous option.",
"fields": {
"cycle": {
"default": true,
"selector": {
"boolean": null
},
"name": "Cycle",
"description": "If the option should cycle from the last to the first option on the list."
}
},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
},
"set_options": {
"name": "Set options",
"description": "Sets the options.",
"fields": {
"options": {
"required": true,
"example": "[\"Item A\", \"Item B\", \"Item C\"]",
"selector": {
"object": null
},
"name": "Options",
"description": "List of options."
}
},
"target": {
"entity": [
{
"domain": [
"input_select"
]
}
]
}
}
}
},
{
"domain": "zone",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads zones from the YAML-configuration.",
"fields": {}
}
}
},
{
"domain": "logbook",
"services": {
"log": {
"name": "Log",
"description": "Creates a custom entry in the logbook.",
"fields": {
"name": {
"required": true,
"example": "Kitchen",
"selector": {
"text": null
},
"name": "Name",
"description": "Custom name for an entity, can be referenced using an `entity_id`."
},
"message": {
"required": true,
"example": "is being used",
"selector": {
"text": null
},
"name": "Message",
"description": "Message of the logbook entry."
},
"entity_id": {
"selector": {
"entity": null
},
"name": "Entity ID",
"description": "Entity to reference in the logbook entry."
},
"domain": {
"example": "light",
"selector": {
"text": null
},
"name": "Domain",
"description": "Determines which icon is used in the logbook entry. The icon illustrates the integration domain related to this logbook entry."
}
}
}
}
},
{
"domain": "input_number",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"set_value": {
"name": "Set",
"description": "Sets the value.",
"fields": {
"value": {
"required": true,
"selector": {
"number": {
"min": 0,
"max": 9223372036854775807,
"step": 0.001,
"mode": "box"
}
},
"name": "Value",
"description": "The target value."
}
},
"target": {
"entity": [
{
"domain": [
"input_number"
]
}
]
}
},
"increment": {
"name": "Increment",
"description": "Increments the value by 1 step.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_number"
]
}
]
}
},
"decrement": {
"name": "Decrement",
"description": "Decrements the current value by 1 step.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_number"
]
}
]
}
}
}
},
{
"domain": "input_boolean",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"turn_on": {
"name": "Turn on",
"description": "Turns on the helper.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_boolean"
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Turns off the helper.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_boolean"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles the helper on/off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"input_boolean"
]
}
]
}
}
}
},
{
"domain": "automation",
"services": {
"trigger": {
"name": "Trigger",
"description": "Triggers the actions of an automation.",
"fields": {
"skip_condition": {
"default": true,
"selector": {
"boolean": null
},
"name": "Skip conditions",
"description": "Defines whether or not the conditions will be skipped."
}
},
"target": {
"entity": [
{
"domain": [
"automation"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles (enable / disable) an automation.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"automation"
]
}
]
}
},
"turn_on": {
"name": "Turn on",
"description": "Enables an automation.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"automation"
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Disables an automation.",
"fields": {
"stop_actions": {
"default": true,
"selector": {
"boolean": null
},
"name": "Stop actions",
"description": "Stops currently running actions."
}
},
"target": {
"entity": [
{
"domain": [
"automation"
]
}
]
}
},
"reload": {
"name": "Reload",
"description": "Reloads the automation configuration.",
"fields": {}
}
}
},
{
"domain": "script",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads all the available scripts.",
"fields": {}
},
"turn_on": {
"name": "Turn on",
"description": "Runs the sequence of actions defined in a script.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"script"
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Stops a running script.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"script"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggle a script. Starts it, if isn't running, stops it otherwise.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"script"
]
}
]
}
}
}
},
{
"domain": "timer",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads timers from the YAML-configuration.",
"fields": {}
},
"start": {
"name": "Start",
"description": "Starts a timer.",
"fields": {
"duration": {
"example": "00:01:00 or 60",
"selector": {
"text": null
},
"name": "Duration",
"description": "Duration the timer requires to finish. [optional]."
}
},
"target": {
"entity": [
{
"domain": [
"timer"
]
}
]
}
},
"pause": {
"name": "Pause",
"description": "Pauses a timer.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"timer"
]
}
]
}
},
"cancel": {
"name": "Cancel",
"description": "Cancels a timer.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"timer"
]
}
]
}
},
"finish": {
"name": "Finish",
"description": "Finishes a timer.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"timer"
]
}
]
}
},
"change": {
"name": "Change",
"description": "Changes a timer.",
"fields": {
"duration": {
"default": 0,
"required": true,
"example": "00:01:00, 60 or -60",
"selector": {
"text": null
},
"name": "Duration",
"description": "Duration to add or subtract to the running timer."
}
},
"target": {
"entity": [
{
"domain": [
"timer"
]
}
]
}
}
}
},
{
"domain": "conversation",
"services": {
"process": {
"name": "Process",
"description": "Launches a conversation from a transcribed text.",
"fields": {
"text": {
"example": "Turn all lights on",
"required": true,
"selector": {
"text": null
},
"name": "Text",
"description": "Transcribed text input."
},
"language": {
"example": "NL",
"selector": {
"text": null
},
"name": "Language",
"description": "Language of text. Defaults to server language."
},
"agent_id": {
"example": "homeassistant",
"selector": {
"conversation_agent": null
},
"name": "Agent",
"description": "Conversation agent to process your request. The conversation agent is the brains of your assistant. It processes the incoming text commands."
},
"conversation_id": {
"example": "my_conversation_1",
"selector": {
"text": null
},
"name": "Conversation ID",
"description": "ID of the conversation, to be able to continue a previous conversation"
}
},
"response": {
"optional": true
}
},
"reload": {
"name": "Reload",
"description": "Reloads the intent configuration.",
"fields": {
"language": {
"example": "NL",
"selector": {
"text": null
},
"name": "Language",
"description": "Language to clear cached intents for. Defaults to server language."
},
"agent_id": {
"example": "homeassistant",
"selector": {
"conversation_agent": null
},
"name": "Agent",
"description": "Conversation agent to reload."
}
}
}
}
},
{
"domain": "input_datetime",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"set_datetime": {
"name": "Set",
"description": "Sets the date and/or time.",
"fields": {
"date": {
"example": "\"2019-04-20\"",
"selector": {
"text": null
},
"name": "Date",
"description": "The target date."
},
"time": {
"example": "\"05:04:20\"",
"selector": {
"time": null
},
"name": "Time",
"description": "The target time."
},
"datetime": {
"example": "\"2019-04-20 05:04:20\"",
"selector": {
"text": null
},
"name": "Date & time",
"description": "The target date & time."
},
"timestamp": {
"selector": {
"number": {
"min": 0,
"max": 9223372036854775807,
"mode": "box"
}
},
"name": "Timestamp",
"description": "The target date & time, expressed by a UNIX timestamp."
}
},
"target": {
"entity": [
{
"domain": [
"input_datetime"
]
}
]
}
}
}
},
{
"domain": "input_text",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads helpers from the YAML-configuration.",
"fields": {}
},
"set_value": {
"name": "Set",
"description": "Sets the value.",
"fields": {
"value": {
"required": true,
"example": "This is an example text",
"selector": {
"text": null
},
"name": "Value",
"description": "The target value."
}
},
"target": {
"entity": [
{
"domain": [
"input_text"
]
}
]
}
}
}
},
{
"domain": "schedule",
"services": {
"reload": {
"name": "Reload",
"description": "Reloads schedules from the YAML-configuration.",
"fields": {}
}
}
},
{
"domain": "shopping_list",
"services": {
"add_item": {
"name": "Add item",
"description": "Adds an item to the shopping list.",
"fields": {
"name": {
"required": true,
"example": "Beer",
"selector": {
"text": null
},
"name": "Name",
"description": "The name of the item to add."
}
}
},
"remove_item": {
"name": "Remove item",
"description": "Removes the first item with matching name from the shopping list.",
"fields": {
"name": {
"required": true,
"example": "Beer",
"selector": {
"text": null
},
"name": "Name",
"description": "The name of the item to remove."
}
}
},
"complete_item": {
"name": "Complete item",
"description": "Marks the first item with matching name as completed in the shopping list.",
"fields": {
"name": {
"required": true,
"example": "Beer",
"selector": {
"text": null
},
"name": "Name",
"description": "The name of the item to mark as completed (without removing)."
}
}
},
"incomplete_item": {
"name": "Incomplete item",
"description": "Marks the first item with matching name as incomplete in the shopping list.",
"fields": {
"name": {
"example": "Beer",
"required": true,
"selector": {
"text": null
},
"name": "Name",
"description": "The name of the item to mark as incomplete."
}
}
},
"complete_all": {
"name": "Complete all",
"description": "Marks all items as completed in the shopping list (without removing them from the list).",
"fields": {}
},
"incomplete_all": {
"name": "Incomplete all",
"description": "Marks all items as incomplete in the shopping list.",
"fields": {}
},
"clear_completed_items": {
"name": "Clear completed items",
"description": "Clears completed items from the shopping list.",
"fields": {}
},
"sort": {
"name": "Sort all items",
"description": "Sorts all items by name in the shopping list.",
"fields": {
"reverse": {
"default": false,
"selector": {
"boolean": null
},
"name": "Sort reverse",
"description": "Whether to sort in reverse (descending) order."
}
}
}
}
},
{
"domain": "counter",
"services": {
"increment": {
"name": "Increment",
"description": "Increments a counter.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"counter"
]
}
]
}
},
"decrement": {
"name": "Decrement",
"description": "Decrements a counter.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"counter"
]
}
]
}
},
"reset": {
"name": "Reset",
"description": "Resets a counter.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"counter"
]
}
]
}
},
"set_value": {
"name": "Set",
"description": "Sets the counter value.",
"fields": {
"value": {
"required": true,
"selector": {
"number": {
"min": 0,
"max": 9223372036854775807,
"mode": "box"
}
},
"name": "Value",
"description": "The new counter value the entity should be set to."
}
},
"target": {
"entity": [
{
"domain": [
"counter"
]
}
]
}
}
}
},
{
"domain": "notify",
"services": {
"send_message": {
"name": "Send a notification message",
"description": "Sends a notification message.",
"fields": {
"message": {
"required": true,
"selector": {
"text": null
},
"name": "Message",
"description": "Your notification message."
},
"title": {
"required": false,
"selector": {
"text": null
},
"filter": {
"supported_features": [
1
]
},
"name": "Title",
"description": "Title for your notification message."
}
},
"target": {
"entity": [
{
"domain": [
"notify"
]
}
]
}
},
"persistent_notification": {
"name": "Send a persistent notification",
"description": "Sends a notification that is visible in the notifications panel.",
"fields": {
"message": {
"required": true,
"example": "The garage door has been open for 10 minutes.",
"selector": {
"text": null
},
"name": "Message",
"description": "Message body of the notification."
},
"title": {
"example": "Your Garage Door Friend",
"selector": {
"text": null
},
"name": "Title",
"description": "Title of the notification."
},
"data": {
"example": "platform specific",
"selector": {
"object": null
},
"name": "Data",
"description": "Some integrations provide extended functionality. For information on how to use _data_, refer to the integration documentation.."
}
}
},
"mobile_app_iphone_von_dennis": {
"name": "Send a notification via mobile_app_iphone_von_dennis",
"description": "Sends a notification message using the mobile_app_iphone_von_dennis integration.",
"fields": {
"message": {
"required": true,
"example": "The garage door has been open for 10 minutes.",
"selector": {
"text": null
}
},
"title": {
"example": "Your Garage Door Friend",
"selector": {
"text": null
}
},
"target": {
"example": "platform specific",
"selector": {
"object": null
}
},
"data": {
"example": "platform specific",
"selector": {
"object": null
}
}
}
},
"notify": {
"name": "Send a notification with notify",
"description": "Sends a notification message using the notify service.",
"fields": {
"message": {
"required": true,
"example": "The garage door has been open for 10 minutes.",
"selector": {
"text": null
}
},
"title": {
"example": "Your Garage Door Friend",
"selector": {
"text": null
}
},
"target": {
"example": "platform specific",
"selector": {
"object": null
}
},
"data": {
"example": "platform specific",
"selector": {
"object": null
}
}
}
}
}
},
{
"domain": "device_tracker",
"services": {
"see": {
"name": "See",
"description": "Records a seen tracked device.",
"fields": {
"mac": {
"example": "FF:FF:FF:FF:FF:FF",
"selector": {
"text": null
},
"name": "MAC address",
"description": "MAC address of the device."
},
"dev_id": {
"example": "phonedave",
"selector": {
"text": null
},
"name": "Device ID",
"description": "ID of the device (find the ID in `known_devices.yaml`)."
},
"host_name": {
"example": "Dave",
"selector": {
"text": null
},
"name": "Hostname",
"description": "Hostname of the device."
},
"location_name": {
"example": "home",
"selector": {
"text": null
},
"name": "Location",
"description": "Name of the location where the device is located. The options are: `home`, `not_home`, or the name of the zone."
},
"gps": {
"example": "[51.509802, -0.086692]",
"selector": {
"object": null
},
"name": "GPS coordinates",
"description": "GPS coordinates where the device is located, specified by latitude and longitude (for example: [51.513845, -0.100539])."
},
"gps_accuracy": {
"selector": {
"number": {
"min": 0,
"mode": "box",
"unit_of_measurement": "m"
}
},
"name": "GPS accuracy",
"description": "Accuracy of the GPS coordinates."
},
"battery": {
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Battery level",
"description": "Battery level of the device."
}
}
}
}
},
{
"domain": "todo",
"services": {
"add_item": {
"name": "Add to-do list item",
"description": "Add a new to-do list item.",
"fields": {
"item": {
"required": true,
"example": "Submit income tax return",
"selector": {
"text": null
},
"name": "Item name",
"description": "The name that represents the to-do item."
},
"due_date": {
"filter": {
"supported_features": [
16
]
},
"example": "2023-11-17",
"selector": {
"date": null
},
"name": "Due date",
"description": "The date the to-do item is expected to be completed."
},
"due_datetime": {
"filter": {
"supported_features": [
32
]
},
"example": "2023-11-17 13:30:00",
"selector": {
"datetime": null
},
"name": "Due date and time",
"description": "The date and time the to-do item is expected to be completed."
},
"description": {
"filter": {
"supported_features": [
64
]
},
"example": "A more complete description of the to-do item than that provided by the summary.",
"selector": {
"text": null
},
"name": "Description",
"description": "A more complete description of the to-do item than provided by the item name."
}
},
"target": {
"entity": [
{
"domain": [
"todo"
],
"supported_features": [
1
]
}
]
}
},
"update_item": {
"name": "Update to-do list item",
"description": "Update an existing to-do list item based on its name.",
"fields": {
"item": {
"required": true,
"example": "Submit income tax return",
"selector": {
"text": null
},
"name": "Item name",
"description": "The name for the to-do list item."
},
"rename": {
"example": "Something else",
"selector": {
"text": null
},
"name": "Rename item",
"description": "The new name of the to-do item"
},
"status": {
"example": "needs_action",
"selector": {
"select": {
"translation_key": "status",
"options": [
"needs_action",
"completed"
]
}
},
"name": "Set status",
"description": "A status or confirmation of the to-do item."
},
"due_date": {
"filter": {
"supported_features": [
16
]
},
"example": "2023-11-17",
"selector": {
"date": null
},
"name": "Due date",
"description": "The date the to-do item is expected to be completed."
},
"due_datetime": {
"filter": {
"supported_features": [
32
]
},
"example": "2023-11-17 13:30:00",
"selector": {
"datetime": null
},
"name": "Due date and time",
"description": "The date and time the to-do item is expected to be completed."
},
"description": {
"filter": {
"supported_features": [
64
]
},
"example": "A more complete description of the to-do item than that provided by the summary.",
"selector": {
"text": null
},
"name": "Description",
"description": "A more complete description of the to-do item than provided by the item name."
}
},
"target": {
"entity": [
{
"domain": [
"todo"
],
"supported_features": [
4
]
}
]
}
},
"remove_item": {
"name": "Remove a to-do list item",
"description": "Remove an existing to-do list item by its name.",
"fields": {
"item": {
"required": true,
"selector": {
"text": null
},
"name": "Item name",
"description": "The name for the to-do list items."
}
},
"target": {
"entity": [
{
"domain": [
"todo"
],
"supported_features": [
2
]
}
]
}
},
"get_items": {
"name": "Get to-do list items",
"description": "Get items on a to-do list.",
"fields": {
"status": {
"example": "needs_action",
"default": "needs_action",
"selector": {
"select": {
"translation_key": "status",
"options": [
"needs_action",
"completed"
],
"multiple": true
}
},
"name": "Status",
"description": "Only return to-do items with the specified statuses. Returns not completed actions by default."
}
},
"target": {
"entity": [
{
"domain": [
"todo"
]
}
]
},
"response": {
"optional": false
}
},
"remove_completed_items": {
"name": "Remove all completed to-do list items",
"description": "Remove all to-do list items that have been completed.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"todo"
],
"supported_features": [
2
]
}
]
}
}
}
},
{
"domain": "weather",
"services": {
"get_forecasts": {
"name": "Get forecasts",
"description": "Get weather forecasts.",
"fields": {
"type": {
"required": true,
"selector": {
"select": {
"options": [
"daily",
"hourly",
"twice_daily"
],
"translation_key": "forecast_type"
}
},
"name": "Forecast type",
"description": "Forecast type: daily, hourly or twice daily."
}
},
"target": {
"entity": [
{
"domain": [
"weather"
],
"supported_features": [
1,
2,
4
]
}
]
},
"response": {
"optional": false
}
}
}
},
{
"domain": "zha",
"services": {
"permit": {
"name": "Permit",
"description": "Allows nodes to join the Zigbee network.",
"fields": {
"duration": {
"default": 60,
"selector": {
"number": {
"min": 0,
"max": 254,
"unit_of_measurement": "seconds"
}
},
"name": "Duration",
"description": "Time to permit joins."
},
"ieee": {
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address of the node permitting new joins."
},
"source_ieee": {
"example": "00:0a:bf:00:01:10:23:35",
"selector": {
"text": null
},
"name": "Source IEEE",
"description": "IEEE address of the joining device (must be used with the install code)."
},
"install_code": {
"example": "1234-5678-1234-5678-AABB-CCDD-AABB-CCDD-EEFF",
"selector": {
"text": null
},
"name": "Install code",
"description": "Install code of the joining device (must be used with the source_ieee)."
},
"qr_code": {
"example": "Z:000D6FFFFED4163B$I:52797BF4A5084DAA8E1712B61741CA024051",
"selector": {
"text": null
},
"name": "QR code",
"description": "Value of the QR install code (different between vendors)."
}
}
},
"remove": {
"name": "Remove",
"description": "Removes a node from the Zigbee network.",
"fields": {
"ieee": {
"required": true,
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address of the node to remove."
}
}
},
"set_zigbee_cluster_attribute": {
"name": "Set zigbee cluster attribute",
"description": "Sets an attribute value for the specified cluster on the specified entity.",
"fields": {
"ieee": {
"required": true,
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address for the device."
},
"endpoint_id": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535,
"mode": "box"
}
},
"name": "Endpoint ID",
"description": "Endpoint ID for the cluster."
},
"cluster_id": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Cluster ID",
"description": "ZCL cluster to retrieve attributes for."
},
"cluster_type": {
"default": "in",
"selector": {
"select": {
"options": [
"in",
"out"
]
}
},
"name": "Cluster Type",
"description": "Type of the cluster."
},
"attribute": {
"required": true,
"example": 0,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Attribute",
"description": "ID of the attribute to set."
},
"value": {
"required": true,
"example": 1,
"selector": {
"text": null
},
"name": "Value",
"description": "Value to write to the attribute."
},
"manufacturer": {
"example": 252,
"selector": {
"text": null
},
"name": "Manufacturer",
"description": "Manufacturer code. Use a value of \"-1\" to force no code to be set."
}
}
},
"issue_zigbee_cluster_command": {
"name": "Issue zigbee cluster command",
"description": "Issues a command on the specified cluster on the specified entity.",
"fields": {
"ieee": {
"required": true,
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address for the device."
},
"endpoint_id": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Endpoint ID",
"description": "Endpoint ID for the cluster."
},
"cluster_id": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Cluster ID",
"description": "ZCL cluster to retrieve attributes for."
},
"cluster_type": {
"default": "in",
"selector": {
"select": {
"options": [
"in",
"out"
]
}
},
"name": "Cluster Type",
"description": "Type of the cluster."
},
"command": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Command",
"description": "ID of the command to execute."
},
"command_type": {
"required": true,
"selector": {
"select": {
"options": [
"client",
"server"
]
}
},
"name": "Command Type",
"description": "Type of the command to execute."
},
"args": {
"example": "[arg1, arg2, argN]",
"selector": {
"object": null
},
"name": "Args",
"description": "Arguments to pass to the command."
},
"params": {
"selector": {
"object": null
},
"name": "Params",
"description": "Parameters to pass to the command."
},
"manufacturer": {
"example": 252,
"selector": {
"text": null
},
"name": "Manufacturer",
"description": "Manufacturer code. Use a value of \"-1\" to force no code to be set."
}
}
},
"issue_zigbee_group_command": {
"name": "Issue zigbee group command",
"description": "Issue command on the specified cluster on the specified group.",
"fields": {
"group": {
"required": true,
"example": 546,
"selector": {
"text": null
},
"name": "Group",
"description": "Hexadecimal address of the group."
},
"cluster_id": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Cluster ID",
"description": "ZCL cluster to send command to."
},
"cluster_type": {
"default": "in",
"selector": {
"select": {
"options": [
"in",
"out"
]
}
},
"name": "Cluster type",
"description": "Type of the cluster."
},
"command": {
"required": true,
"selector": {
"number": {
"min": 1,
"max": 65535
}
},
"name": "Command",
"description": "ID of the command to execute."
},
"args": {
"example": "[arg1, arg2, argN]",
"selector": {
"object": null
},
"name": "Args",
"description": "Arguments to pass to the command."
},
"manufacturer": {
"example": 252,
"selector": {
"text": null
},
"name": "Manufacturer",
"description": "Manufacturer code. Use a value of \"-1\" to force no code to be set."
}
}
},
"warning_device_squawk": {
"name": "Warning device squawk",
"description": "This action uses the WD capabilities to emit a quick audible/visible pulse called a \"squawk\". The squawk command has no effect if the WD is currently active (warning in progress).",
"fields": {
"ieee": {
"required": true,
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address for the device."
},
"mode": {
"default": 0,
"selector": {
"number": {
"min": 0,
"max": 1,
"mode": "box"
}
},
"name": "Mode",
"description": "The Squawk Mode field is used as a 4-bit enumeration, and can have one of the values shown in Table 8-24 of the ZCL spec - Squawk Mode Field. The exact operation of each mode (how the WD “squawks”) is implementation specific."
},
"strobe": {
"default": 1,
"selector": {
"number": {
"min": 0,
"max": 1,
"mode": "box"
}
},
"name": "Strobe",
"description": "The strobe field is used as a Boolean, and determines if the visual indication is also required in addition to the audible squawk, as shown in Table 8-25 of the ZCL spec - Strobe Bit."
},
"level": {
"default": 2,
"selector": {
"number": {
"min": 0,
"max": 3,
"mode": "box"
}
},
"name": "Level",
"description": "The squawk level field is used as a 2-bit enumeration, and determines the intensity of audible squawk sound as shown in Table 8-26 of the ZCL spec - Squawk Level Field Values."
}
}
},
"warning_device_warn": {
"name": "Warning device starts alert",
"description": "This action starts the operation of the warning device. The warning device alerts the surrounding area by audible (siren) and visual (strobe) signals.",
"fields": {
"ieee": {
"required": true,
"example": "00:0d:6f:00:05:7d:2d:34",
"selector": {
"text": null
},
"name": "IEEE",
"description": "IEEE address for the device."
},
"mode": {
"default": 3,
"selector": {
"number": {
"min": 0,
"max": 6,
"mode": "box"
}
},
"name": "Mode",
"description": "The Warning Mode field is used as a 4-bit enumeration, can have one of the values 0-6 defined below in table 8-20 of the ZCL spec. The exact behavior of the warning device in each mode is according to the relevant security standards."
},
"strobe": {
"default": 1,
"selector": {
"number": {
"min": 0,
"max": 1,
"mode": "box"
}
},
"name": "Strobe",
"description": "The Strobe field is used as a 2-bit enumeration, and determines if the visual indication is required in addition to the audible siren, as indicated in Table 8-21 of the ZCL spec. \"0\" means no strobe, \"1\" means strobe. If the strobe field is “1” and the Warning Mode is “0” (“Stop”), then only the strobe is activated."
},
"level": {
"default": 2,
"selector": {
"number": {
"min": 0,
"max": 3,
"mode": "box"
}
},
"name": "Level",
"description": "The Siren Level field is used as a 2-bit enumeration, and indicates the intensity of audible squawk sound as shown in Table 8-22 of the ZCL spec."
},
"duration": {
"default": 5,
"selector": {
"number": {
"min": 0,
"max": 65535,
"unit_of_measurement": "seconds"
}
},
"name": "Duration",
"description": "Requested duration of warning, in seconds (16 bit). If both Strobe and Warning Mode are \"0\" this field is ignored."
},
"duty_cycle": {
"default": 0,
"selector": {
"number": {
"min": 0,
"max": 100,
"step": 10
}
},
"name": "Duty cycle",
"description": "Indicates the length of the flash cycle. This allows you to vary the flash duration for different alarm types (e.g., fire, police, burglar). The valid range is 0-100 in increments of 10. All other values must be rounded to the nearest valid value. Strobe calculates a duty cycle over a duration of one second. The ON state must precede the OFF state. For example, if the Strobe Duty Cycle field specifies “40,”, then the strobe flashes ON for 4/10ths of a second and then turns OFF for 6/10ths of a second."
},
"intensity": {
"default": 2,
"selector": {
"number": {
"min": 0,
"max": 3,
"mode": "box"
}
},
"name": "Intensity",
"description": "Indicates the intensity of the strobe as shown in Table 8-23 of the ZCL spec. This attribute is designed to vary the output of the strobe (i.e., brightness) and not its frequency, which is detailed in section 8.4.2.3.1.6 of the ZCL spec."
}
}
},
"set_lock_user_code": {
"name": "Set lock user code",
"description": "Sets a user code on a lock.",
"fields": {
"code_slot": {
"required": true,
"example": 1,
"selector": {
"text": null
},
"name": "Code slot",
"description": "Code slot to set the code in."
},
"user_code": {
"required": true,
"example": 1234,
"selector": {
"text": null
},
"name": "Code",
"description": "Code to set."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
],
"integration": "zha"
}
]
}
},
"enable_lock_user_code": {
"name": "Enable lock user",
"description": "Enables a user code on a lock.",
"fields": {
"code_slot": {
"required": true,
"example": 1,
"selector": {
"text": null
},
"name": "Code slot",
"description": "Code slot to enable."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
],
"integration": "zha"
}
]
}
},
"disable_lock_user_code": {
"name": "Disable lock user",
"description": "Disables a user code on a lock.",
"fields": {
"code_slot": {
"required": true,
"example": 1,
"selector": {
"text": null
},
"name": "Code slot",
"description": "Code slot to disable."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
],
"integration": "zha"
}
]
}
},
"clear_lock_user_code": {
"name": "Clear lock user",
"description": "Clears a user code from a lock.",
"fields": {
"code_slot": {
"required": true,
"example": 1,
"selector": {
"text": null
},
"name": "Code slot",
"description": "Code slot to clear code from."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
],
"integration": "zha"
}
]
}
}
}
},
{
"domain": "alarm_control_panel",
"services": {
"alarm_disarm": {
"name": "Disarm",
"description": "Disarms the alarm.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to disarm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
]
}
]
}
},
"alarm_arm_home": {
"name": "Arm home",
"description": "Sets the alarm to: _armed, but someone is home_.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
1
]
}
]
}
},
"alarm_arm_away": {
"name": "Arm away",
"description": "Sets the alarm to: _armed, no one home_.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
2
]
}
]
}
},
"alarm_arm_night": {
"name": "Arm night",
"description": "Sets the alarm to: _armed for the night_.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
4
]
}
]
}
},
"alarm_arm_vacation": {
"name": "Arm vacation",
"description": "Sets the alarm to: _armed for vacation_.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
32
]
}
]
}
},
"alarm_arm_custom_bypass": {
"name": "Arm with custom bypass",
"description": "Arms the alarm while allowing to bypass a custom area.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
16
]
}
]
}
},
"alarm_trigger": {
"name": "Trigger",
"description": "Enables an external alarm trigger.",
"fields": {
"code": {
"example": "1234",
"selector": {
"text": null
},
"name": "Code",
"description": "Code to arm the alarm."
}
},
"target": {
"entity": [
{
"domain": [
"alarm_control_panel"
],
"supported_features": [
8
]
}
]
}
}
}
},
{
"domain": "button",
"services": {
"press": {
"name": "Press",
"description": "Press the button entity.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"button"
]
}
]
}
}
}
},
{
"domain": "climate",
"services": {
"turn_on": {
"name": "Turn on",
"description": "Turns climate device on.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
256
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Turns climate device off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
128
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles climate device, from on to off, or off to on.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
128,
256
]
}
]
}
},
"set_hvac_mode": {
"name": "Set HVAC mode",
"description": "Sets HVAC operation mode.",
"fields": {
"hvac_mode": {
"selector": {
"select": {
"options": [
"off",
"auto",
"cool",
"dry",
"fan_only",
"heat_cool",
"heat"
],
"translation_key": "hvac_mode"
}
},
"name": "HVAC mode",
"description": "HVAC operation mode."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
]
}
]
}
},
"set_preset_mode": {
"name": "Set preset mode",
"description": "Sets preset mode.",
"fields": {
"preset_mode": {
"required": true,
"example": "away",
"selector": {
"text": null
},
"name": "Preset mode",
"description": "Preset mode."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
16
]
}
]
}
},
"set_aux_heat": {
"name": "Turn on/off auxiliary heater",
"description": "Turns auxiliary heater on/off.",
"fields": {
"aux_heat": {
"required": true,
"selector": {
"boolean": null
},
"name": "Auxiliary heating",
"description": "New value of auxiliary heater."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
64
]
}
]
}
},
"set_temperature": {
"name": "Set target temperature",
"description": "Sets target temperature.",
"fields": {
"temperature": {
"filter": {
"supported_features": [
1
]
},
"selector": {
"number": {
"min": 0,
"max": 250,
"step": 0.1,
"mode": "box"
}
},
"name": "Temperature",
"description": "Target temperature."
},
"target_temp_high": {
"filter": {
"supported_features": [
2
]
},
"advanced": true,
"selector": {
"number": {
"min": 0,
"max": 250,
"step": 0.1,
"mode": "box"
}
},
"name": "Target temperature high",
"description": "High target temperature."
},
"target_temp_low": {
"filter": {
"supported_features": [
2
]
},
"advanced": true,
"selector": {
"number": {
"min": 0,
"max": 250,
"step": 0.1,
"mode": "box"
}
},
"name": "Target temperature low",
"description": "Low target temperature."
},
"hvac_mode": {
"selector": {
"select": {
"options": [
"off",
"auto",
"cool",
"dry",
"fan_only",
"heat_cool",
"heat"
],
"translation_key": "hvac_mode"
}
},
"name": "HVAC mode",
"description": "HVAC operation mode."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
1,
2
]
}
]
}
},
"set_humidity": {
"name": "Set target humidity",
"description": "Sets target humidity.",
"fields": {
"humidity": {
"required": true,
"selector": {
"number": {
"min": 30,
"max": 99,
"unit_of_measurement": "%"
}
},
"name": "Humidity",
"description": "Target humidity."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
4
]
}
]
}
},
"set_fan_mode": {
"name": "Set fan mode",
"description": "Sets fan operation mode.",
"fields": {
"fan_mode": {
"required": true,
"example": "low",
"selector": {
"text": null
},
"name": "Fan mode",
"description": "Fan operation mode."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
8
]
}
]
}
},
"set_swing_mode": {
"name": "Set swing mode",
"description": "Sets swing operation mode.",
"fields": {
"swing_mode": {
"required": true,
"example": "horizontal",
"selector": {
"text": null
},
"name": "Swing mode",
"description": "Swing operation mode."
}
},
"target": {
"entity": [
{
"domain": [
"climate"
],
"supported_features": [
32
]
}
]
}
}
}
},
{
"domain": "cover",
"services": {
"open_cover": {
"name": "Open",
"description": "Opens a cover.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
1
]
}
]
}
},
"close_cover": {
"name": "Close",
"description": "Closes a cover.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
2
]
}
]
}
},
"set_cover_position": {
"name": "Set position",
"description": "Moves a cover to a specific position.",
"fields": {
"position": {
"required": true,
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Position",
"description": "Target position."
}
},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
4
]
}
]
}
},
"stop_cover": {
"name": "Stop",
"description": "Stops the cover movement.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
8
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles a cover open/closed.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
3
]
}
]
}
},
"open_cover_tilt": {
"name": "Open tilt",
"description": "Tilts a cover open.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
16
]
}
]
}
},
"close_cover_tilt": {
"name": "Close tilt",
"description": "Tilts a cover to close.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
32
]
}
]
}
},
"stop_cover_tilt": {
"name": "Stop tilt",
"description": "Stops a tilting cover movement.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
64
]
}
]
}
},
"set_cover_tilt_position": {
"name": "Set tilt position",
"description": "Moves a cover tilt to a specific position.",
"fields": {
"tilt_position": {
"required": true,
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Tilt position",
"description": "Target tilt positition."
}
},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
128
]
}
]
}
},
"toggle_cover_tilt": {
"name": "Toggle tilt",
"description": "Toggles a cover tilt open/closed.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"cover"
],
"supported_features": [
48
]
}
]
}
}
}
},
{
"domain": "fan",
"services": {
"turn_on": {
"name": "Turn on",
"description": "Turns fan on.",
"fields": {
"percentage": {
"filter": {
"supported_features": [
1
]
},
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Percentage",
"description": "Speed of the fan."
},
"preset_mode": {
"example": "auto",
"filter": {
"supported_features": [
8
]
},
"selector": {
"text": null
},
"name": "Preset mode",
"description": "Preset mode."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Turns fan off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"fan"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles the fan on/off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"fan"
]
}
]
}
},
"increase_speed": {
"name": "Increase speed",
"description": "Increases the speed of the fan.",
"fields": {
"percentage_step": {
"advanced": true,
"required": false,
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Increment",
"description": "Increases the speed by a percentage step."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
1
]
}
]
}
},
"decrease_speed": {
"name": "Decrease speed",
"description": "Decreases the speed of the fan.",
"fields": {
"percentage_step": {
"advanced": true,
"required": false,
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Decrement",
"description": "Decreases the speed by a percentage step."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
1
]
}
]
}
},
"oscillate": {
"name": "Oscillate",
"description": "Controls oscillatation of the fan.",
"fields": {
"oscillating": {
"required": true,
"selector": {
"boolean": null
},
"name": "Oscillating",
"description": "Turn on/off oscillation."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
2
]
}
]
}
},
"set_direction": {
"name": "Set direction",
"description": "Sets the fan rotation direction.",
"fields": {
"direction": {
"required": true,
"selector": {
"select": {
"options": [
"forward",
"reverse"
],
"translation_key": "direction"
}
},
"name": "Direction",
"description": "Direction to rotate."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
4
]
}
]
}
},
"set_percentage": {
"name": "Set speed",
"description": "Sets the fan speed.",
"fields": {
"percentage": {
"required": true,
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Percentage",
"description": "Speed of the fan."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
1
]
}
]
}
},
"set_preset_mode": {
"name": "Set preset mode",
"description": "Sets preset mode.",
"fields": {
"preset_mode": {
"required": true,
"example": "auto",
"selector": {
"text": null
},
"name": "Preset mode",
"description": "Preset mode."
}
},
"target": {
"entity": [
{
"domain": [
"fan"
],
"supported_features": [
8
]
}
]
}
}
}
},
{
"domain": "light",
"services": {
"turn_on": {
"name": "Turn on",
"description": "Turn on one or more lights and adjust properties of the light, even when they are turned on already.",
"fields": {
"transition": {
"filter": {
"supported_features": [
32
]
},
"selector": {
"number": {
"min": 0,
"max": 300,
"unit_of_measurement": "seconds"
}
},
"name": "Transition",
"description": "Duration it takes to get to next state."
},
"rgb_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100]",
"selector": {
"color_rgb": null
},
"name": "Color",
"description": "The color in RGB format. A list of three integers between 0 and 255 representing the values of red, green, and blue."
},
"kelvin": {
"filter": {
"attribute": {
"supported_color_modes": [
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"color_temp": {
"unit": "kelvin",
"min": 2000,
"max": 6500
}
},
"name": "Color temperature",
"description": "Color temperature in Kelvin."
},
"brightness_pct": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Brightness",
"description": "Number indicating the percentage of full brightness, where 0 turns the light off, 1 is the minimum brightness, and 100 is the maximum brightness."
},
"brightness_step_pct": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": -100,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Brightness step",
"description": "Change brightness by a percentage."
},
"effect": {
"filter": {
"supported_features": [
4
]
},
"selector": {
"text": null
},
"name": "Effect",
"description": "Light effect."
},
"advanced_fields": {
"collapsed": true,
"fields": {
"rgbw_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100, 50]",
"selector": {
"object": null
}
},
"rgbww_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100, 50, 70]",
"selector": {
"object": null
}
},
"color_name": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"select": {
"translation_key": "color_name",
"options": [
"homeassistant",
"aliceblue",
"antiquewhite",
"aqua",
"aquamarine",
"azure",
"beige",
"bisque",
"blanchedalmond",
"blue",
"blueviolet",
"brown",
"burlywood",
"cadetblue",
"chartreuse",
"chocolate",
"coral",
"cornflowerblue",
"cornsilk",
"crimson",
"cyan",
"darkblue",
"darkcyan",
"darkgoldenrod",
"darkgray",
"darkgreen",
"darkgrey",
"darkkhaki",
"darkmagenta",
"darkolivegreen",
"darkorange",
"darkorchid",
"darkred",
"darksalmon",
"darkseagreen",
"darkslateblue",
"darkslategray",
"darkslategrey",
"darkturquoise",
"darkviolet",
"deeppink",
"deepskyblue",
"dimgray",
"dimgrey",
"dodgerblue",
"firebrick",
"floralwhite",
"forestgreen",
"fuchsia",
"gainsboro",
"ghostwhite",
"gold",
"goldenrod",
"gray",
"green",
"greenyellow",
"grey",
"honeydew",
"hotpink",
"indianred",
"indigo",
"ivory",
"khaki",
"lavender",
"lavenderblush",
"lawngreen",
"lemonchiffon",
"lightblue",
"lightcoral",
"lightcyan",
"lightgoldenrodyellow",
"lightgray",
"lightgreen",
"lightgrey",
"lightpink",
"lightsalmon",
"lightseagreen",
"lightskyblue",
"lightslategray",
"lightslategrey",
"lightsteelblue",
"lightyellow",
"lime",
"limegreen",
"linen",
"magenta",
"maroon",
"mediumaquamarine",
"mediumblue",
"mediumorchid",
"mediumpurple",
"mediumseagreen",
"mediumslateblue",
"mediumspringgreen",
"mediumturquoise",
"mediumvioletred",
"midnightblue",
"mintcream",
"mistyrose",
"moccasin",
"navajowhite",
"navy",
"navyblue",
"oldlace",
"olive",
"olivedrab",
"orange",
"orangered",
"orchid",
"palegoldenrod",
"palegreen",
"paleturquoise",
"palevioletred",
"papayawhip",
"peachpuff",
"peru",
"pink",
"plum",
"powderblue",
"purple",
"red",
"rosybrown",
"royalblue",
"saddlebrown",
"salmon",
"sandybrown",
"seagreen",
"seashell",
"sienna",
"silver",
"skyblue",
"slateblue",
"slategray",
"slategrey",
"snow",
"springgreen",
"steelblue",
"tan",
"teal",
"thistle",
"tomato",
"turquoise",
"violet",
"wheat",
"white",
"whitesmoke",
"yellow",
"yellowgreen"
]
}
}
},
"hs_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[300, 70]",
"selector": {
"object": null
}
},
"xy_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[0.52, 0.43]",
"selector": {
"object": null
}
},
"color_temp": {
"filter": {
"attribute": {
"supported_color_modes": [
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"color_temp": {
"unit": "mired",
"min": 153,
"max": 500
}
}
},
"brightness": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": 0,
"max": 255
}
}
},
"brightness_step": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": -225,
"max": 255
}
}
},
"white": {
"filter": {
"attribute": {
"supported_color_modes": [
"white"
]
}
},
"selector": {
"constant": {
"value": true,
"label": "Enabled"
}
}
},
"profile": {
"example": "relax",
"selector": {
"text": null
}
},
"flash": {
"filter": {
"supported_features": [
8
]
},
"selector": {
"select": {
"options": [
{
"label": "Long",
"value": "long"
},
{
"label": "Short",
"value": "short"
}
]
}
}
}
}
}
},
"target": {
"entity": [
{
"domain": [
"light"
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Turn off one or more lights.",
"fields": {
"transition": {
"filter": {
"supported_features": [
32
]
},
"selector": {
"number": {
"min": 0,
"max": 300,
"unit_of_measurement": "seconds"
}
},
"name": "Transition",
"description": "Duration it takes to get to next state."
},
"advanced_fields": {
"collapsed": true,
"fields": {
"flash": {
"filter": {
"supported_features": [
8
]
},
"selector": {
"select": {
"options": [
{
"label": "Long",
"value": "long"
},
{
"label": "Short",
"value": "short"
}
]
}
}
}
}
}
},
"target": {
"entity": [
{
"domain": [
"light"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles one or more lights, from on to off, or, off to on, based on their current state.",
"fields": {
"transition": {
"filter": {
"supported_features": [
32
]
},
"selector": {
"number": {
"min": 0,
"max": 300,
"unit_of_measurement": "seconds"
}
},
"name": "Transition",
"description": "Duration it takes to get to next state."
},
"rgb_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100]",
"selector": {
"color_rgb": null
},
"name": "Color",
"description": "The color in RGB format. A list of three integers between 0 and 255 representing the values of red, green, and blue."
},
"kelvin": {
"filter": {
"attribute": {
"supported_color_modes": [
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"color_temp": {
"unit": "kelvin",
"min": 2000,
"max": 6500
}
},
"name": "Color temperature",
"description": "Color temperature in Kelvin."
},
"brightness_pct": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": 0,
"max": 100,
"unit_of_measurement": "%"
}
},
"name": "Brightness",
"description": "Number indicating the percentage of full brightness, where 0 turns the light off, 1 is the minimum brightness, and 100 is the maximum brightness."
},
"effect": {
"filter": {
"supported_features": [
4
]
},
"selector": {
"text": null
},
"name": "Effect",
"description": "Light effect."
},
"advanced_fields": {
"collapsed": true,
"fields": {
"rgbw_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100, 50]",
"selector": {
"object": null
}
},
"rgbww_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[255, 100, 100, 50, 70]",
"selector": {
"object": null
}
},
"color_name": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"select": {
"translation_key": "color_name",
"options": [
"homeassistant",
"aliceblue",
"antiquewhite",
"aqua",
"aquamarine",
"azure",
"beige",
"bisque",
"blanchedalmond",
"blue",
"blueviolet",
"brown",
"burlywood",
"cadetblue",
"chartreuse",
"chocolate",
"coral",
"cornflowerblue",
"cornsilk",
"crimson",
"cyan",
"darkblue",
"darkcyan",
"darkgoldenrod",
"darkgray",
"darkgreen",
"darkgrey",
"darkkhaki",
"darkmagenta",
"darkolivegreen",
"darkorange",
"darkorchid",
"darkred",
"darksalmon",
"darkseagreen",
"darkslateblue",
"darkslategray",
"darkslategrey",
"darkturquoise",
"darkviolet",
"deeppink",
"deepskyblue",
"dimgray",
"dimgrey",
"dodgerblue",
"firebrick",
"floralwhite",
"forestgreen",
"fuchsia",
"gainsboro",
"ghostwhite",
"gold",
"goldenrod",
"gray",
"green",
"greenyellow",
"grey",
"honeydew",
"hotpink",
"indianred",
"indigo",
"ivory",
"khaki",
"lavender",
"lavenderblush",
"lawngreen",
"lemonchiffon",
"lightblue",
"lightcoral",
"lightcyan",
"lightgoldenrodyellow",
"lightgray",
"lightgreen",
"lightgrey",
"lightpink",
"lightsalmon",
"lightseagreen",
"lightskyblue",
"lightslategray",
"lightslategrey",
"lightsteelblue",
"lightyellow",
"lime",
"limegreen",
"linen",
"magenta",
"maroon",
"mediumaquamarine",
"mediumblue",
"mediumorchid",
"mediumpurple",
"mediumseagreen",
"mediumslateblue",
"mediumspringgreen",
"mediumturquoise",
"mediumvioletred",
"midnightblue",
"mintcream",
"mistyrose",
"moccasin",
"navajowhite",
"navy",
"navyblue",
"oldlace",
"olive",
"olivedrab",
"orange",
"orangered",
"orchid",
"palegoldenrod",
"palegreen",
"paleturquoise",
"palevioletred",
"papayawhip",
"peachpuff",
"peru",
"pink",
"plum",
"powderblue",
"purple",
"red",
"rosybrown",
"royalblue",
"saddlebrown",
"salmon",
"sandybrown",
"seagreen",
"seashell",
"sienna",
"silver",
"skyblue",
"slateblue",
"slategray",
"slategrey",
"snow",
"springgreen",
"steelblue",
"tan",
"teal",
"thistle",
"tomato",
"turquoise",
"violet",
"wheat",
"white",
"whitesmoke",
"yellow",
"yellowgreen"
]
}
}
},
"hs_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[300, 70]",
"selector": {
"object": null
}
},
"xy_color": {
"filter": {
"attribute": {
"supported_color_modes": [
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"example": "[0.52, 0.43]",
"selector": {
"object": null
}
},
"color_temp": {
"filter": {
"attribute": {
"supported_color_modes": [
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"color_temp": {
"unit": "mired",
"min": 153,
"max": 500
}
}
},
"brightness": {
"filter": {
"attribute": {
"supported_color_modes": [
"brightness",
"color_temp",
"hs",
"xy",
"rgb",
"rgbw",
"rgbww"
]
}
},
"selector": {
"number": {
"min": 0,
"max": 255
}
}
},
"white": {
"filter": {
"attribute": {
"supported_color_modes": [
"white"
]
}
},
"selector": {
"constant": {
"value": true,
"label": "Enabled"
}
}
},
"profile": {
"example": "relax",
"selector": {
"text": null
}
},
"flash": {
"filter": {
"supported_features": [
8
]
},
"selector": {
"select": {
"options": [
{
"label": "Long",
"value": "long"
},
{
"label": "Short",
"value": "short"
}
]
}
}
}
}
}
},
"target": {
"entity": [
{
"domain": [
"light"
]
}
]
}
}
}
},
{
"domain": "lock",
"services": {
"unlock": {
"name": "Unlock",
"description": "Unlocks a lock.",
"fields": {
"code": {
"example": 1234,
"selector": {
"text": null
},
"name": "Code",
"description": "Code used to unlock the lock."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
]
}
]
}
},
"lock": {
"name": "Lock",
"description": "Locks a lock.",
"fields": {
"code": {
"example": 1234,
"selector": {
"text": null
},
"name": "Code",
"description": "Code used to lock the lock."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
]
}
]
}
},
"open": {
"name": "Open",
"description": "Opens a lock.",
"fields": {
"code": {
"example": 1234,
"selector": {
"text": null
},
"name": "Code",
"description": "Code used to open the lock."
}
},
"target": {
"entity": [
{
"domain": [
"lock"
],
"supported_features": [
1
]
}
]
}
}
}
},
{
"domain": "number",
"services": {
"set_value": {
"name": "Set",
"description": "Sets the value of a number.",
"fields": {
"value": {
"example": 42,
"selector": {
"text": null
},
"name": "Value",
"description": "The target value to set."
}
},
"target": {
"entity": [
{
"domain": [
"number"
]
}
]
}
}
}
},
{
"domain": "select",
"services": {
"select_first": {
"name": "First",
"description": "Selects the first option.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"select"
]
}
]
}
},
"select_last": {
"name": "Last",
"description": "Selects the last option.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"select"
]
}
]
}
},
"select_next": {
"name": "Next",
"description": "Selects the next option.",
"fields": {
"cycle": {
"default": true,
"selector": {
"boolean": null
},
"name": "Cycle",
"description": "If the option should cycle from the last to the first."
}
},
"target": {
"entity": [
{
"domain": [
"select"
]
}
]
}
},
"select_option": {
"name": "Select",
"description": "Selects an option.",
"fields": {
"option": {
"required": true,
"example": "\"Item A\"",
"selector": {
"text": null
},
"name": "Option",
"description": "Option to be selected."
}
},
"target": {
"entity": [
{
"domain": [
"select"
]
}
]
}
},
"select_previous": {
"name": "Previous",
"description": "Selects the previous option.",
"fields": {
"cycle": {
"default": true,
"selector": {
"boolean": null
},
"name": "Cycle",
"description": "If the option should cycle from the first to the last."
}
},
"target": {
"entity": [
{
"domain": [
"select"
]
}
]
}
}
}
},
{
"domain": "siren",
"services": {
"turn_on": {
"name": "Turn on",
"description": "Turns the siren on.",
"fields": {
"tone": {
"example": "fire",
"filter": {
"supported_features": [
4
]
},
"required": false,
"selector": {
"text": null
},
"name": "Tone",
"description": "The tone to emit. When `available_tones` property is a map, either the key or the value can be used. Must be supported by the integration."
},
"volume_level": {
"example": 0.5,
"filter": {
"supported_features": [
8
]
},
"required": false,
"selector": {
"number": {
"min": 0,
"max": 1,
"step": 0.05
}
},
"name": "Volume",
"description": "The volume. 0 is inaudible, 1 is the maximum volume. Must be supported by the integration."
},
"duration": {
"example": 15,
"filter": {
"supported_features": [
16
]
},
"required": false,
"selector": {
"text": null
},
"name": "Duration",
"description": "Number of seconds the sound is played. Must be supported by the integration."
}
},
"target": {
"entity": [
{
"domain": [
"siren"
],
"supported_features": [
1
]
}
]
}
},
"turn_off": {
"name": "Turn off",
"description": "Turns the siren off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"siren"
],
"supported_features": [
2
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles the siren on/off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"siren"
],
"supported_features": [
3
]
}
]
}
}
}
},
{
"domain": "switch",
"services": {
"turn_off": {
"name": "Turn off",
"description": "Turns a switch off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"switch"
]
}
]
}
},
"turn_on": {
"name": "Turn on",
"description": "Turns a switch on.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"switch"
]
}
]
}
},
"toggle": {
"name": "Toggle",
"description": "Toggles a switch on/off.",
"fields": {},
"target": {
"entity": [
{
"domain": [
"switch"
]
}
]
}
}
}
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment