TEASEDocs
ProductsAccount Platform

Check sync status

What the sync progress indicator actually means, and why "connected" in the database isn't the same as "syncing."

Goal

Read the sync status chip correctly instead of guessing from a percentage.

What the chip shows

The compact chip on the Accounts table and the full progress card (PlatformSyncProgress) read the same progress data, so they never disagree — the chip is a smaller view of the same numbers, not a second calculation.

  • A milestone value drives the state. Two milestones count as fully done (fully_reconciled, reconciled_with_gaps) and show as a plain "synced" — everything else shows a percentage and a moving progress bar.
  • If something needs attention, the chip shows a gap indicator instead of the plain progress bar, with a label explaining the gap.
  • Polling stops once a run is complete — an account that's finished syncing doesn't keep hitting the progress endpoint forever.

'Connected' in the database is not proof of a live sync

The database can say an account is connected while its collector process is actually dead. The only reliable signal that a collector has actually stopped is the account's isAuth != true marker — an old last_ok timestamp is not proof of a stall, because every collector respawn resets it to blank. Don't read a blank or old last_ok as "it's stuck"; check isAuth instead.

How to verify sync is actually healthy

Don't rely on "connected" alone. Look at the chip's own state: a "synced" label with no gap indicator means the reconciliation actually finished; a percentage that hasn't moved across more than one poll interval, combined with a gap indicator, is the real signal something stopped.

If it doesn't work

See Troubleshooting for the isAuth-vs-last_ok distinction and other real failure signatures.

What's next

If sync looks stuck because of a network path issue, see Rotate an account's egress proxy.

On this page