---
url: https://docs.juniper.bot/en/message-templates/components/button.md
description: Button component used in Message Templates.
---

[action]: ../../../cmd/custom/actions/index

[actions]: ../../../cmd/custom/actions/index

[`component.id`]: ../../types/custom-commands/component

# Button

Button is interactive component that can either open link in browser or execute custom command's [action].

This component has the following settings:

![button_settings_en](button_settings_en.png)

* **Label** — label displayed on the button;
* **Style** — Button style. Check the following picture to compare the styles:
  ![button_styles](button_styles.png)
* **Identifier** — component identifier, enter something related to the component.
  ::: info
  Identifier is available for button styles other than link and must be unique across all message components.

  The message template of [Action] being executed by this button will get this identifier as [`component.id`] variable.

  Thus, this way you can determine what exact button has executed the [Action].
  :::
* **URL** — the link that will be opened for button with link style;
* **Action** — [Action] that will be executed on button click;
* **Disabled** — checking this will make button inactive, unable to be pressed;
* **Add Emoji** — Add an Emoji to the button.

## Availability { #availability }

Button component is available for all message template modes (text, embed, components).

All button styles other than "Link" are only available for custom command [actions].
