Copies an entire page tree (including images and attachments) from one Confluence instance to another, preserving hierarchy and rewriting internal links.
python3 -m venv .venv
source .venv/bin/activate
pip install requests
cp config.example.json config.json
# Edit config.json with your Confluence URLs, tokens, and space keys
# Preview what would happen
python3 confluence_sync.py --phase all --dry-run
# Run the full sync
python3 confluence_sync.py --phase all- Copies entire page trees with full hierarchy
- Transfers all attachments (images, files)
- Rewrites internal links (content IDs, URLs, space keys)
- Configurable title prefix to avoid conflicts with existing pages
- Read restrictions on synced pages (Confluence inheritance)
- Resume support — interrupted syncs can be continued
- Dry-run mode for previewing changes
- Delete phase to clean up synced pages
See ConfluenceSync.md for full documentation including configuration reference, phase descriptions, and architecture overview.