Set Up
Back to App
This is the first of two guides This page is the one-time work an admin does for a Salesforce org. Once it is done, nobody has to do it again for that org.
  • Run a migration - choosing files, folder mapping, the run screen and the report
If your org is already set up and you just want to move some files, go straight there.
What you need before you start
  • A Salesforce user with permission to change Setup on the org you are migrating from.
  • A MigrateStream license key from your Satrang Technologies contact.
  • A Google account with access to the Drive or Shared Drive the files will land in.
Both admin steps below are needed in every Salesforce org you plan to migrate files from. A sandbox and a production org each need their own, since neither setting is shared across orgs.

1. Your license key

The very first screen you see asks for a MigrateStream license key - a single block of text your Satrang Technologies contact provides. Paste it in and continue; nothing else in the app is reachable without a valid, unexpired key. Once verified, your license key is remembered in this browser, so you will not need to paste it again on future visits unless it changes or expires.

The key is checked entirely inside your own browser - it is never sent to any server to be verified. Once active, your customer name, expiry (if any), and current data usage are shown in the app so you always know what your license covers, without needing to ask Satrang.

Depending on how your license was issued, it may also be restricted to specific Salesforce orgs and/or specific Google accounts - if you connect one that is not covered, MigrateStream disconnects it immediately and tells you which org(s)/account(s) your license actually covers.

2. Allow MigrateStream in your Salesforce org (CORS)

Salesforce blocks browser apps from reading your org's data unless you explicitly allow them. Since MigrateStream runs entirely in your browser, you need to add it to your org's allowed origins once, before connecting. It takes about a minute:

  1. In Salesforce, go to Setup.
  2. In the Quick Find box, search for CORS.
  3. Click CORS, then under Allowed Origins List click New.
  4. In Origin URL Pattern, enter exactly this - a bare scheme and host, no path, no trailing slash:
    https://satrangtech.com
  5. Click Save.

The change takes effect within a couple of minutes - no relogin or cache clear is needed. You only need to do this once per Salesforce org.

If you skip this step, the app will tell you right after you connect that it could not read data from your org, and will point you back here. It cannot know the reason for certain - browsers deliberately do not reveal why they blocked a request - so it names this setting as the most likely cause rather than stating it as fact. A missing CORS entry is by far the most common one on a new org. Add the entry above, wait a couple of minutes, and log in again.

3. Install the Connected App

Go to Setup > Apps > Connected Apps OAuth Usage, find MigrateStream in the list, and click Install. This is a one-time, org-wide action.

If this step is skipped, the very first person to log in from that org sees exactly this error on Salesforce's own login screen:

OAUTH_APPROVAL_ERROR_GENERIC: We could not complete your request. To resolve this issue, contact your administrator with the below details. Approval Status: Not Approved

If you see this, it means this step has not been done yet in this particular org - go back to Setup > Apps > Connected Apps OAuth Usage and click Install, then try logging in again.

Do both before the first login attempt, not one at a time as errors come up. The CORS entry and the Connected App Install are unrelated to each other and gate different things - CORS gates the browser's direct Salesforce data calls once you are already logged in, while the Install step gates the login itself. Doing only one leaves the other failure waiting.

4. Check it worked

Open the app, paste your license key, and connect Salesforce. If both steps above are done, the login completes and MigrateStream reads your org's file counts without complaint - that is the whole test, and it takes under a minute.

From there, everything else is on the second guide: Run a migration.

5. If it does not connect

There are three things that stop a first connection, and each one names itself clearly rather than failing vaguely:

  • Salesforce's own login screen shows "OAUTH_APPROVAL_ERROR_GENERIC ... Approval Status: Not Approved". The Connected App has not been installed in this org. See step 3.
  • Login succeeds, then the app says it could not read data from your org. The CORS entry is missing, or was added less than a couple of minutes ago. See step 2.
  • The app disconnects the org or the Google account immediately after you connect it, naming what your license covers. The license key is restricted to particular orgs or Google accounts, and this is not one of them. That is the key doing its job, not a fault - see step 1, and contact Satrang Technologies if the restriction looks wrong.

All three are per org. Setting up a second org later means doing steps 2 and 3 again for that org.