The app in Nextcloud
Jobs, schedules, status, Run History, File Issues and the Dashboard. It never contacts Microsoft 365 and never starts a job by itself.
The SMART Migration server
A Windows machine or VM in your network. It claims the jobs set to Ready, reads the sources, writes into Nextcloud and reports back.
Business intelligence
A PostgreSQL reporting database that every run feeds, and the Power BI report SMART BI.pbix on top of it.
Two parts, and you need both
Section titled “Two parts, and you need both”The app is the part you see in Nextcloud: you define jobs there, follow them while they run, and keep the record afterwards. The SMART Migration server is a separate Windows program that does the actual work — reading the source, moving the files, writing the reports. It is not part of the app, so it is downloaded and installed separately, and your SMART Migration partner provides it together with the licence key.
Until the server is installed, connected and running, a job you set to Ready simply waits. How to get there is described in Set up SMART Migration for the app
Why the server runs in your own network, and what it needs there: Why the SMART Migration server runs in your network
The workflow, step by step
Section titled “The workflow, step by step”The server asks the app for work
While it has a free slot, the SMART Migration server asks the app's API for the next job whose status is Ready, signed in with an app password of its own Nextcloud administrator account. The app answers at once — with a job, or with how long to wait before asking again, about ten seconds — so a job set to Ready starts within seconds, and no request is held open on the Nextcloud server while the server waits.
The server reads the source
SharePoint Online, Teams document libraries, OneDrive for Business, SharePoint on-premises and file shares are always read from the Windows machine, with the server's own Microsoft 365 app registration or NTLM credentials — never from Nextcloud.
Files and reports land in Nextcloud Files
Migrated files are written into the job's destination: a Team Folder, or a user's personal files. The run's report and its log go into the run's own folder under
SMART Migration Reports.Status and results come back to the app
The job moves to Running and then Finished. Its Run History row records progress, file and version counts, volume, result and messages, and every file that needed attention is listed on the File Issues tab.
Every run is recorded for Power BI
What each run found and moved goes into the reporting database, which the Power BI report
SMART BI.pbixis refreshed from.
The Dashboard, Jobs, Run History and File Issues tabs follow the server on their own while it works: there is nothing to refresh in the browser.
The app is passive: SMART Migration comes to it
Section titled “The app is passive: SMART Migration comes to it”The app never calls out to SMART Migration or to Microsoft 365. There is no timer and no webhook in it: the server asks for work, and the app answers.
- A job is claimed by one server only, even when several SMART Migration servers poll the same app, so two machines never run the same job.
- A job that someone has open in the job dialog is not handed out until the dialog closes, or until two minutes after the browser went away without closing it.
- A Ready job whose scheduled date is still ahead waits for that date before it can be claimed.
The one request the app itself makes is AI Help, which an administrator switches on, and which sends only a question and pages of this manual. See Security, privacy and data ownership
Four jobs at a time
The SMART Migration server runs at most four jobs at once. Anything else set to Ready waits its turn and starts as soon as a slot frees up — the highest priority first, then the earliest scheduled date — so a long queue on Ready is normal while four jobs are running.
What lives where
Section titled “What lives where”| What | Where it is kept |
|---|---|
| Job definitions, groups, tags, Run History, File Issues and session logs | The Nextcloud database, in the app's own tables |
| Migrated files | Nextcloud Files: the destination Team Folder, or a user's personal files |
Reports, exported session logs and SMART BI.pbix | The Team Folder SMART Migration Reports in Nextcloud Files, one folder per run |
| Credentials for Microsoft 365 and SharePoint on-premises | Only on the SMART Migration server, in your own network |
| File-level data for business intelligence | The PostgreSQL reporting database |
Built for large migrations
Section titled “Built for large migrations”The app is designed for migrations with tens of thousands of jobs and Run History rows, and hundreds of thousands of file issues. Every list is filtered, sorted and paged on the server, every figure on the Dashboard is counted by the database, and the tables only reload when something they show has changed — so the tabs stay quick as the migration grows. What that means for the Nextcloud server — the calls SMART Migration makes, how often an open app asks, and the sizes it is measured for: Performance and load on the Nextcloud server
See also