Migration Guide
Transfer your legacy crawls, archive collections, and preservation sets to the 1990 Web Archive platform with zero data loss.
Overview
This guide walks you through migrating from third-party archive tools, local WARC/ARC collections, or deprecated self-hosted solutions to our cloud-native preservation infrastructure. The process is designed to be incremental, verifiable, and fully reversible until you confirm the final index sync.
Prerequisites
- Active 1990 Web Archive account with
ARCHIVISTor higher role - Python 3.8+ or Node.js 16+ runtime
- Source data in WARC, ARC, Memento, or JSON-LD format
- Minimum 500MB free disk space for the migration tool cache
- Valid API key with
migrate:writepermissions
Migration Steps
Prepare Your Data
Organize your source files into a single directory. Ensure filenames use UTF-8 encoding and avoid special characters. The tool expects a flat or shallow tree structure.
Authenticate & Connect
Set your API credentials in the environment. The CLI uses OAuth2 token rotation automatically.
Run Migration CLI
Execute the migration command. Use --dry-run to preview operations before committing.
Verify & Index
Run the verification suite to ensure structural integrity. The platform will automatically index assets once verification passes.
Troubleshooting
| Error Code | Message | Resolution |
|---|---|---|
AUTH_403 | Insufficient privileges | Ensure your API key has migrate:write scope. Contact admin to upgrade role. |
WARC_011 | Invalid magic bytes | File may be corrupted or mislabeled. Use warc-validator before migration. |
NET_049 | Gateway timeout | Large chunks (>1GB) may require splitting. Run with --chunk-size 500MB. |
IDX_007 | Duplicate URI detected | Enable --dedup merge to append to existing memento timelines instead of failing. |
For verbose logging, append --log-level debug to any CLI command. Logs are written to ~/.wa-cli/logs/migrate-YYYYMMDD.log.
Stuck or need enterprise migration?
Our preservation engineers can handle large-scale transfers, custom format parsing, and on-premise air-gapped migrations.
Contact Engineering Read API Docs