Wayback Restorator

Results

Use the restored website ZIP and read its restoration report.

Output files

Completed restorations produce a ZIP and a JSON report. By default, they are stored in data/output in the directory where you run the command:

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

The dashboard uses the same layout and provides a Download ZIP link. See Storage to choose other directories.

Website archive

snapshot.zip contains the restored pages and assets, with HTML and CSS references rewritten to their local paths. Files are stored relative to the website root. Extensionless pages use directory indexes such as about/index.html. Query-string variants get distinct filenames.

The replay URL you restore is the entry page and is saved as the ZIP's root index.html, including when it was a subpage such as /html/index/index.php. Its links keep the original routes, and links to the site root open it.

Extract the ZIP and serve the site locally, or upload the extracted files to a static web host.

Job report

result.json records the requested capture, resource counts, selected fallback captures, plugin counters, and archive metadata. It stays alongside the ZIP. The engine writes this report after processing resources, including bounded runs and runs whose entry page could not be restored.

A completed-job report includes fields such as:

{
  "event": "final_result",
  "status": "completed",
  "job_id": "example-september",
  "domain": "example.com",
  "capture_timestamp": "20260925084419",
  "counts": {
    "pending": 0,
    "processing": 0,
    "completed": 12,
    "unavailable": 0,
    "failed": 0
  },
  "failure_count": 0,
  "failures": [],
  "artifact": "snapshot.zip"
}

Job status

statusMeaning
completedAll discovered resources restored; ZIP available.
completed_with_source_gapsSome resources other than the entry page were unavailable or failed; ZIP available.
bounded--max-files was reached with resources still pending; report available. Continue the job to create a ZIP.
failedThe entry page was not restored; error says why.

ZIPs are published for completed and completed_with_source_gaps jobs.

Resource counts

StateMeaning
pendingWaiting to be processed.
processingCurrently being processed.
completedDownloaded and available for the restored output.
unavailableRecorded as unavailable from the archive.
failedProcessing ended with an error.

Report fields

FieldMeaning
job_id, domain, capture_timestampJob and requested capture.
errorWhy the entry page was not restored; null unless status is failed.
countsResources grouped by the states above.
failure_count, failuresTotal unavailable/failed resources; each entry has original_url, state, error, and attempts.
failure_samplesFirst 50 failures; also shown in the CLI final event.
linked_page_capture_fallback_count, linked_page_capture_fallbacksPages restored from older linked-page captures; each entry has url, discovered_from, capture_timestamp, and drift_days.
files_materialized, remote_neutralizedFiles written and remote references disabled during rewriting.
pluginsEnabled plugins and their counters.
artifact, artifact_size, artifact_sha256, file_count, extracted_sizeZIP name, compressed bytes, SHA-256, file count, and uncompressed bytes; present when a ZIP is created.

Capture details

capture_timestamp is the requested capture date. In replay mode, linked_page_capture_fallbacks lists linked pages recovered from older captures beyond the normal page window. Each entry records the page URL, the page that discovered it, the selected timestamp, and its distance from the requested date.

See Capture selection to configure these windows.

Plugin results

Each entry in plugins contains the invocation's id, registered plugin name, and counters. For example, path_prefix reports renamed paths and rewritten references. See Plugins for the available transformations.

On this page