Skip to content

Auto-sync (cron)

A background scheduler ticks every hour. For each org with auto-sync ON, if (now − last_sync) ≥ interval, the cron enqueues a full org sync.

Default = OFF

New organizations get auto-sync disabled so we never incur API cost without an explicit user action. Flip it ON in Settings → Sync or the sidebar pill when you're ready for hands-off operation.

Interval

Pick from 4 h · 6 h · 12 h · 24 h · 72 h · weekly in Settings → Sync. Default interval = 12 h (applies once you turn auto-sync ON).

Toggling off

Disable from the sidebar pill or Settings → Sync. While OFF:

  • Cron skips this org entirely
  • Manual Sync now still works
  • No cost is incurred until you sync manually

What about the queue?

Cron uses the same queue as manual syncs. If a manual job is running when cron ticks, cron's enqueue either joins the queue (slot available) or is rejected (cap full). On rejection it logs and tries again next tick.

What it does NOT do

  • Run a sync DURING onboarding (you own the first sync via the wizard)
  • Override your lookback — it just runs whatever your settings say

Same content as the in-app docs drawer. Source of truth: frontend/src/docs/sections.ts.