- HTTP request
- Path parameters
- Request body
- Response body
- Authorization scopes
- IAM Permissions
- ComputeInstanceTargetEnvironment
- ComputeInstanceRestoreProperties
- AdvancedMachineFeatures
- ConfidentialInstanceConfig
- DisplayDevice
- NetworkPerformanceConfig
- Tier
- InstanceParams
- InstancePrivateIpv6GoogleAccess
- AllocationAffinity
- Type
- Try it!
Restore from a Backup
HTTP request
POST https://backupdr.googleapis.com/v1/{name=projects/*/locations/*/backupVaults/*/dataSources/*/backups/*}:restore
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters | |
---|---|
name |
Required. The resource name of the Backup instance, in the format 'projects/*/locations/*/backupVaults/*/dataSources/*/backups/'. |
Request body
The request body contains data with the following structure:
JSON representation |
---|
{ "requestId": string, // Union field |
Fields | |
---|---|
request |
Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). |
Union field target_environment . The target environment for the restore operation. target_environment can be only one of the following: |
|
compute |
Compute Engine target environment to be used during restore. |
Union field instance_properties . The property overrides for the instance being restored. instance_properties can be only one of the following: |
|
compute |
Compute Engine instance properties to be overridden during restore. |
Response body
If successful, the response body contains an instance of Operation
.
Authorization scopes
Requires the following OAuth scope:
https://www.googleapis.com/auth/cloud-platform
For more information, see the Authentication Overview.
IAM Permissions
Requires the following IAM permission on the name
resource:
backupdr.bvbackups.restore
For more information, see the IAM documentation.
ComputeInstanceTargetEnvironment
ComputeInstanceTargetEnvironment represents Compute Engine target environment to be used during restore.
JSON representation |
---|
{ "project": string, "zone": string } |
Fields | |
---|---|
project |
Required. Target project for the Compute Engine instance. |
zone |
Required. The zone of the Compute Engine instance. |
ComputeInstanceRestoreProperties
ComputeInstanceRestoreProperties represents Compute Engine instance properties to be overridden during restore.
JSON representation |
---|
{ "disks": [ { object ( |
Fields | |
---|---|
disks[] |
Optional. Array of disks associated with this instance. Persistent disks must be created before you can assign them. |
guest |
Optional. A list of the type and count of accelerator cards attached to the instance. |
labels |
Optional. Labels to apply to this instance. An object containing a list of |
network |
Optional. An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance. |
resource |
Optional. Resource policies applied to this instance. |
service |
Optional. A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. |
name |
Required. Name of the compute instance. |
advanced |
Optional. Controls for advanced machine-related behavior features. |
can |
Optional. Allows this instance to send and receive packets with non-matching destination or source IPs. |
confidential |
Optional. Controls Confidential compute options on the instance |
deletion |
Optional. Whether the resource should be protected against deletion. |
description |
Optional. An optional description of this resource. Provide this property when you create the resource. |
display |
Optional. Enables display device for the instance. |
hostname |
Optional. Specifies the hostname of the instance. The specified hostname must be RFC1035 compliant. If hostname is not specified, the default hostname is [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS. |
instance |
Optional. Encrypts suspended data for an instance with a customer-managed encryption key. |
key |
Optional. KeyRevocationActionType of the instance. |
machine |
Optional. Full or partial URL of the machine type resource to use for this instance. |
metadata |
Optional. This includes custom metadata and predefined keys. |
min |
Optional. Minimum CPU platform to use for this instance. |
network |
Optional. Configure network performance such as egress bandwidth tier. |
params |
Input only. Additional params passed with the request, but not persisted as part of resource payload. |
private |
Optional. The private IPv6 google access type for the VM. If not specified, use INHERIT_FROM_SUBNETWORK as default. |
reservation |
Optional. Specifies the reservations that this instance can consume from. |
scheduling |
Optional. Sets the scheduling options for this instance. |
tags |
Optional. Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. |
AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
JSON representation |
---|
{ "enableNestedVirtualization": boolean, "threadsPerCore": integer, "visibleCoreCount": integer, "enableUefiNetworking": boolean } |
Fields | |
---|---|
enable |
Optional. Whether to enable nested virtualization or not (default is false). |
threads |
Optional. The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed. |
visible |
Optional. The number of physical cores to expose to an instance. Multiply by the number of threads per core to compute the total number of virtual CPUs to expose to the instance. If unset, the number of cores is inferred from the instance's nominal CPU count and the underlying platform's SMT width. |
enable |
Optional. Whether to enable UEFI networking for instance creation. |
ConfidentialInstanceConfig
A set of Confidential Instance options.
JSON representation |
---|
{ "enableConfidentialCompute": boolean } |
Fields | |
---|---|
enable |
Optional. Defines whether the instance should have confidential compute enabled. |
DisplayDevice
A set of Display Device options
JSON representation |
---|
{ "enableDisplay": boolean } |
Fields | |
---|---|
enable |
Optional. Enables display for the Compute Engine VM |
NetworkPerformanceConfig
Network performance configuration.
JSON representation |
---|
{
"totalEgressBandwidthTier": enum ( |
Fields | |
---|---|
total |
Optional. The tier of the total egress bandwidth. |
Tier
Network performance tier.
Enums | |
---|---|
TIER_UNSPECIFIED |
This value is unused. |
DEFAULT |
Default network performance config. |
TIER_1 |
Tier 1 network performance config. |
InstanceParams
Additional instance params.
JSON representation |
---|
{ "resourceManagerTags": { string: string, ... } } |
Fields | |
---|---|
resource |
Optional. Resource manager tags to be bound to the instance. An object containing a list of |
InstancePrivateIpv6GoogleAccess
The private IPv6 google access type for the VMs.
Enums | |
---|---|
INSTANCE_PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED |
Default value. This value is unused. |
INHERIT_FROM_SUBNETWORK |
Each network interface inherits PrivateIpv6GoogleAccess from its subnetwork. |
ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE |
Outbound private IPv6 access from VMs in this subnet to Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. |
ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE |
Bidirectional private IPv6 access to/from Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. |
AllocationAffinity
Specifies the reservations that this instance can consume from.
JSON representation |
---|
{
"values": [
string
],
"consumeReservationType": enum ( |
Fields | |
---|---|
values[] |
Optional. Corresponds to the label values of a reservation resource. |
consume |
Optional. Specifies the type of reservation from which this instance can consume |
key |
Optional. Corresponds to the label key of a reservation resource. |
Type
Indicates whether to consume from a reservation or not.
Enums | |
---|---|
TYPE_UNSPECIFIED |
Default value. This value is unused. |
NO_RESERVATION |
Do not consume from any allocated capacity. |
ANY_RESERVATION |
Consume any allocation available. |
SPECIFIC_RESERVATION |
Must consume from a specific reservation. Must specify key value fields for specifying the reservations. |