writing

Migrating FileCloud to Zoho WorkDrive

25 Jun 2026 -- python, flask, apis

A FileCloud subscription does not fail loudly. It simply reaches its renewal date, and someone eventually has to migrate the data before that deadline. This often includes years of nested folders, thousands of files, and numerous shared links distributed to clients and colleagues. Performing this process manually requires downloading directory trees, uploading them to a new platform, and recreating every shared link and permission. At small scale this is manageable. At enterprise scale it becomes time-consuming and error-prone. A single missed folder or broken share link can easily become a support issue long after the migration is complete.

To address this problem, I built a migration tool using Python and Flask that integrates directly with the APIs of both platforms. The application migrates files, folder structures, and share metadata from FileCloud v21 to Zoho WorkDrive without relying on browser automation.

Two ways to run it

The primary interface is a web application. Users configure the FileCloud source and WorkDrive destination, browse folder structures on both platforms, verify connectivity, and monitor migration progress in real time.

For automation and scripting, the application also provides a command line interface that follows the same migration workflow. Users can browse the FileCloud directory interactively or specify source paths using command-line options. A --dry-run mode previews the migration without transferring any files. The --fc-path option begins directly from a specified source folder, while --no-resume starts a completely new migration instead of continuing an interrupted job.

Migration strategy

The migration process follows three primary stages.

  • Recreate the folder hierarchy in WorkDrive before transferring any files to preserve the original directory structure.
  • Transfer files with verification so interrupted or failed uploads can be retried safely.
  • Recreate sharing metadata whenever the destination platform supports an equivalent permission model.

Technical challenges

The most difficult aspect of the project is not transferring files but translating the behavioral differences between the two platforms.

FileCloud and Zoho WorkDrive implement sharing and permissions differently. Some FileCloud permission models do not have direct equivalents in WorkDrive, requiring the migration tool to apply the closest supported configuration while maintaining predictable behavior.

Large migrations must also account for API rate limits and long execution times. Rather than treating the migration as a single uninterrupted process, the application is designed to support resumable execution. If a migration is interrupted after several hours, it resumes from the last completed state instead of restarting from the beginning. This significantly reduces recovery time and makes the migration process more reliable for large enterprise datasets.