6.2 KiB
title, description
title | description |
---|---|
Actions | Define what an object does when interacted with. |
Some cards have support for tap actions. These actions define what will happen when you tap or hold on an object within a card.
Actions can be enabled on:
Tap-Action
Action that will be performed when an object on a card is tapped.
tap_action:
action: toggle
{% configuration tap-action %}
tap_action:
required: false
description: Action taken on tap.
type: map
keys:
action:
required: true
description: "Action to perform (more-info
, toggle
, call-service
, navigate
, url
, none
)"
type: string
default: "toggle
(some cards overwrite default to more-info
if the provided entity cannot be toggled)"
navigation_path:
required: false
description: "Path to navigate to (e.g., /lovelace/0/
) when action
defined as navigate
"
type: string
default: none
url_path:
required: false
description: "Path to navigate to (e.g., https://www.home-assistant.io
) when action
defined as url
"
type: string
default: none
service:
required: false
description: "Service to call (e.g., media_player.media_play_pause
) when action
defined as call-service
"
type: string
default: none
data:
required: false
description: "Service data to include (e.g., entity_id: media_player.bedroom
) when action
defined as call-service
"
type: string
default: none
confirmation:
required: false
description: "Present a confirmation dialog to confirm the action. See confirmation
object below"
type: [boolean, map]
default: "false"
{% endconfiguration %}
Hold Action
Action that will be performed when an object on a card is tapped, held for at least half a second and then released. Action will only be triggered once, not continuously during hold.
hold_action:
action: toggle
{% configuration hold_action %}
hold_action:
required: false
description: Action taken on tap-and-hold
type: map
keys:
action:
required: true
description: "Action to perform (more-info
, toggle
, call-service
, navigate
, url
, none
)"
type: string
default: "more-info
"
navigation_path:
required: false
description: "Path to navigate to (e.g., /lovelace/0/
) when action
defined as navigate
"
type: string
default: none
url_path:
required: false
description: "Path to navigate to (e.g., https://www.home-assistant.io
) when action
defined as url
"
type: string
default: none
service:
required: false
description: "Service to call (e.g., media_player.media_play_pause
) when action
defined as call-service
"
type: string
default: none
data:
required: false
description: "Service data to include (e.g., entity_id: media_player.bedroom
) when action
defined as call-service
"
type: string
default: none
confirmation:
required: false
description: "Present a confirmation dialog to confirm the action. See confirmation
object below"
type: [boolean, map]
default: "false"
{% endconfiguration %}
Double-Tap Action
Action that will be performed when an object on a card is double-tapped.
double_tap_action:
action: toggle
{% configuration double_tap_action %}
double_tap_action:
required: false
description: Action taken on double tap
type: map
keys:
action:
required: true
description: "Action to perform (more-info
, toggle
, call-service
, navigate
, url
, none
)"
type: string
default: "more-info
"
navigation_path:
required: false
description: "Path to navigate to (e.g., /lovelace/0/
) when action
defined as navigate
"
type: string
default: none
url_path:
required: false
description: "Path to navigate to (e.g., https://www.home-assistant.io
) when action
defined as url
"
type: string
default: none
service:
required: false
description: "Service to call (e.g., media_player.media_play_pause
) when action
defined as call-service
"
type: string
default: none
data:
required: false
description: "Service data to include (e.g., entity_id: media_player.bedroom
) when action
defined as call-service
"
type: string
default: none
confirmation:
required: false
description: "Present a confirmation dialog to confirm the action. See confirmation
object below"
type: [boolean, map]
default: "false"
{% endconfiguration %}
Options For Confirmation
If you define confirmation as an object instead of boolean, you can add more customization and configurations.
double_tap_action:
action: call-service
confirmation:
text: Are you sure you want to restart?
service: script.restart
hold_action:
action: call-service
confirmation: true
service: script.do_other_thing
{% configuration confirmation%}
text:
required: false
description: Text to present in the confirmation dialog.
type: string
exemptions:
required: false
description: "List of exemption
objects. See below"
type: list
{% endconfiguration %}
Options For Exemptions
{% configuration exemptions %} user: required: true description: User ID for which the confirmation dialog will not be shown. type: string {% endconfiguration %}
double_tap_action:
action: call-service
confirmation:
text: Are you sure you want to restart?
exemptions:
- user: x9405b8c64ee49bb88c42000e0a9dfa8
- user: 88bcfbdc39155d16c3b2d09cbf8b0367
service: script.restart
Examples
Tap action implemented on an entity button card:
type: button
tap_action:
action: toggle
hold_action:
action: more-info
Limitations
It is not possible to use templates for actions. But calling a script is a good alternative.