Actions block
Holds multiple interactive elements — buttons, menus, pickers — in a row.
| Type | actions |
| Available in | Messages, Modals, Home tab |
| Compatible block elements | Button element, Checkboxes element, Date picker element, Datetime picker element, Multi-select menu element, Overflow menu element, Radio button group element, Select menu element, Time picker element, Workflow button element |
Fields
Section titled “Fields”| Field | Type | Description | Required? |
|---|---|---|---|
type |
String | The type of block. For an actions block, type is always actions. |
Required |
elements |
Object[] | An array of interactive element objects — buttons, select menus, overflow menus, date, time and datetime pickers, checkboxes, radio buttons and workflow buttons. Maximum of 25 elements. | Required |
block_id |
String | A unique identifier for the block. If not specified, one is generated. Use it to tell which block a block_actions payload came from. Maximum length is 255 characters. It must be unique within the message or view — a duplicate is replaced and reported as a warning. |
Optional |
Examples
Section titled “Examples”A select menu and a button
Section titled “A select menu and a button”
{ "blocks": [ { "type": "section", "text": { "type": "mrkdwn", "text": "*Deal:* Northwind — 40 POS terminals\n*Stage:* Proposal sent" } }, { "type": "actions", "block_id": "deal_actions", "elements": [ { "type": "static_select", "action_id": "move_stage", "placeholder": { "type": "plain_text", "text": "Move to stage" }, "options": [ { "text": { "type": "plain_text", "text": "Negotiation" }, "value": "negotiation" }, { "text": { "type": "plain_text", "text": "Contract sent" }, "value": "contract_sent" }, { "text": { "type": "plain_text", "text": "Closed won" }, "value": "closed_won" } ] }, { "type": "button", "action_id": "open_deal", "text": { "type": "plain_text", "text": "Open deal" }, "url": "https://example.com/deals/1042" } ] } ]}Approve or reject, with a confirmation
Section titled “Approve or reject, with a confirmation”
{ "blocks": [ { "type": "section", "text": { "type": "mrkdwn", "text": "*Discount request* — 18% on quote Q-2291 (SAR 46,500)" } }, { "type": "actions", "elements": [ { "type": "button", "action_id": "approve", "text": { "type": "plain_text", "text": "Approve" }, "style": "primary", "value": "Q-2291" }, { "type": "button", "action_id": "reject", "text": { "type": "plain_text", "text": "Reject" }, "style": "danger", "value": "Q-2291", "confirm": { "title": { "type": "plain_text", "text": "Reject this discount?" }, "text": { "type": "mrkdwn", "text": "The sales rep will be told the request was rejected." }, "confirm": { "type": "plain_text", "text": "Reject" }, "deny": { "type": "plain_text", "text": "Cancel" }, "style": "danger" } } ] } ]}A date picker and an overflow menu
Section titled “A date picker and an overflow menu”
{ "blocks": [ { "type": "actions", "elements": [ { "type": "datepicker", "action_id": "follow_up", "initial_date": "2026-10-20", "placeholder": { "type": "plain_text", "text": "Follow-up date" } }, { "type": "overflow", "action_id": "more", "options": [ { "text": { "type": "plain_text", "text": "Snooze a week" }, "value": "snooze" }, { "text": { "type": "plain_text", "text": "Reassign" }, "value": "reassign" }, { "text": { "type": "plain_text", "text": "Close ticket" }, "value": "close" } ] } ] } ]}