Skip to content
automation recipe

Author a check-in once, let it run itself every day

Build the questions, set the schedule and reminders, then let a script, an agent, or the person themself complete it — Dailybot compiles every answer and posts it to the channel you choose.

Engineering managersPeople opsDevelopers

A check-in is a recurring ritual, not a one-off form: the same questions go out on a schedule, reminders chase down stragglers, and every answer compiles into a report your team actually reads. Author one from scratch — schedule, reminders, privacy, questions — and it runs itself from then on.

This page covers the full loop: create the check-in and its questions, tune the schedule and reminders, then complete it either as a person or headlessly from a script or agent with nothing but an API key. Build it with the CLI, the API, or by asking an agent that has the Dailybot skill pack installed.

Build it step by step

  1. Create the check-in with participants and its first question

    dailybot checkin create -n "Name" needs at least one participant (--user or --team) and at least one question at create time — a non-interactive create with neither fails fast with checkin_requires_participant or questions_required. Seed questions with --questions-file, or answer prompts interactively.

  2. Set the schedule, timezone, and reminders

    --time, --days (0=Sunday), and --timezone place it on the calendar; --frequency weekly --every N sets the cadence, or --frequency-advanced custom --cron for anything else. --reminders 0-5 with --reminder-interval and --reminder-condition smart_frequency controls the nudges.

  3. Choose who can see it, and whether it's anonymous

    --privacy takes only_owner, owner_and_members, managers_and_members, managers_and_admins, org_admins, everyone, or custom. --anonymous is irreversible on check-ins — once it's on, --no-anonymous fails with anonymous_irreversible, unlike forms.

  4. Complete it headlessly

    dailybot checkin complete <followup_uuid> -a 0="..." -a 1="..." --yes answers each question by its 0-based index, matched to its question_type (text, boolean, numeric, or multiple_choice). --response-date backfills a past day while the check-in is still pending.

  5. Let a script or agent drive the whole thing

    dailybot checkin list --json returns today's pending check-ins with their questions; dailybot checkin show <followup_uuid> --json gets the schedule and question UUIDs for one. Every command works headless with just DAILYBOT_API_KEY — no interactive session required.

  6. Read the trail back, or fix a mistake

    dailybot checkin history <followup_uuid> --days 7 lists every participant's responses over a range (check-ins default to team-wide, unlike forms). dailybot checkin edit overrides an answer on an already-submitted response; dailybot checkin reset deletes one.

See it in action

A simulated check-in — authoring on one side, the compiled report on the other. No check-in or messages are actually sent.

Daily Standup

Questions

  • • What did you complete yesterday?
  • • What are you working on today?
  • • Any blockers?
Mon–Fri · 9:00 AM 2 reminders Team-wide

Copy-paste recipes

curl -s -X POST \
  -H "Authorization: Bearer $DAILYBOT_BEARER_TOKEN" \
  -H "Content-Type: application/json" \
  https://api.dailybot.com/v1/checkins/$FOLLOWUP_UUID/responses/ \
  -d '{"responses":[
    {"uuid":"$Q1_UUID","index":0,"response":"Shipped the checkout redesign"},
    {"uuid":"$Q2_UUID","index":1,"response":"Starting the payments migration"},
    {"uuid":"$Q3_UUID","index":2,"response":false}
  ],"last_question_index":2}'

Ready to transform how your team works?

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