Skip to Content
📚 Documentation is in active development — pages marked TODO will fill out over the next few weeks.
Flow BuilderBlock referenceWait (timed pause)

Wait block

A timed pause inside a flow. Useful for follow-ups (“ping me 2 hours later if no reply”) or rate-limiting outbound bursts.

Config

  • Duration — in seconds. Clamped between 30 seconds and 30 days.
  • (Implicit) Resume target — the canvas-level “Continue” socket, or data.continue.action if you wire a separate “On resume” output.

Runtime behaviour

  • Sets FlowState.status = "WAITING" + waitingUntil = now + duration
  • The flowResumeWorker polls every 10 seconds for rows where status='WAITING' AND waiting_until <= NOW() and re-enters the runtime at resumeStepId
  • A customer reply during WAITING cancels the wait and advances the flow immediately via the normal reply path

Real-world cadence

  • 30s wait, worst-case 33% drift (10s tick) — invisible for anything longer
  • 5min wait: drift ≤ 3%
  • 1 day wait: drift ≤ 0.012%

Don’t use wait for sub-30-second delays — Meta’s own message delivery time fluctuates more than that.

Last updated on