Button (ALPHA)
Responsive Widgets are in alpha and available by invitation only on Business and Enterprise plans. Behavior and properties may change. To request access, open a support ticket and name the feature Responsive Widgets (ALPHA).
The Button widget runs an action when users click it. Use it to run a query, open a modal, or submit a form. It can also protect the action with Google reCAPTCHA.
Widget type: WDS_BUTTON_WIDGET

Content properties
These properties appear in the Content tab of the property pane.
Basic
Label string
Sets the text on the button. Default: Do something.
General
Tooltip string
Shows helper text when users hover over the button.
Visible boolean
Controls whether the widget is visible. Default: on.
Disabled boolean
Stops users from clicking the button. Default: off.
Animate loading boolean
Controls the loading animation of the widget. Default: on.
Validation
This section is hidden on air-gapped instances.
Google reCAPTCHA key string
Sets the Google reCAPTCHA site key for the button. When you set a key, the button gets a reCAPTCHA token before it runs onClick. You can read the token in the recaptchaToken reference property.
- With reCAPTCHA v3, if the key contains a double quote (
"), the widget ignores it. - If the key is wrong, or belongs to a different domain, the app shows an error message. The onClick action still runs.
- reCAPTCHA v3 loads its script from
https://www.google.com/recaptcha/api.js.
Google reCAPTCHA version string
Sets the reCAPTCHA version. Options:
- reCAPTCHA v3 (default)
- reCAPTCHA v2. The v2 check is invisible to users.
Form settings
These settings work when the button is inside a zone that has Use as a form turned on.
Disable when form invalid boolean
Disables the button while any field in the form is invalid. Default: off.
Reset form on success boolean
Resets the form fields after the onClick action succeeds. If onClick is empty, the button resets the form when clicked. Default: off.
Style properties
These properties appear in the Style tab of the property pane.
General
Button variant string
Sets the look of the button. Options: Filled (default), Outlined, Subtle, Ghost.
Values for code: filled, outlined, subtle, ghost.
Button color string
Sets the semantic color of the button. Options: Accent (default), Neutral, Positive, Negative, Warning.
Values for code: accent, neutral, positive, negative, warning.
Icon
Select icon string
Sets an icon to show on the button.
Position string
Sets where the icon appears. Options: start (default) or end. You cannot bind this property.
Reference properties
Reference properties let you read the widget's state in bindings and code, for example {{Button1.isVisible}}. You cannot set them directly.
isVisible boolean
Shows whether the widget is visible.
Example:
{{Button1.isVisible}}
text string
Holds the button label.
Example:
{{Button1.text}}
isDisabled boolean
Shows whether the button is disabled.
Example:
{{Button1.isDisabled}}
recaptchaToken string
Holds the reCAPTCHA token from the last click. It is empty until a reCAPTCHA check succeeds. Send it to your server to verify the user.
Example:
{{Button1.recaptchaToken}}
Methods
Methods let you change the widget's properties from code, for example in a JS Object.
setVisibility (param: boolean): Promise
Shows or hides the widget.
Example:
Button1.setVisibility(false)
setDisabled (param: boolean): Promise
Turns the button on or off.
Example:
Button1.setDisabled(true)
setLabel (param: string): Promise
Sets the button label.
Example:
Button1.setLabel("Save")
setColor (param: string): Promise
Sets the button color. Use one of accent, neutral, positive, negative, or warning.
Example:
Button1.setColor("negative")
Events
onClick
Runs when users click the button. The button shows a loading state until the action finishes. If a reCAPTCHA key is set, the action runs after the token is ready.