<!--
{
  "availability" : [
    "macOS: 12.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Virtualization",
  "identifier" : "/documentation/Virtualization/VZMacOSRestoreImage",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Virtualization"
    ],
    "preciseIdentifier" : "c:objc(cs)VZMacOSRestoreImage"
  },
  "title" : "VZMacOSRestoreImage"
}
-->

# VZMacOSRestoreImage

An object that describes a version of macOS to install on to a virtual machine.

```
class VZMacOSRestoreImage
```

## Overview

To set up a new VM compatible with the restore image, use [`mostFeaturefulSupportedConfiguration`](/documentation/Virtualization/VZMacOSRestoreImage/mostFeaturefulSupportedConfiguration) to obtain the [`hardwareModel`](/documentation/Virtualization/VZMacPlatformConfiguration/hardwareModel) of the [`VZMacPlatformConfiguration`](/documentation/Virtualization/VZMacPlatformConfiguration). Then, create a [`VZMacOSRestoreImage`](/documentation/Virtualization/VZMacOSRestoreImage) object by loading an installation media file. Initialize a [`VZMacOSInstaller`](/documentation/Virtualization/VZMacOSInstaller) object with this `VZMacOSRestoreImage` object to install the operating system onto a VM.

> Important:
> Loading a restore image requires the app to have the <doc://com.apple.documentation/documentation/BundleResources/Entitlements/com.apple.security.virtualization> entitlement.

## Topics

### Getting Information About the Restore Image

[`buildVersion`](/documentation/Virtualization/VZMacOSRestoreImage/buildVersion)

The build version this restore image contains.

[`supported`](/documentation/Virtualization/VZMacOSRestoreImage/isSupported)

A Boolean value that indicates whether the current host supports this restore image.

[`mostFeaturefulSupportedConfiguration`](/documentation/Virtualization/VZMacOSRestoreImage/mostFeaturefulSupportedConfiguration)

This object represents the most fully featured configuration that’s supported by both the current host and by this restore image.

[`operatingSystemVersion`](/documentation/Virtualization/VZMacOSRestoreImage/operatingSystemVersion)

The operating system version this restore image contains.

[`URL`](/documentation/Virtualization/VZMacOSRestoreImage/url)

The URL of this restore image.

### Controlling the Restoration Process

[`fetchLatestSupported(completionHandler:)`](/documentation/Virtualization/VZMacOSRestoreImage/fetchLatestSupported(completionHandler:))

Fetches the latest restore image supported by this host from the network.

[`load(from:completionHandler:)`](/documentation/Virtualization/VZMacOSRestoreImage/load(from:completionHandler:))

Load a restore image from a file on the local file system.

[`+  fetchLatestSupportedWithCompletionHandler:`](/documentation/Virtualization/VZMacOSRestoreImage/latestSupported)

Fetches the latest restore image supported by this host from the network.

[`+  loadFileURL:completionHandler:`](/documentation/Virtualization/VZMacOSRestoreImage/image(from:))

Load a restore image from a file on the local file system.

## See Also

[`VZMacHardwareModel`](/documentation/Virtualization/VZMacHardwareModel)

A specification for the hardware elements and configurations present in a particular Mac hardware model.

## Relationships

### Conforms To

[`Equatable`](/documentation/Swift/Equatable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`CVarArg`](/documentation/Swift/CVarArg)

[`Hashable`](/documentation/Swift/Hashable)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)