How MigratePress Uses Google User Data
The scope we request, what we do with it, what we never do, and how the sign-in works end to end.
The scope we request
MigratePress requests exactly one Google OAuth scope:
| Scope | Sensitivity | Why MigratePress needs it |
|---|---|---|
https://www.googleapis.com/auth/drive.file | Non-sensitive | To create a backup folder in the user's Google Drive and to upload, list, download and delete the backup archives MigratePress itself puts there. |
We do not request drive, drive.readonly, drive.metadata or any other broader Drive scope, and we do not request Gmail, Calendar, Contacts, Photos or profile scopes beyond the basic sign-in identity Google includes with consent.
What MigratePress does with that access
- Create a folder (default name:
migrate-press) in the user's Drive, once. - Upload backup archives into that folder, in resumable 8 MB chunks so large sites finish reliably.
- List the archives MigratePress created, so the user can choose one to restore or migrate from.
- Download one of those archives when the user starts a restore or migration.
- Delete an archive MigratePress created when the user's retention setting expires it, or when the user deletes it from the plugin.
Because drive.file is limited to files the application creates, MigratePress has no technical ability to read, modify, organise or delete anything else in the user's Drive — including files the user uploaded themselves and files shared with them.
What we never do
- We never transfer Google user data to a server of ours. Backups move directly between the user's WordPress site and their Google Drive.
- We never sell Google user data, and we never use it for advertising, profiling or analytics.
- We never use Google user data to develop, improve or train generalised or non-personalised AI or machine-learning models.
- We never allow humans to read Google user data, except with the user's explicit written permission for a specific support issue, where required by law, or where necessary for security investigations or abuse handling — the exceptions the Google API Services User Data Policy allows.
Limited Use. MigratePress use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
How the sign-in works
A Google OAuth client only calls back to redirect URLs registered with it, and no application can register a redirect URL for every WordPress site in the world. MigratePress solves that with one small service on this domain, and it is deliberately built to hold as little as possible:
- In the plugin, the user presses Sign in with Google. Their site sends them to
migratepress.bdwebguy.com/mgp-oauth/start, with the address of their own site signed into the OAuthstate. - They are redirected to Google's consent screen and approve the
drive.filepermission. - Google returns to our registered redirect URL,
migratepress.bdwebguy.com/mgp-oauth/callback. We exchange the authorisation code for tokens — this is the only step where the application secret is used. - The tokens are parked under a single-use random ticket for a maximum of five minutes. The browser is sent back to the user's own site carrying only that ticket.
- The site collects the tokens server to server, once. The record is deleted at that moment. The tokens are then encrypted and stored in the user's own WordPress database.
- When an access token expires, the site asks our service to refresh it — because only we hold the application secret. The refresh token itself stays on the user's site; we do not keep a copy.
What our service retains afterwards is a short log line: the host name of the site, the provider, the outcome, and the time. No tokens, no authorisation codes, no file names, no email addresses.
Users who prefer their own application
A site owner who would rather not use our sign-in service can register their own Google OAuth client and enter its client ID and secret in the plugin. In that mode nothing passes through this domain at all.
Revoking access
Access can be withdrawn at any time from the plugin's Storage screen, or from Google Account → Third-party apps & services. Full instructions, including how to delete the backup files themselves, are on the Delete Your Data & Revoke Access page.
Questions
Security or privacy questions about this integration: [email protected]. Our full Privacy Policy and Terms of Service apply.