Wayback Restorator

CLI

Restore captures from your terminal and continue saved jobs.

After installation, the wayback-restorator command is available in any directory.

Commands

CommandPurpose
wayback-restorator restore '<URL>' [options]Restore a capture and write its report and ZIP.
wayback-restorator web [options]Start the local dashboard on port 8080.
wayback-restorator --versionPrint the installed version.

Add --help to any command to list its options.

Restore a capture

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/'

The terminal shows a progress bar. When the run ends, it prints the report path and, for completed jobs, the archive path.

Configure a run

Pass options after the capture URL:

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/' \
  --concurrency 4 --capture-mode strict

For a short run processing up to ten resources:

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/' \
  --max-files 10 --job-id example-preview

After restoring the entry page, a run stopped by --max-files with resources still pending has status bounded and produces a report. Continue the same job to finish processing and create its ZIP.

See Configuration for all options.

Name a job

By default, the job ID is derived from the capture URL. Use --job-id to choose a recognizable directory name:

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/' \
  --job-id example-september

Results are written to data/output/jobs/example-september/. Use a different job ID when you want a separate restoration of the same capture.

Continue a restoration

Press Ctrl+C to interrupt a run. Repeat the command with the same capture URL, job ID, and working directory to continue it. Downloaded resources are reused; pending, interrupted, and failed resources are processed on the next run.

To finish the short run above, run the same job without --max-files:

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/' \
  --job-id example-preview

The job's stored state lives in data/work/jobs/<job-id>/. Keep this directory to preserve its progress. Each job ID belongs to its original capture URL.

Output

data/output/jobs/<job-id>/
├── snapshot.zip
└── result.json

Paths are relative to the directory where you run the command. Change them with --output-dir and --work-dir; see Storage. See Results for the archive contents and report fields.

Automation

When its output is not a terminal, or with --json, the command prints one JSON event per line instead of a progress bar. The last event is the final_result with the same fields as the job report:

wayback-restorator restore 'https://web.archive.org/web/20260925084419/https://example.com/' --json

Every option can also be set with an environment variable, which is useful in containers and scripts. See Configuration.

Exit codes

CodeMeaning
0The job completed, completed with source gaps, or reached a configured file bound.
1The restoration failed because the entry page was not restored.
2The options were invalid or the run stopped with an unexpected error.
130The run was interrupted with Ctrl+C.

On this page