Files
2026-07-20 22:52:35 -04:00

1336 lines
34 KiB
YAML

boo:
name: Boo! 👻
description: >-
Calling this action spooks Home Assistant.
Performing this action will always fail.
random_fail:
name: Random fail 👻
description: Performing this action will randomly fail.
blueprint_import:
name: Import blueprint 👻
description: >-
Import a blueprint.
fields:
url:
name: URL
description: The URL to import the blueprint from.
required: true
selector:
text:
homeassistant_create_area:
name: Create an area 👻
description: >-
Creates a new area on the fly.
fields:
name:
name: Name
description: The name of the area to create.
required: true
selector:
text:
icon:
name: Icon
description: Icon to use for the area.
required: false
selector:
icon:
placeholder: mdi:texture-box
aliases:
name: Aliases
description: >-
A list of aliases for the area. This is useful if you want to use the
area in a different language or different nickname.
selector:
object:
homeassistant_add_alias_to_area:
name: Add an alias to an area 👻
description: >-
Adds an alias to an area.
fields:
area_id:
name: Area ID
description: The ID of the area to add the alias to.
required: true
selector:
area:
alias:
name: Alias
description: The alias (or list of aliases) to add to the area.
required: true
selector:
object:
homeassistant_remove_alias_from_area:
name: Remove an alias from an area 👻
description: >-
Removes an alias from an area.
fields:
area_id:
name: Area ID
description: The ID of the area to remove the alias from.
required: true
selector:
area:
alias:
name: Alias
description: The alias (or list of aliases) to remove from the area.
required: true
selector:
object:
homeassistant_set_area_aliases:
name: Sets aliases for an area 👻
description: >-
Sets aliases for an area. Overwrites and removes any existing aliases,
fully replacing them with the new ones.
fields:
area_id:
name: Area ID
description: The ID of the area to set the aliases for.
required: true
selector:
area:
aliases:
name: Aliases
description: The aliases to set for the area.
required: true
selector:
object:
homeassistant_add_device_to_area:
name: Add a device to an area 👻
description: >-
Adds a device to an area. Please note, if the device is already in an area,
it will be removed from the previous area.
fields:
area_id:
name: Area ID
description: The ID of the area to add the device to.
required: true
selector:
area:
device_id:
name: Device ID
description: The ID of the device(s) to add to the area.
required: true
selector:
device:
multiple: true
homeassistant_remove_device_from_area:
name: Remove a device from an area 👻
description: >-
Removes a device from an area. As a device can only be in one area, this
call doesn't need to specify the area.
fields:
device_id:
name: Device ID
description: The ID of the device to remove the area from.
required: true
selector:
device:
multiple: true
homeassistant_add_entity_to_area:
name: Add an entity to an area 👻
description: >-
Adds an entity to an area. Please note, if the entity is already in an area,
it will be removed from the previous area. This will override the area
the device, that provides this entity, is in.
fields:
area_id:
name: Area ID
description: The ID of the area to add the entity to.
required: true
selector:
area:
entity_id:
name: Entity ID
description: The ID of the entity (or entities) to add to the area.
required: true
selector:
entity:
multiple: true
homeassistant_remove_entity_from_area:
name: Remove an entity from an area 👻
description: >-
Removes an entity from an area. As an entity can only be in one area, this
call doesn't need to specify the area. Please note, the entity will
still be in the area of the device that provides it after this call.
fields:
entity_id:
name: Entity ID
description: The ID of the entity (or entities) to remove the area from.
required: true
selector:
entity:
multiple: true
homeassistant_delete_area:
name: Delete an area 👻
description: >-
Deletes an area on the fly.
fields:
area_id:
name: Area ID
description: The ID of the area to delete.
required: true
selector:
area:
homeassistant_disable_config_entry:
name: Disable an integration 👻
description: >-
Disables an integration configuration entry.
fields:
config_entry_id:
name: Config entry
description: The integration configuration entry to disable.
required: true
selector:
config_entry:
homeassistant_enable_config_entry:
name: Enable an integration 👻
description: >-
Enables an integration configuration entry.
fields:
config_entry_id:
name: Config entry
description: The integration configuration entry to enable.
required: true
selector:
config_entry:
homeassistant_disable_device:
name: Disable a device 👻
description: >-
Disables a device on the fly.
fields:
device_id:
name: Device
description: The device(s) to disable.
required: true
selector:
device:
multiple: true
homeassistant_enable_device:
name: Enable a device 👻
description: >-
Enables a device on the fly.
fields:
device_id:
name: Device ID
description: >-
The raw device ID to enable. Disabled devices are not shown by Home
Assistant's device selector. Multiple IDs can be provided as a YAML list.
required: true
selector:
text:
homeassistant_disable_user:
name: Disable a user 👻
description: >-
Disables a user account, preventing them from logging in.
fields:
user_id:
name: User ID
description: The ID(s) of the user(s) to disable.
required: true
selector:
text:
homeassistant_enable_user:
name: Enable a user 👻
description: >-
Enables a user account, allowing them to log in.
fields:
user_id:
name: User ID
description: The ID(s) of the user(s) to enable.
required: true
selector:
text:
homeassistant_update_entity_id:
name: Update an entity's ID 👻
description: >-
Updates an entity's ID on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to update.
required: true
selector:
entity:
new_entity_id:
name: New Entity ID
description: The new ID for the entity.
required: true
selector:
text:
homeassistant_disable_entity:
name: Disable an entity 👻
description: >-
Disables an entity (or entities) on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to disable.
required: true
selector:
entity:
multiple: true
homeassistant_enable_entity:
name: Enable an entity 👻
description: >-
Enables an entity (or entities) on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to enable.
required: true
selector:
entity:
multiple: true
homeassistant_hide_entity:
name: Hide an entity 👻
description: >-
Hides an entity (or entities) on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to hide.
required: true
selector:
entity:
multiple: true
homeassistant_rename_entity:
name: Rename an entity 👻
description: >-
Renames an entity (or entities) on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to rename.
required: true
selector:
entity:
multiple: true
name:
name: Name
description: The new name for the entity/entities.
required: true
selector:
text:
homeassistant_unhide_entity:
name: Unhide an entity 👻
description: >-
Unhides an entity (or entities) on the fly.
fields:
entity_id:
name: Entity
description: The entity/entities to unhide.
required: true
selector:
entity:
multiple: true
homeassistant_create_floor:
name: Create a floor 👻
description: >-
Creates a new floor on the fly.
fields:
name:
name: Name
description: The name of the floor to create.
required: true
selector:
text:
icon:
name: Icon
description: Icon to use for the floor.
required: false
selector:
icon:
placeholder: mdi:texture-box
level:
name: Level
description: The level the floor is on in your home.
required: false
selector:
number:
aliases:
name: Aliases
description: >-
A list of aliases for the floor. This is useful if you want to use the
floor in a different language or different nickname.
selector:
object:
homeassistant_add_alias_to_floor:
name: Add an alias to a floor 👻
description: >-
Adds an alias to a floor.
fields:
floor_id:
name: Floor ID
description: The ID of the floor to add the alias to.
required: true
selector:
floor:
alias:
name: Alias
description: The alias (or list of aliases) to add to the floor.
required: true
selector:
object:
homeassistant_remove_alias_from_floor:
name: Remove an alias from a floor 👻
description: >-
Removes an alias from a floor.
fields:
floor_id:
name: Floor ID
description: The ID of the floor to remove the alias from.
required: true
selector:
floor:
alias:
name: Alias
description: The alias (or list of aliases) to remove from the floor.
required: true
selector:
object:
homeassistant_set_floor_aliases:
name: Sets aliases for a floor 👻
description: >-
Sets aliases for a floor. Overwrites and removes any existing aliases,
fully replacing them with the new ones.
fields:
floor_id:
name: Floor ID
description: The ID of the floor to set the aliases for.
required: true
selector:
floor:
aliases:
name: Aliases
description: The aliases to set for the floor.
required: true
selector:
object:
homeassistant_add_area_to_floor:
name: Add an area to a floor 👻
description: >-
Adds an area to a floor. Please note, if the area is already on a floor,
it will be removed from the previous floor.
fields:
floor_id:
name: Floor ID
description: The ID of the floor to add the area on.
required: true
selector:
floor:
area_id:
name: Area ID
description: The ID of the area(s) to add to the floor.
required: true
selector:
area:
multiple: true
homeassistant_remove_area_from_floor:
name: Remove an area from a floor 👻
description: >-
Removes an area from a floor. As an area can only be on one floor, this
call doesn't need to specify the floor.
fields:
area_id:
name: Area ID
description: The ID of the area to remove the floor from.
required: true
selector:
area:
multiple: true
homeassistant_delete_floor:
name: Delete a floor 👻
description: >-
Deletes a floor on the fly.
fields:
floor_id:
name: Floor ID
description: The ID of the floor to delete.
required: true
selector:
floor:
homeassistant_create_label:
name: Create a label 👻
description: >-
Creates a new label on the fly.
fields:
name:
name: Name
description: The name of the label to create.
required: true
selector:
text:
description:
name: Description
description: Description for the label.
required: true
selector:
text:
icon:
name: Icon
description: Icon to use for the label.
required: false
selector:
icon:
placeholder: mdi:tag
color:
name: Color
description: >-
Color to use for the label. Can be a color name from the list, or a
hex color code (like #FF0000).
selector:
select:
options:
- label: Primary theme color
value: primary
- label: Accent theme color
value: accent
- label: Disabled theme color
value: disabled
- label: Red
value: red
- label: Pink
value: pink
- label: Purple
value: purple
- label: Deep purple
value: deep_purple
- label: Indigo
value: indigo
- label: Blue
value: blue
- label: Light blue
value: light_blue
- label: Cyan
value: cyan
- label: Teal
value: teal
- label: Green
value: green
- label: Light green
value: light_green
- label: Lime
value: lime
- label: Yellow
value: yellow
- label: Orange
value: orange
- label: Deep orange
value: deep_orange
- label: Brown
value: brown
- label: Grey
value: grey
- label: Blue grey
value: blue_grey
- label: Black
value: black
- label: White
value: white
homeassistant_add_label_to_area:
name: Add a label to an area 👻
description: >-
Adds a label to an area. If multiple labels or multiple areas are
provided, all combinations will be added.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to add the area(s).
required: true
selector:
label:
multiple: true
area_id:
name: Area ID
description: The ID(s) of the area(s) to add the label(s) to.
required: true
selector:
area:
multiple: true
homeassistant_add_label_to_device:
name: Add a label to a device 👻
description: >-
Adds a label to a device. If multiple labels or multiple devices are
provided, all combinations will be added.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to add the device(s).
required: true
selector:
label:
multiple: true
device_id:
name: Device ID
description: The ID(s) of the device(s) to add the label(s) to.
required: true
selector:
device:
multiple: true
homeassistant_add_label_to_entity:
name: Add a label to an entity 👻
description: >-
Adds a label to an entity. If multiple labels or multiple entities are
provided, all combinations will be added.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to add the entity/entities.
required: true
selector:
label:
multiple: true
entity_id:
name: Entity ID
description: The ID(s) of the entity/entities to add the label(s) to.
required: true
selector:
entity:
multiple: true
homeassistant_remove_label_from_area:
name: Remove a label from an area 👻
description: >-
Removes a label from an area. If multiple labels or multiple areas are
provided, all combinations will be removed.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to remove from the area(s).
required: true
selector:
label:
multiple: true
area_id:
name: Area ID
description: The ID(s) of the area(s) to remove the label(s) from.
required: true
selector:
area:
multiple: true
homeassistant_remove_label_from_device:
name: Remove a label from a device 👻
description: >-
Removes a label from a device. If multiple labels or multiple devices are
provided, all combinations will be removed.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to remove from the device(s).
required: true
selector:
label:
multiple: true
device_id:
name: Device ID
description: The ID(s) of the device(s) to remove the label(s) from.
required: true
selector:
device:
multiple: true
homeassistant_remove_label_from_entity:
name: Remove a label from an entity 👻
description: >-
Removes a label from an entity. If multiple labels or multiple entities are
provided, all combinations will be removed.
fields:
label_id:
name: Label ID
description: The ID(s) of the label(s) to remove from the entity/entities.
required: true
selector:
label:
multiple: true
entity_id:
name: Entity ID
description: The ID(s) of the entity/entities to remove the label(s) from.
required: true
selector:
entity:
multiple: true
homeassistant_delete_label:
name: Delete a label 👻
description: >-
Deletes a label on the fly.
fields:
label_id:
name: Label ID
description: The ID of the label to delete.
required: true
selector:
label:
homeassistant_ignore_all_discovered:
name: Ignore all currently discovered devices 👻
description: >-
Ignore all currently discovered devices that are shown on the integrations
dashboard. This will not ignore devices that are discovered after this.
fields:
domain:
name: Integration domain
description: >-
The integration domain to ignore all discovered devices for.
If not provided, all domains will be considered to be ignored.
required: false
selector:
text:
homeassistant_disable_polling:
name: Disable polling for updates 👻
description: >-
Disables polling for updates for an integration configuration entry.
fields:
config_entry_id:
name: Config entry
description: The integration configuration entry to disable polling for.
required: true
selector:
config_entry:
homeassistant_enable_polling:
name: Enable polling for updates 👻
description: >-
Enables polling for updates for an integration configuration entry.
fields:
config_entry_id:
name: Config entry
description: The integration configuration entry to enable polling for.
required: true
selector:
config_entry:
homeassistant_delete_all_orphaned_entities:
name: Delete all orphaned entities 👻
description: >-
Deletes all orphaned entities that no longer have an integration that
claim/provide them. Please note, if the integration was just removed,
it might need a restart for Home Assistant to realize they are orphaned.
**WARNING** Entities might have been marked orphaned because an
integration is offline or not working since Home Assistant started. Calling
this action will delete those entities as well.
homeassistant_list_orphaned_database_entities:
name: List all orphaned database entities 👻
description: >-
Lists all orphaned database entities unclaimed by any integration.
homeassistant_restart:
name: Restart 👻
description: Restart the Home Assistant action.
fields:
safe_mode:
name: Safe mode
description: >-
If the restart should be done in safe mode. This will disable all
custom integrations and frontend modules.
required: false
selector:
boolean:
force:
name: Force restart
description: >-
Force the restart. WARNING! This will not gracefully shutdown Home
Assistant, it will skip configuration checks and ignore running database
migrations. Only use this if you know what you are doing.
required: false
selector:
boolean:
recorder_import_statistics:
name: Import statistics 👻
description: >-
Import long-term statistics.
fields:
statistic_id:
name: Statistics ID
description: The statistics ID (entity ID) to import for.
required: true
selector:
entity:
name:
name: Name
description: The name of the statistics.
required: false
selector:
text:
source:
name: Source
description: The source of the statistics data.
required: true
selector:
text:
unit_of_measurement:
name: Unit of measurement
description: The unit of measurement of the statistics.
required: false
selector:
text:
has_mean:
name: Has a mean
description: If the statistics has a mean value.
required: true
selector:
boolean:
has_sum:
name: Has a sum
description: If the statistics has a sum value.
required: true
selector:
boolean:
stats:
name: Statistics
description: >-
A list of mappings/dictionaries with statistics to import.
The dictionaries must contain a "start" key with a datetime string
other valid options are "mean", "sum", "min", "max", "last_reset", and
"state". All of those are optional and either an integer or a float,
except for "last_reset" which is a datetime string.
required: true
selector:
object:
select_random:
name: Select random option 👻
description: >-
Select a random option for a select entity.
target:
entity:
domain: select
fields:
options:
name: Options
description: >-
Limits the options to select from. If not provided, all options will be
considered.
required: false
selector:
object:
input_select_random:
name: Select random option 👻
description: >-
Select a random option for an input_select entity.
target:
entity:
domain: input_select
fields:
options:
name: Options
description: >-
Limits the options to select from. If not provided, all options will be
considered.
required: false
selector:
object:
input_select_shuffle:
name: Shuffle options 👻
description: >-
Shuffles the list of selectable options for an `input_select` entity.
This is not persistent and will be undone once reloaded or Home Assistant
restarts.
target:
entity:
domain: input_select
input_select_sort:
name: Sort options 👻
description: >-
Sorts the list of selectable options for an `input_select` entity.
This is not persistent and will be undone once reloaded or Home Assistant
restarts.
target:
entity:
domain: input_select
number_decrement:
name: Decrease value 👻
description: >-
Decrease a number entity value by a certain amount.
target:
entity:
domain: number
fields:
amount:
name: Amount
description: >-
The amount to decrease the number with. If not provided, the step of the
number entity will be used.
required: false
selector:
number:
number_increment:
name: Increase value 👻
description: >-
Increase a number entity value by a certain amount.
target:
entity:
domain: number
fields:
amount:
name: Amount
description: >-
The amount to increase the number with. If not provided, the step of the
number entity will be used.
required: false
selector:
number:
number_max:
name: Set maximum value 👻
description: >-
Set a number entity to its maximum value.
target:
entity:
domain: number
number_min:
name: Set minimum value 👻
description: >-
Set a number entity to its minimum value.
target:
entity:
domain: number
input_number_decrement:
name: Decrease value 👻
description: >-
Decrease an input number entity value by a certain amount.
target:
entity:
domain: input_number
fields:
amount:
name: Amount
description: >-
The amount to decrease the input number with. If not provided, the step
of the number entity will be used.
required: false
selector:
number:
input_number_increment:
name: Increase value 👻
description: >-
Increase an input number entity value by a certain amount.
target:
entity:
domain: input_number
fields:
amount:
name: Amount
description: >-
The amount to increase the input number with. If not provided, the step
of the number entity will be used.
required: false
selector:
number:
input_number_max:
name: Set maximum value 👻
description: >-
Set an input number entity to its maximum value.
target:
entity:
domain: input_number
input_number_min:
name: Set minimum value 👻
description: >-
Set an input number entity to its minimum value.
target:
entity:
domain: input_number
input_number_create:
name: Create an input number 👻
description: >-
Create a new input number helper on the fly.
fields:
name:
name: Name
description: The name of the new input number helper.
required: true
selector:
text:
input_number_id:
name: Input number entity ID
description: >-
The entity ID for the new input number helper. The input_number. prefix
is added automatically. If not provided, the entity ID will be generated
based on the name.
required: false
selector:
text:
min:
name: Minimum
description: The minimum value of the input number.
required: false
default: 0
selector:
number:
mode: box
step: any
max:
name: Maximum
description: The maximum value of the input number.
required: false
default: 100
selector:
number:
mode: box
step: any
initial:
name: Initial value
description: The initial value of the input number when Home Assistant starts.
required: false
selector:
number:
mode: box
step: any
step:
name: Step size
description: The step size of the input number.
required: false
default: 1
selector:
number:
mode: box
step: any
mode:
name: Display mode
description: >-
The display mode of the input number, which can be either a slider or
an input box.
required: false
default: slider
selector:
select:
options:
- label: Slider
value: slider
- label: Input field
value: box
icon:
name: Icon
description: The icon to use for the input number helper.
required: false
selector:
icon:
unit_of_measurement:
name: Unit of measurement
description: The unit of measurement of the input number.
required: false
selector:
text:
input_number_delete:
name: Delete an input number 👻
description: >-
Delete an input number helper. This works only with input numbers created
and managed via the UI. Input numbers created and managed in YAML cannot
be managed by Spook.
target:
entity:
domain: input_number
person_add_device_tracker:
name: Add a device tracker 👻
description: >-
Add a device tracker to a person.
fields:
entity_id:
name: Person
description: >-
The person entity ID to add the device tracker to.
required: true
selector:
entity:
filter:
- domain: person
device_tracker:
name: Device tracker
description: >-
The device tracker entity ID to add to the person.
required: true
selector:
entity:
multiple: true
filter:
- domain: device_tracker
person_remove_device_tracker:
name: Remove a device tracker 👻
description: >-
Remove a device tracker from a person.
fields:
entity_id:
name: Person
description: >-
The person entity ID to remove the device tracker from.
required: true
selector:
entity:
filter:
- domain: person
device_tracker:
name: Device tracker
description: >-
The device tracker entity ID to remove from the person.
required: true
selector:
entity:
multiple: true
filter:
- domain: device_tracker
repairs_create:
name: Create issue 👻
description: >-
Manually create and raise an issue in Home Assistant repairs.
fields:
title:
name: Title
description: The title of the issue.
required: true
selector:
text:
description:
name: Description
description: The description of the issue. Supports Markdown.
required: true
selector:
text:
multiline: true
issue_id:
name: Issue ID
description: >-
The issue can have an identifier, which allows you to cancel it
later with that ID if needed. It also prevents duplicate issues
to be created. If not provided, a random ID will be generated.
required: false
selector:
text:
domain:
name: Domain
description: >-
This field can be used to set the domain of the issue. For example,
by default (if not set), it will use "spook". This causes Spook to
be shown in the logo/image of the issue. If you set it to
"homeassistant", the Home Assistant logo will be used, or use "hue",
"zwave_js", "mqtt", etc. to use the logo of that integration.
required: false
selector:
text:
severity:
name: Severity
description: >-
The severity of the issue. This will be used to determine the
priority of the issue. If not set, "warning" will be used.
required: false
selector:
select:
options:
- label: Warning
value: warning
- label: Error
value: error
- label: Critical
value: critical
persistent:
name: Persistent
description: >-
If the issue should be persistent, which means it will survive
restarts of Home Assistant. By default, issues are not persistent.
required: false
selector:
boolean:
repairs_ignore_all:
name: Ignore all issues 👻
description: >-
Ignore all issues currently raised in Home Assistant Repairs.
repairs_remove:
name: Remove issue 👻
description: >-
Removes a manually created Home Assistant repairs issue. This action
can only remove issues created with the `repairs_create` action.
fields:
issue_id:
name: Issue ID
description: >-
The issue ID to remove.
required: true
selector:
text:
repairs_unignore_all:
name: Unignore all issues 👻
description: >-
Unignore all issues currently raised in Home Assistant Repairs.
timer_set_duration:
name: Set duration 👻
description: >-
Set duration for an existing timer.
target:
entity:
domain: timer
fields:
duration:
name: Duration
description: New duration for the timer, as a timedelta string.
required: true
example: "00:01:00, 60"
selector:
text:
zone_create:
name: Create a zone 👻
description: >-
Create a new zone in Home Assistant on the fly.
fields:
name:
name: Name
description: Name of the zone
required: true
selector:
text:
icon:
name: Icon
description: Icon to use for the zone
required: false
selector:
icon:
placeholder: mdi:map-marker
latitude:
name: Latitude
description: Latitude of the zone. This can be a template.
required: true
selector:
template:
longitude:
name: Longitude
description: Longitude of the zone. This can be a template.
required: true
selector:
template:
radius:
name: Radius
description: Radius of the zone
required: false
default: 100
selector:
number:
min: 0
max: 999999999999
unit_of_measurement: m
mode: box
zone_update:
name: Update a zone 👻
description: >-
Update properties of a zone on the fly.
fields:
entity_id:
name: Entity ID
description: The ID of the entity (or entities) to update.
required: true
selector:
entity:
filter:
- domain: zone
name:
name: Name
description: Name of the zone
required: false
selector:
text:
icon:
name: Icon
description: Icon to use for the zone
required: false
selector:
icon:
placeholder: mdi:map-marker
latitude:
name: Latitude
description: Latitude of the zone. This can be a template.
required: false
selector:
template:
longitude:
name: Longitude
description: Longitude of the zone. This can be a template.
required: false
selector:
template:
radius:
name: Radius
description: Radius of the zone
required: false
default: 100
selector:
number:
min: 0
max: 999999999999
step: any
unit_of_measurement: m
mode: box
zone_delete:
name: Delete a zone 👻
description: >-
Delete a zone. This works only with zones created and managed via the UI.
Zones created and managed in YAML cannot be managed by Spook.
fields:
entity_id:
name: Entity ID
description: The ID of the entity (or entities) to remove.
required: true
selector:
entity:
multiple: true
filter:
- domain: zone