Skip to main content

Scheduled Callbacks

A scheduled callback is a one-off follow-up promise attached to a specific chat. When a member says "call me back tomorrow at 2pm" — or when an agent decides a check-in is warranted — the AI schedules a callback and the platform delivers it automatically at the scheduled time.

Callbacks are intentionally separate from Routines. Routines repeat or run across member cohorts; a callback is a single dated promise on one conversation.

How Agents Schedule Callbacks

Agents schedule callbacks using the built-in schedule_callback ability. The agent invokes it automatically when:

  • The member asks to be contacted later ("call me back tomorrow", "check in next week", "remind me at 3pm")
  • The agent determines a follow-up at a specific time would be appropriate

When a callback is scheduled, the member receives an in-chat confirmation message, and a banner appears in the chat UI showing the pending callback.

Viewing a Pending Callback

When a chat has a pending callback, an amber banner appears at the top of the chat conversation. The banner shows:

  • When the callback is scheduled to fire (day, date, and time in the member's local time)
  • How the follow-up will be delivered (text message, phone call, or email) — if a channel switch was requested
  • Why — the reason for the callback, if one was provided

Cancelling a Callback

To cancel a pending callback:

  1. Open the chat conversation
  2. Locate the amber callback banner at the top
  3. Click the Cancel button (× icon) on the right side of the banner

The callback is cancelled immediately. If the Temporal workflow has already started (within seconds of the scheduled time), cancellation is best-effort.

Supported Channels

ChannelHow the Follow-up is Delivered
Same channel (default)Continues the existing conversation — sends a new message on whatever channel the chat started on
SMSSends a text message to the member's phone number
VoicePlaces an outbound phone call using the workflow's default phone number
EmailSends an email to the member's email address

Web chat note: For web-chat conversations, the follow-up message is saved into the chat (visible the next time the member opens it) but no push notification or SMS is sent. The member will see it on their next visit.

Voice note: A callback on a voice chat places a fresh outbound call — it cannot "resume" a finished phone call. The workflow must have a default phone number configured.

Callback Status Lifecycle

Each callback moves through the following states:

StatusMeaning
PendingScheduled and waiting — shown in the chat banner
In ProgressThe workflow is currently executing the follow-up
CompletedThe follow-up was delivered successfully
SkippedThe workflow fired but did not send — the member had already continued the chat, or delivery preconditions were not met
FailedAn error occurred; the system will retry
CancelledCancelled by a team member from the chat UI

Once a callback reaches Completed, Skipped, or Cancelled, it no longer appears in the banner.

What Happens When a Callback Fires

At the scheduled time, the platform:

  1. Checks that the callback is still in a runnable state (pending, in progress, or failed)
  2. Evaluates whether the member has already continued the conversation on their own — if so, the callback is marked skipped to avoid an unnecessary interruption
  3. Delivers the follow-up:
    • Same channel — sends an AI-generated continuation message in the existing chat
    • Channel switch — opens a new chat on the target channel (places the call, sends the SMS, or sends the email)
  • Chats — Overview of chat management
  • Abilities — Enabling the schedule_callback ability for your agents
  • Channels — Setting up the channels used for follow-ups
  • Routines — Recurring or cohort-level automated outreach (separate from callbacks)