Skip to content
ActionSlackUpdated May 2026

How do I send a Slack message with Approve/Reject buttons?

Short answer: Drop the "SlackSend Approval Message" action anywhere in your workflow, map the inputs from upstream nodes, and publish.

Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
Channel or User
channel
stringRequiredChannel ID, DM channel ID, or user ID to send the approval message to.
Question
text
stringRequiredMessage text to post. Supports Slack mrkdwn (e.g. *bold*, <@U123> mentions, <#C123> channel links).
Approve button text
approveLabel
stringOptionalLabel for the Approve button.
Reject button text
rejectLabel
stringOptionalLabel for the Reject button.
Sample request
{
"channel": "e.g. C0123456789",
"text": "e.g. Hello team :wave:",
"approveLabel": "{{trigger.approveLabel}}",
"rejectLabel": "{{trigger.rejectLabel}}"
}
Returns
{
"ok": true,
"raw": {},
"channel": "C0123",
"message_ts": "1712835600.000100"
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Send Approval Message.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Send Approval Message.

What does the Send Approval Message action do in Slack?
Sends a Slack message with Approve and Reject buttons. Use it for review flows, content approvals, expense sign-off, or time-off requests; the button click drives the rest of the workflow.
What inputs does Send Approval Message require?
Required: Channel or User, Question. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if Slack returns an error?
The workflow pauses on the failed node, the error message is captured in the run log, and you can retry the run with one click. Auto-retry policies are configurable per workflow with exponential backoff up to 5 attempts.
Does Send Approval Message support batch operations?
Yes. Run Send Approval Message inside a Loop node to process arrays. Tiny Command handles Slack's rate limits automatically so you don't have to throttle manually.
More actions

Other Slack actions.

Send send approval message from your workflows.

Triggered by anything in the catalog. Free tier available. No credit card.