Skip to main content
Scheduled Sync removes the need for manual upload triggers. You point FlexOrch at a connected bucket (or a specific prefix within one), set a polling interval, and FlexOrch takes care of the rest — detecting new files and submitting them for processing automatically.
Scheduled Sync is available on the Pro and Enterprise plans. If you are on the Starter plan, upgrade your plan to enable this feature.

How it works

When a schedule is active, FlexOrch polls the connector’s bucket (or prefix) at the configured interval. Any object that has not previously been submitted for processing is queued automatically. Files that have already been processed are skipped, so you never pay to process the same document twice. The full flow looks like this:
1

FlexOrch polls your bucket

At each interval, FlexOrch lists all objects under the configured prefix and compares them against previously seen keys.
2

New files are detected

Objects that have not been processed before are identified as new.
3

Processing is submitted automatically

New files are queued for the standard document processing pipeline — PII detection, quality scoring, and dataset generation — with no action required from you.
4

Results are available

Processed outputs appear in your datasets and jobs list, just as they would with a manual upload.

Benefits

  • Zero manual intervention — once a schedule is configured, ingestion happens automatically.
  • Cost-efficient — only new files are processed; duplicates are never resubmitted.
  • Fully auditable — every sync run is logged so you can see exactly which files were picked up and when.
  • Flexible cadence — choose a polling interval from hourly to daily depending on how frequently your source bucket receives new documents.

Next steps

Create a Schedule

Set up your first scheduled sync via the UI or the API.

Connectors

Configure a cloud storage connector to use with Scheduled Sync.
To review past sync runs, go to Settings → Scheduler → Logs in the FlexOrch dashboard, or query the logs programmatically via GET /v1/scheduler/logs.