Skip to content
automation recipe

Turn a chat message into a one-click automation

Send a message once, and let the buttons on it do the rest: kick off a workflow, open a form, run a ChatOps command, or hand a prompt to your AI — without leaving the channel.

Engineering managersOps leadsDevelopers

Most chat automations stop at “post a status update.” Dailybot’s send-message endpoint goes further: every message can carry up to 25 interactive buttons, and each button wires to exactly one destination — an external webhook, a form, a workflow, a ChatOps command, or an AI prompt. The recipient never leaves the chat; clicking the button is the automation.

This page walks through the whole escalation, stage by stage: a plain message, a threaded report, link buttons, interactive buttons with their five callback types, modals that collect input, and — the payoff — an approval flow that gates a real deploy. Try the simulated version below, then build it with the API, the CLI, or by asking an agent that has the Dailybot skill pack installed.

Build it step by step

  1. Send to any channel, DM, or team

    POST to /v1/send-message/ with target_users, target_channels, or target_teams. Dailybot resolves the destination platform — Slack, Microsoft Teams, Discord, or Google Chat — automatically, so the same call works everywhere your team already talks.

  2. Post a headline with the full detail in its thread

    Add thread_responses to the same call to post a short headline plus up to 10 replies, one level deep, in a single request. Re-post with the same bot_message_id within 72 hours to edit the message instead of sending a new one.

  3. Add link buttons

    The simplest button just opens a URL: set button_type to "link". Attach up to 25 buttons per message, and mix link buttons with interactive ones in the same array.

  4. Add interactive buttons with five callback types

    Each interactive button carries exactly one callback: callback_url for your own server (pair it with callback_auth for bearer, basic, or custom-header transport auth), callback_form to open a Dailybot form, callback_command to run a known ChatOps command, callback_prompt to hand the click to an AI prompt, or callback_workflow to trigger an api_trigger workflow. Pick the one that matches where the action should happen.

  5. Collect input with a modal

    Attach modal_body to an interactive button to open a lightweight modal — up to 10 text, input, and divider blocks — before the callback fires. Submitted answers are forwarded to callback_url or callback_workflow as modal_fields.<name>.

  6. Gate the deploy on a click

    Combine callback_url, callback_auth, and a response auto-reply, and the whole approval flow — ask, click, forward, confirm — happens without anyone leaving the channel. See it below.

See it in action

A simulated approval flow — no messages are actually sent.

dailybot APP

Deploy 4.12.0 to production?

What the click actually does

Click a button above to see what the signed callback does.

Copy-paste recipes

curl -sS -X POST 'https://api.dailybot.com/v1/send-message/' \
  -H 'X-API-KEY: $DAILYBOT_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"message":"Deploy 4.12.0 to production?","target_channels":["C0123456789"],"buttons":[{"label":"Approve","button_type":"interactive","value":"approve","callback_url":"https://ci.example.com/hooks/deploy","callback_auth":{"type":"bearer","token":"$DEPLOY_CALLBACK_TOKEN"},"response":{"message":"Approved — deploying now."}},{"label":"Redeploy staging","button_type":"interactive","value":"redeploy_staging","callback_workflow":"$REDEPLOY_WORKFLOW_UUID"}]}'

Ready to transform how your team works?

Join thousands of teams that use Dailybot to save time, boost engagement, and make better decisions.