Button component
Canonical page for button click actions. Form submit is a different system — that lives on Form submit redirection. Cross-link, Form submit actions are documented separately — cross-link instead of duplicating.
What this is / when to use it
A Button (BUTTON) is a component the user taps. It does not submit the form. It runs one click action:
Open URL
OPEN_URL
Opens a link (http/https, or an in-app path you control).
Dial phone
DIAL_PHONE
Opens the device dialer with a number.
Open email
OPEN_EMAIL
Opens a mailto.
Open SMS
OPEN_SMS
Opens a sms: draft.
Use a button when the user should leave the current context without writing the form.
Use form on_submit when the user should save the row and then change data, go to a screen, or redirect. Those subtypes are change_data, go_to_screen, redirect_url.
When not to use a button:
“Save” / “Submit” — that is the form submit control.
“Start approval” — attach a workflow to submit or to a workflow button in Automation, not
OPEN_URL.“Pick related rows” — use a reference input with
SELECTION.
Before you start
You are on Details, Content, or a form where a secondary action makes sense (Cancel, Call client, Open contract).
The URL / phone / email / SMS value is either a literal or bound to a property (Show URL vs Button — prefer Button when you want a labeled control).
Build it
Add Button.
Set the label (“Call client”, “Open invoice”).
Set color style
DARKorLIGHT.Set On click to one of
OPEN_URL,DIAL_PHONE,OPEN_EMAIL,OPEN_SMS.Bind the value (literal or property).
Set visibility if only some users should see it.
Publish and tap the button on a phone and on desktop.
Every control
Label
Text
Button text.
Color
DARK / LIGHT
Visual style.
On click
OPEN_URL / DIAL_PHONE / OPEN_EMAIL / OPEN_SMS
Click action.
URL / phone / email / body
Literal or field
Payload for the action.
Visibility
Shared visibility enums
Hide for some rows or users.
Screen-level actions (create/update/delete/bulk) are not button components. They are Screen Actions.
What users see
A tappable control. It does not validate the form and does not write Notion. If the device cannot dial (desktop without a tel handler), the browser shows its default failure.
Limits and plans
Buttons do not start Workflow Foundation by themselves. Use a form submit trigger or a workflow button_clicked attachment when the workflow builder offers it — that is an Automation binding, not
ButtonOnClickAction.OPEN_URLto another screen’s public URL is brittle. Prefergo_to_screenon submit, or a hidden-nav screen opened from Screen Actions.SMS and dial need a real device capability.
Example
Details of a vendor: Button Call = DIAL_PHONE on Phone, Button Email = OPEN_EMAIL on Email, Button Portal = OPEN_URL on the vendor’s URL property.
The form’s Submit still uses on_submit → go_to_screen → Thank you content page.
Fix problems
Button “does nothing” on submit
You expected it to save
Use the form submit button.
Workflow does not run
Click action is not a workflow trigger
Bind button_clicked in Automation, or use form_submitted.
mailto empty
Email property empty
Bind a filled property or a literal.
Related
Form submit: Form submit redirection. Screen record actions: Screen Actions. Workflow triggers: Trigger catalog.
Last updated