This guide walks you through the complete process of downloading content, media, and presentation details from Sitecore CMS for further migration to the Uniform platform.
It is recommended to create .env file in the work directory and use environment variables instead of command-line arguments.
Environment variables can be used instead of command-line arguments:
SIPHON_{PARAMETER} works with all Siphon executables and all commands that have particular parameter,
SIPHON_{COMMAND}_{PARAMETER}: works only with {COMMAND} command that have particular parameter.
For example:
# works for all commands with --outputDir param
$env:SIPHON_OUTPUTDIR='C:\migration\sitecore\items'
# works for `download-items` command only
$env:SIPHON_DOWNLOAD_ITEMS_OUTPUTDIR='C:\migration\sitecore\items'
Rename C:\siphon\UniformMigrationService.txt to UniformMigrationService.aspx
Open UniformMigrationService.aspx
Set a secure secret and valid until on Lines 5-7:
// the default secret will not work, you must change it
const string Secret = "(your-complex-secret-phrase-here)";
const string ValidUntil = "(date-which-is-several-month-in-the-future)"
Upload the modified file to your Sitecore CM instance's subfolder like /layouts
If using multiple load-balanced CM instances, deploy to all of them
Verify the page works by accessing it via the browser — it is expected to see a SecurityException
Important: Some folders may restrict *.aspx execution.
Also, in rare cases the IIS configuration may prohibit runtime compilation of *.aspx files. To overcome this, it needs to be deployed alongside with the application during normal deployment phase.
In the current terminal window run configuration wizard and follow the instructions:
PS C:\migration> siphon configure-download
Here's example output:
=======================================================================
Siphon Download Configuration Wizard
=======================================================================
This wizard will help you configure the Siphon Download phase.
It will generate a .env file with all necessary settings.
Press Enter to accept values shown in [brackets].
-----------------------------------------------------------------------
Work Directory
-----------------------------------------------------------------------
Base directory for all downloaded files.
Subdirectories will be created: \items, \media, \presentation
> Work Directory [default: C:\migration]:
-----------------------------------------------------------------------
Common Settings (used by all download commands)
-----------------------------------------------------------------------
The Sitecore database to download from (e.g., 'web' or 'master').
> Database [default: web]:
Full URL to the deployed UniformMigrationService.aspx on your Sitecore CM.
Example: https://sc.dev/layouts/UniformMigrationService.aspx
> Uniform Service URL:
This field is required. Please enter a value.
> Uniform Service URL: https://sc.dev/layouts/UniformMigrationService.aspx
The secret phrase configured in UniformMigrationService.aspx (Line 5).
> Secret:
This field is required. Please enter a value.
> Secret: *****
-----------------------------------------------------------------------
1. Download Items Settings
-----------------------------------------------------------------------
Root item GUID to start downloading from (with all descendants).
It is typically the Home item. In a multi-site solutions there are 2 options:
- Download sites one by one
- Download everything by using root ID: 11111111-1111-1111-1111-111111111111
> Root Item ID:
This field is required. Please enter a value.
> Root Item ID: ITEM-ID-OF-YOUR-HOMEPAGE
Languages to download (comma-separated, e.g., 'en,ja-JP,da').
Leave empty to download all registered languages.
> Languages: en,da
Number of parallel download threads (1-16).
> Threads [default: 4]:
Download rendering datasource items outside of root?
Unsure or in doubt? Use the default option.
> Download Renderings Datasources [Y/n]:
Download field-referenced items outside of root?
Unsure or in doubt? Use the default option.
> Download Fields References [Y/n]:
-----------------------------------------------------------------------
2. Download Media Settings
-----------------------------------------------------------------------
Number of parallel download threads for media (1-16).
> Threads [default: 4]:
-----------------------------------------------------------------------
3. Download Presentation Settings (Optional)
-----------------------------------------------------------------------
Presentation download captures page layouts using Playwright.
This is optional - skip if you only need content migration.
Unsure or in doubt? Use the default option.
> Configure presentation download? [Y/n]:
Sitecore Host URL (base URL of your Sitecore instance).
Example: https://sc.dev/
> Sitecore Host: https://sc.dev/
Path to the site root item in Sitecore.
Example: /sitecore/content/Habitat/Home
> Start Path: /example/path/to/your/first/site/home/item
Virtual path to download a sub-set of the website (optional).
Example: /about-habitat (leave empty for entire site)
> Virtual Path:
Sitecore login page URL for authentication.
Example: https://sc.dev/sitecore/login
> Login URL: https://sc.dev/sitecore/login
Sitecore username for presentation download.
> Username: admin
Sitecore password for presentation download.
> Password: *
Number of parallel download threads (1-8).
> Threads [default: 4]:
[OK] Configuration saved to: .env
=======================================================================
Configuration Summary
=======================================================================
Work Directory: C:\migration
Common:
Database: web
Service URL: https://sc.dev/layouts/UniformMigrationService.aspx
Secret: ********
Download Items:
Root: ITEM-ID-OF-YOUR-HOMEPAGE
Output: C:\migration\items
Threads: 4
Download Media:
Input: C:\migration\items
Output: C:\migration\media
Threads: 4
Download Presentation:
Host: https://sc.dev/
Start Path: /example/path/to/your/first/site/home/item
Login URL: https://sc.dev/sitecore/login
Threads: 4
=======================================================================
Next Steps:
=======================================================================
1. Copy the .env file to your migration working directory
2. Run the download commands:
siphon download-items
siphon download-media
siphon download-presentation