Upload single files, batches, and connector-sourced documents via the FlexOrch Python SDK, with duplicate detection and per-plan size limits.
Every FlexOrch pipeline starts with a document upload. The Python SDK exposes three upload methods — single file, batch, and connector-based — so you can integrate with your existing storage and workflow without restructuring your code.
Use client.documents.upload_many() to upload a list of files in a single call. Each file gets its own job; the method returns a list of Job objects in the same order as the input paths.
If your documents live in a connected storage source (S3, Google Drive, SharePoint, and others), you can pull them directly using a connector ID and a list of object keys. No local download required.
jobs = client.documents.upload_from_connector( connector_id=1, keys=["reports/q1.pdf", "reports/q2.pdf"],)for job in jobs: print(f"{job.id} — {job.status}")
You can find connector IDs in the FlexOrch dashboard under Settings → Connectors.
Every upload is fingerprinted against previously processed documents in your workspace. When a duplicate is detected, the returned Job object contains is_duplicate = True and points to the original job via original_job_id.
Duplicate jobs are still billed at the standard rate unless you have duplicate
suppression enabled on your plan. Check your plan settings before uploading
large batches.