Comment on page
Buttons
Buttons are the Symphony elements responsible for submitting a form to the bot. As a result, all Symphony form elements are required to have at least one button where `type=
action
`. When an end-user clicks this button, the form and the value of each of the elements inside will be submitted to the bot via the datafeed and presented as a JSON payload.In addition, some forms can contain reset buttons. These buttons are used to reset a form back to its original state.
Buttons support six different styles:
primary
, primary-link
, secondary
, tertiary
, destructive
and destructive-link
. Each of those has different colors to suit different actions (to convey meaning). Use the class
attribute to specify the style.- Primary: use the Primary button when there is a clear primary action on a message. You can use it for the submit button, for example.
- Secondary: use the Secondary button when there are multiple actions of the same importance or some actions with less importance than a single primary action.
- Destructive: use the Destructive button when an action results in the removal of an item or if it can result in a potentially serious negative consequence.
- Primary-link, Tertiary and Destructive-link: These styles are variations respectively of the Primary, Secondary and Destructive buttons but without borders. They are low prominence options that can be used alongside a Primary or as standalone buttons with the ability to read more information.


Attribute | Type | Required? | Description |
name | String | Yes | Identifies the clicked button. |
type | String | No
If type is not specified, the default value will be type=”action” | Indicates whether the button is an action button or a reset button. When clicked, the action button sends the form information to the datafeed. On the other hand, the reset button resets the form-data to its initial values.
Accepted values: action and reset . |
class | String | No | Toggle between new palette of colors: primary , secondary , destructive , primary-link , tertiary and destructive-link . |
data-icon | String | No | Adds an icon before the button name. Only icons from our UI Toolkit list are supported. Each icon is identified by its name. |
- If
class
is not defined, the action button assumes theprimary
class by default. Action buttons should be used for affirmation or confirmation actions. - Reset buttons have the
secondary
class set by default. Reset buttons should be used when the content of the fields need to return to their original state.
The following example shows the use of the Reset and the Submit button when sending a text inserted in a Text Field.

MessageML
Using colors
Datafeed Payload
<messageML>
<form id="form_id">
<text-field name="text-field" placeholder="Add your comment here" required="true">Initial value</text-field>
<button type="reset">Reset</button>
<button name="submit_button" type="action">Submit</button>
</form>
</messageML>
<button name="send-primary" type="action" class="primary">Primary Button</button>
<button name="send-secondary" type="action" class="secondary">Secondary Button</button>
<button name="send-tertiary" type="action" class="tertiary">Tertiary Button</button>
<button name="send-destructive" type="action" class="destructive">Destructive Button</button>
{
"id": "UW2p27",
"messageId": "4KrVjUU4gnGziWnlqMmD2n___oxo916XbQ",
"timestamp": 1595966792040,
"type": "SYMPHONYELEMENTSACTION",
"initiator": {
"user": {
"userId": 7078106482890,
"firstName": "User",
"lastName": "Bot",
"displayName": "User",
"email": "[email protected]",
"username": "user_bot"
}
},
"payload": {
"symphonyElementsAction": {
"stream": {
"streamId": "iMft6PLA4lHrEA9icKJobX___oyCKdVVdA",
"streamType": "ROOM"
},
"formMessageId": "zGeog3OqoYqVI2lwcX2o1X___oxo-A_ubQ",
"formId": "form_id",
"formValues": {
"action": "submit_button",
"init": "hello, my name is John Smith"
}
}
}
},
Main features introduced | Agent needed to parse message sent by the bot | Client 2.0 release | Backward client-compatibility behavior (e.g. external rooms) |
Initial release | 2.55.9 | Since first version | Not working |
Reset features behaviour is to show back the initial value of the form | 2.55.9 | Since first version | Working as previous behavior: clear fields |
New styles:
• New designs for the buttons
• Styles primary destructive and secondary destructive are deprecated
• Styles tertiary and destructive are introduced | 20.6 | Since first version | New styles are displayed as the previous ones, tertiary and destructive are displayed as the default blue primary style |
New styles: primary-link and destructive-link | 23.11 | 23.12 | Not working |
Last modified 4d ago