Restore DNS Zone
restore_dns_zoneRestore a domain's DNS zone to a saved restore point. By default, add back missing records without removing newer ones; use prune to delete extras.
Instructions
Put a domain's DNS zone back to a saved restore point. Call diff_dns_restore_point first and show the user what will change.
By default this only ADDS BACK what is missing. It does not remove records added since — pass prune: true for that, and only after reading the extra list, because 'restore my records' usually means 'put back what I lost', not 'delete everything I have done since'.
The restore is itself reversible. The zone's state from immediately before is saved and returned as previousStateSavedAs; restore that id to undo. Use dry_run: true to rehearse — it reports exactly what would change and changes nothing.
Read failed in the response. Parking records and other masked types (ALIAS, HTTPS) are managed by another part of the platform and cannot be recreated this way; they appear in failed rather than being counted, so restored is always a true number. If a parking record is what is missing, the domain needs re-parking on the website instead. SOA and NS are never touched.
A restore only matters if this zone is the one being served. If the domain is delegated to another provider, the response carries a warnings string saying so: the records went back, and nothing the user can see has changed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| prune | No | Also DELETE live records that are not in the restore point. Default false. Destructive — confirm with the user first. | |
| domain | Yes | Domain to restore, e.g. `example.com` | |
| dry_run | No | If true, report what would change without changing anything. | |
| snapshot_id | Yes | Restore point id from `list_dns_restore_points`. |