Tool: RestoreBackup
Restores a VM or Disk from a specified Backup. This is a long-running operation and returns an operation ID. You may need to check the status using get_operation.
The following sample demonstrate how to use curl to invoke the RestoreBackup MCP tool.
| Curl Request |
|---|
curl --location 'https://backupdr.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "RestoreBackup", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request message for restoring from a Backup.
RestoreBackupRequest
| JSON representation |
|---|
{ "name": string, "requestId": string, // Union field |
| Fields | |
|---|---|
name |
Required. The resource name of the Backup instance, in the format 'projects/*/locations/*/backupVaults/*/dataSources/*/backups/'. |
requestId |
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: |
|
computeInstanceTargetEnvironment |
Compute Engine target environment to be used during restore. |
diskTargetEnvironment |
Disk target environment to be used during restore. |
regionDiskTargetEnvironment |
Region disk 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: |
|
computeInstanceRestoreProperties |
Compute Engine instance properties to be overridden during restore. |
diskRestoreProperties |
Disk properties to be overridden during restore. |
Union field
|
|
clearOverridesFieldMask |
Optional. A field mask used to clear server-side default values for fields within the When a field in this mask is cleared, the server will not apply its default logic (like inheriting a value from the source) for that field. The most common current use case is clearing default encryption keys. Examples of field mask paths: - Compute Instance Disks: This is a comma-separated list of fully qualified names of fields. Example: |
ComputeInstanceTargetEnvironment
| JSON representation |
|---|
{ "project": string, "zone": string, // Union field |
| Fields | |
|---|---|
project |
Required. Target project for the Compute Engine instance. |
zone |
Required. The zone of the Compute Engine instance. |
Union field
|
|
useProjectServiceAccount |
Optional. Whether to use the project service account for the Compute Engine instance restore. |
DiskTargetEnvironment
| JSON representation |
|---|
{ "project": string, "zone": string, // Union field |
| Fields | |
|---|---|
project |
Required. Target project for the disk. |
zone |
Required. Target zone for the disk. |
Union field
|
|
useProjectServiceAccount |
Optional. Whether to use the project service account for the disk restore. |
RegionDiskTargetEnvironment
| JSON representation |
|---|
{ "project": string, "region": string, "replicaZones": [ string ], // Union field |
| Fields | |
|---|---|
project |
Required. Target project for the disk. |
region |
Required. Target region for the disk. |
replicaZones[] |
Required. Target URLs of the replica zones for the disk. |
Union field
|
|
useProjectServiceAccount |
Optional. Whether to use the project service account for the disk restore. |
ComputeInstanceRestoreProperties
| JSON representation |
|---|
{ "disks": [ { object ( |
| Fields | |
|---|---|
disks[] |
Optional. Array of disks associated with this instance. Persistent disks must be created before you can assign them. Source regional persistent disks will be restored with default replica zones if not specified. |
guestAccelerators[] |
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 |
networkInterfaces[] |
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. Required to restore in different project or region. |
resourcePolicies[] |
Optional. Resource policies applied to this instance. By default, no resource policies will be applied. |
serviceAccounts[] |
Optional. A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. |
Union field
|
|
name |
Required. Name of the compute instance. |
Union field
|
|
advancedMachineFeatures |
Optional. Controls for advanced machine-related behavior features. |
Union field
|
|
canIpForward |
Optional. Allows this instance to send and receive packets with non-matching destination or source IPs. |
Union field
|
|
confidentialInstanceConfig |
Optional. Controls Confidential compute options on the instance |
Union field
|
|
deletionProtection |
Optional. Whether the resource should be protected against deletion. |
Union field
|
|
description |
Optional. An optional description of this resource. Provide this property when you create the resource. |
Union field
|
|
displayDevice |
Optional. Enables display device for the instance. |
Union field
|
|
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. |
Union field
|
|
instanceEncryptionKey |
Optional. Encrypts suspended data for an instance with a customer-managed encryption key. |
Union field
|
|
keyRevocationActionType |
Optional. KeyRevocationActionType of the instance. |
Union field
|
|
machineType |
Optional. Full or partial URL of the machine type resource to use for this instance. |
Union field
|
|
metadata |
Optional. This includes custom metadata and predefined keys. |
Union field
|
|
minCpuPlatform |
Optional. Minimum CPU platform to use for this instance. |
Union field
|
|
networkPerformanceConfig |
Optional. Configure network performance such as egress bandwidth tier. |
Union field
|
|
params |
Input only. Additional params passed with the request, but not persisted as part of resource payload. |
Union field
|
|
privateIpv6GoogleAccess |
Optional. The private IPv6 google access type for the VM. If not specified, use INHERIT_FROM_SUBNETWORK as default. |
Union field
|
|
reservationAffinity |
Optional. Specifies the reservations that this instance can consume from. |
Union field
|
|
scheduling |
Optional. Sets the scheduling options for this instance. |
Union field
|
|
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
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
enableNestedVirtualization |
Optional. Whether to enable nested virtualization or not (default is false). |
Union field
|
|
threadsPerCore |
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. |
Union field
|
|
visibleCoreCount |
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. |
Union field
|
|
enableUefiNetworking |
Optional. Whether to enable UEFI networking for instance creation. |
ConfidentialInstanceConfig
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
enableConfidentialCompute |
Optional. Defines whether the instance should have confidential compute enabled. |
AttachedDisk
| JSON representation |
|---|
{ "license": [ string ], "guestOsFeature": [ { object ( |
| Fields | |
|---|---|
license[] |
Optional. Any valid publicly visible licenses. |
guestOsFeature[] |
Optional. A list of features to enable on the guest operating system. Applicable only for bootable images. |
Union field
|
|
initializeParams |
Optional. Specifies the parameters to initialize this disk. |
Union field
|
|
deviceName |
Optional. This is used as an identifier for the disks. This is the unique name has to provided to modify disk parameters like disk_name and replica_zones (in case of RePDs) |
Union field
|
|
kind |
Optional. Type of the resource. |
Union field
|
|
diskTypeDeprecated |
Specifies the type of the disk. |
Union field
|
|
mode |
Optional. The mode in which to attach this disk. |
Union field
|
|
source |
Optional. Specifies a valid partial or full URL to an existing Persistent Disk resource. |
Union field
|
|
index |
Optional. A zero-based index to this disk, where 0 is reserved for the boot disk. |
Union field
|
|
boot |
Optional. Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem. |
Union field
|
|
autoDelete |
Optional. Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance). |
Union field
|
|
diskInterface |
Optional. Specifies the disk interface to use for attaching this disk. |
Union field
|
|
diskEncryptionKey |
Optional. Encrypts or decrypts a disk using a customer-supplied encryption key. |
Union field
|
|
diskSizeGb |
Optional. The size of the disk in GB. |
Union field
|
|
savedState |
Optional. Output only. The state of the disk. |
Union field
|
|
diskType |
Optional. Output only. The URI of the disk type resource. For example: projects/project/zones/zone/diskTypes/pd-standard or pd-ssd |
Union field
|
|
type |
Optional. Specifies the type of the disk. |
InitializeParams
| JSON representation |
|---|
{ "replicaZones": [ string ], // Union field |
| Fields | |
|---|---|
replicaZones[] |
Optional. URL of the zone where the disk should be created. Required for each regional disk associated with the instance. |
Union field
|
|
diskName |
Optional. Specifies the disk name. If not specified, the default is to use the name of the instance. |
GuestOsFeature
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
type |
The ID of a supported feature. |
CustomerEncryptionKey
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field key. The key to use for encryption. key can be only one of the following: |
|
rawKey |
Optional. Specifies a 256-bit customer-supplied encryption key. |
rsaEncryptedKey |
Optional. RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. |
kmsKeyName |
Optional. The name of the encryption key that is stored in Google Cloud KMS. |
Union field
|
|
kmsKeyServiceAccount |
Optional. The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used. |
DisplayDevice
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
enableDisplay |
Optional. Enables display for the Compute Engine VM |
AcceleratorConfig
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
acceleratorType |
Optional. Full or partial URL of the accelerator type resource to attach to this instance. |
Union field
|
|
acceleratorCount |
Optional. The number of the guest accelerator cards exposed to this instance. |
LabelsEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
Metadata
| JSON representation |
|---|
{
"items": [
{
object ( |
| Fields | |
|---|---|
items[] |
Optional. Array of key/value pairs. The total size of all keys and values must be less than 512 KB. |
Entry
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
key |
Optional. Key for the metadata entry. |
Union field
|
|
value |
Optional. Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB). |
NetworkInterface
| JSON representation |
|---|
{ "accessConfigs": [ { object ( |
| Fields | |
|---|---|
accessConfigs[] |
Optional. An array of configurations for this interface. Currently, only one access config,ONE_TO_ONE_NAT is supported. If there are no accessConfigs specified, then this instance will have no external internet access. |
ipv6AccessConfigs[] |
Optional. An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. |
aliasIpRanges[] |
Optional. An array of alias IP ranges for this network interface. You can only specify this field for network interfaces in VPC networks. |
Union field
|
|
network |
Optional. URL of the VPC network resource for this instance. |
Union field
|
|
subnetwork |
Optional. The URL of the Subnetwork resource for this instance. |
Union field
|
|
networkIP |
Optional. An IPv4 internal IP address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system. |
Union field
|
|
ipv6Address |
Optional. An IPv6 internal network address for this network interface. To use a static internal IP address, it must be unused and in the same region as the instance's zone. If not specified, Google Cloud will automatically assign an internal IPv6 address from the instance's subnetwork. |
Union field
|
|
internalIpv6PrefixLength |
Optional. The prefix length of the primary internal IPv6 range. |
Union field
|
|
name |
Output only. [Output Only] The name of the network interface, which is generated by the server. |
Union field
|
|
stackType |
The stack type for this network interface. |
Union field
|
|
ipv6AccessType |
Optional. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork. |
Union field
|
|
queueCount |
Optional. The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users. |
Union field
|
|
nicType |
Optional. The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. |
Union field
|
|
networkAttachment |
Optional. The URL of the network attachment that this interface should connect to in the following format: projects/{project_number}/regions/{region_name}/networkAttachments/{network_attachment_name}. |
AccessConfig
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
type |
Optional. In accessConfigs (IPv4), the default and only option is ONE_TO_ONE_NAT. In ipv6AccessConfigs, the default and only option is DIRECT_IPV6. |
Union field
|
|
name |
Optional. The name of this access configuration. |
Union field
|
|
natIP |
Optional. The external IP address of this access configuration. |
Union field
|
|
externalIpv6 |
Optional. The external IPv6 address of this access configuration. |
Union field
|
|
externalIpv6PrefixLength |
Optional. The prefix length of the external IPv6 range. |
Union field
|
|
setPublicPtr |
Optional. Specifies whether a public DNS 'PTR' record should be created to map the external IP address of the instance to a DNS domain name. |
Union field
|
|
publicPtrDomainName |
Optional. The DNS domain name for the public PTR record. |
Union field
|
|
networkTier |
Optional. This signifies the networking tier used for configuring this access |
AliasIpRange
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
ipCidrRange |
Optional. The IP alias ranges to allocate for this interface. |
Union field
|
|
subnetworkRangeName |
Optional. The name of a subnetwork secondary IP range from which to allocate an IP alias range. If not specified, the primary range of the subnetwork is used. |
NetworkPerformanceConfig
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
totalEgressBandwidthTier |
Optional. The tier of the total egress bandwidth. |
InstanceParams
| JSON representation |
|---|
{ "resourceManagerTags": { string: string, ... } } |
| Fields | |
|---|---|
resourceManagerTags |
Optional. Resource manager tags to be bound to the instance. An object containing a list of |
ResourceManagerTagsEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
AllocationAffinity
| JSON representation |
|---|
{ "values": [ string ], // Union field |
| Fields | |
|---|---|
values[] |
Optional. Corresponds to the label values of a reservation resource. |
Union field
|
|
consumeReservationType |
Optional. Specifies the type of reservation from which this instance can consume |
Union field
|
|
key |
Optional. Corresponds to the label key of a reservation resource. |
Scheduling
| JSON representation |
|---|
{ "nodeAffinities": [ { object ( |
| Fields | |
|---|---|
nodeAffinities[] |
Optional. A set of node affinity and anti-affinity configurations. Overrides reservationAffinity. |
Union field
|
|
onHostMaintenance |
Optional. Defines the maintenance behavior for this instance. |
Union field
|
|
automaticRestart |
Optional. Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). |
Union field
|
|
preemptible |
Optional. Defines whether the instance is preemptible. |
Union field
|
|
minNodeCpus |
Optional. The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. |
Union field
|
|
provisioningModel |
Optional. Specifies the provisioning model of the instance. |
Union field
|
|
instanceTerminationAction |
Optional. Specifies the termination action for the instance. |
Union field
|
|
localSsdRecoveryTimeout |
Optional. Specifies the maximum amount of time a Local Ssd Vm should wait while recovery of the Local Ssd state is attempted. Its value should be in between 0 and 168 hours with hour granularity and the default value being 1 hour. |
NodeAffinity
| JSON representation |
|---|
{ "values": [ string ], // Union field |
| Fields | |
|---|---|
values[] |
Optional. Corresponds to the label values of Node resource. |
Union field
|
|
key |
Optional. Corresponds to the label key of Node resource. |
Union field
|
|
operator |
Optional. Defines the operation of node selection. |
SchedulingDuration
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
seconds |
Optional. Span of time at a resolution of a second. |
Union field
|
|
nanos |
Optional. Span of time that's a fraction of a second at nanosecond resolution. |
ServiceAccount
| JSON representation |
|---|
{ "scopes": [ string ], // Union field |
| Fields | |
|---|---|
scopes[] |
Optional. The list of scopes to be made available for this service account. |
Union field
|
|
email |
Optional. Email address of the service account. |
Tags
| JSON representation |
|---|
{ "items": [ string ] } |
| Fields | |
|---|---|
items[] |
Optional. An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035. |
DiskRestoreProperties
| JSON representation |
|---|
{ "licenses": [ string ], "guestOsFeature": [ { object ( |
| Fields | |
|---|---|
licenses[] |
Optional. A list of publicly available licenses that are applicable to this backup. This is applicable if the original image had licenses attached, e.g. Windows image |
guestOsFeature[] |
Optional. A list of features to enable in the guest operating system. This is applicable only for bootable images. |
resourcePolicy[] |
Optional. Resource policies applied to this disk. |
labels |
Optional. Labels to apply to this disk. These can be modified later using
method. Label values can be empty. An object containing a list of |
resourceManagerTags |
Optional. Resource manager tags to be bound to the disk. An object containing a list of |
Union field
|
|
name |
Required. Name of the disk. |
Union field
|
|
description |
Optional. An optional description of this resource. Provide this property when you create the resource. |
Union field
|
|
sizeGb |
Required. The size of the disk in GB. |
Union field
|
|
diskEncryptionKey |
Optional. Encrypts the disk using a customer-supplied encryption key or a customer-managed encryption key. |
Union field
|
|
physicalBlockSizeBytes |
Optional. Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. Currently, the supported size is 4096. |
Union field
|
|
provisionedIops |
Optional. Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. |
Union field
|
|
provisionedThroughput |
Optional. Indicates how much throughput to provision for the disk. This sets the number of throughput MB per second that the disk can handle. |
Union field
|
|
enableConfidentialCompute |
Optional. Indicates whether this disk is using confidential compute mode. Encryption with a Cloud KMS key is required to enable this option. |
Union field
|
|
storagePool |
Optional. The storage pool in which the new disk is created. You can provide this as a partial or full URL to the resource. |
Union field
|
|
accessMode |
Optional. The access mode of the disk. |
Union field
|
|
architecture |
Optional. The architecture of the source disk. Valid values are ARM64 or X86_64. |
Union field
|
|
type |
Required. URL of the disk type resource describing which disk type to use to create the disk. |
LabelsEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
ResourceManagerTagsEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
FieldMask
| JSON representation |
|---|
{ "paths": [ string ] } |
| Fields | |
|---|---|
paths[] |
The set of field mask paths. |
DiskType
List of the Disk Types.
| Enums | |
|---|---|
DISK_TYPE_UNSPECIFIED |
Default value, which is unused. |
SCRATCH |
A scratch disk type. |
PERSISTENT |
A persistent disk type. |
DiskMode
List of the Disk Modes.
| Enums | |
|---|---|
DISK_MODE_UNSPECIFIED |
Default value, which is unused. |
READ_WRITE |
Attaches this disk in read-write mode. Only one virtual machine at a time can be attached to a disk in read-write mode. |
READ_ONLY |
Attaches this disk in read-only mode. Multiple virtual machines can use a disk in read-only mode at a time. |
LOCKED |
The disk is locked for administrative reasons. Nobody else can use the disk. This mode is used (for example) when taking a snapshot of a disk to prevent mounting the disk while it is being snapshotted. |
DiskInterface
List of the Disk Interfaces.
| Enums | |
|---|---|
DISK_INTERFACE_UNSPECIFIED |
Default value, which is unused. |
SCSI |
SCSI Disk Interface. |
NVME |
NVME Disk Interface. |
NVDIMM |
NVDIMM Disk Interface. |
ISCSI |
ISCSI Disk Interface. |
FeatureType
List of the Feature Types.
| Enums | |
|---|---|
FEATURE_TYPE_UNSPECIFIED |
Default value, which is unused. |
VIRTIO_SCSI_MULTIQUEUE |
VIRTIO_SCSI_MULTIQUEUE feature type. |
WINDOWS |
WINDOWS feature type. |
MULTI_IP_SUBNET |
MULTI_IP_SUBNET feature type. |
UEFI_COMPATIBLE |
UEFI_COMPATIBLE feature type. |
SECURE_BOOT |
SECURE_BOOT feature type. |
GVNIC |
GVNIC feature type. |
SEV_CAPABLE |
SEV_CAPABLE feature type. |
BARE_METAL_LINUX_COMPATIBLE |
BARE_METAL_LINUX_COMPATIBLE feature type. |
SUSPEND_RESUME_COMPATIBLE |
SUSPEND_RESUME_COMPATIBLE feature type. |
SEV_LIVE_MIGRATABLE |
SEV_LIVE_MIGRATABLE feature type. |
SEV_SNP_CAPABLE |
SEV_SNP_CAPABLE feature type. |
TDX_CAPABLE |
TDX_CAPABLE feature type. |
IDPF |
IDPF feature type. |
SEV_LIVE_MIGRATABLE_V2 |
SEV_LIVE_MIGRATABLE_V2 feature type. |
DiskSavedState
List of the states of the Disk.
| Enums | |
|---|---|
DISK_SAVED_STATE_UNSPECIFIED |
Default Disk state has not been preserved. |
PRESERVED |
Disk state has been preserved. |
KeyRevocationActionType
Specifies whether the virtual machine instance will be shut down on key revocation. It is currently used in instance, instance properties and GMI protos
| Enums | |
|---|---|
KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED |
Default value. This value is unused. |
NONE |
Indicates user chose no operation. |
STOP |
Indicates user chose to opt for VM shutdown on key revocation. |
AccessType
The type of configuration.
| Enums | |
|---|---|
ACCESS_TYPE_UNSPECIFIED |
Default value. This value is unused. |
ONE_TO_ONE_NAT |
ONE_TO_ONE_NAT |
DIRECT_IPV6 |
Direct IPv6 access. |
NetworkTier
Network tier property used by addresses, instances and forwarding rules.
| Enums | |
|---|---|
NETWORK_TIER_UNSPECIFIED |
Default value. This value is unused. |
PREMIUM |
High quality, Google-grade network tier, support for all networking products. |
STANDARD |
Public internet quality, only limited support for other networking products. |
StackType
Stack type for this network interface.
| Enums | |
|---|---|
STACK_TYPE_UNSPECIFIED |
Default should be STACK_TYPE_UNSPECIFIED. |
IPV4_ONLY |
The network interface will be assigned IPv4 address. |
IPV4_IPV6 |
The network interface can have both IPv4 and IPv6 addresses. |
Ipv6AccessType
IPv6 access type for this network interface.
| Enums | |
|---|---|
UNSPECIFIED_IPV6_ACCESS_TYPE |
IPv6 access type not set. Means this network interface hasn't been turned on IPv6 yet. |
INTERNAL |
This network interface can have internal IPv6. |
EXTERNAL |
This network interface can have external IPv6. |
NicType
Nic type for this network interface.
| Enums | |
|---|---|
NIC_TYPE_UNSPECIFIED |
Default should be NIC_TYPE_UNSPECIFIED. |
VIRTIO_NET |
VIRTIO |
GVNIC |
GVNIC |
Tier
Network performance tier.
| Enums | |
|---|---|
TIER_UNSPECIFIED |
This value is unused. |
DEFAULT |
Default network performance config. |
TIER_1 |
Tier 1 network performance config. |
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. |
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. |
OnHostMaintenance
Defines the maintenance behavior for this instance=
| Enums | |
|---|---|
ON_HOST_MAINTENANCE_UNSPECIFIED |
Default value. This value is unused. |
TERMINATE |
Tells Compute Engine to terminate and (optionally) restart the instance away from the maintenance activity. |
MIGRATE |
Default, Allows Compute Engine to automatically migrate instances out of the way of maintenance events. |
Operator
Defines the type of node selections.
| Enums | |
|---|---|
OPERATOR_UNSPECIFIED |
Default value. This value is unused. |
IN |
Requires Compute Engine to seek for matched nodes. |
NOT_IN |
Requires Compute Engine to avoid certain nodes. |
ProvisioningModel
Defines the provisioning model for an instance.
| Enums | |
|---|---|
PROVISIONING_MODEL_UNSPECIFIED |
Default value. This value is not used. |
STANDARD |
Standard provisioning with user controlled runtime, no discounts. |
SPOT |
Heavily discounted, no guaranteed runtime. |
InstanceTerminationAction
Defines the supported termination actions for an instance.
| Enums | |
|---|---|
INSTANCE_TERMINATION_ACTION_UNSPECIFIED |
Default value. This value is unused. |
DELETE |
Delete the VM. |
STOP |
Stop the VM without storing in-memory content. default action. |
AccessMode
The supported access modes of the disk.
| Enums | |
|---|---|
READ_WRITE_SINGLE |
The default AccessMode, means the disk can be attached to single instance in RW mode. |
READ_WRITE_MANY |
The AccessMode means the disk can be attached to multiple instances in RW mode. |
READ_ONLY_MANY |
The AccessMode means the disk can be attached to multiple instances in RO mode. |
Architecture
Architecture of the source disk.
| Enums | |
|---|---|
ARCHITECTURE_UNSPECIFIED |
Default value. This value is unused. |
X86_64 |
Disks with architecture X86_64 |
ARM64 |
Disks with architecture ARM64 |
Output Schema
This resource represents a long-running operation that is the result of a network API call.
Operation
| JSON representation |
|---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
| Fields | |
|---|---|
name |
The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the |
metadata |
Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. An object containing fields of an arbitrary type. An additional field |
done |
If the value is |
Union field result. The operation result, which can be either an error or a valid response. If done == false, neither error nor response is set. If done == true, exactly one of error or response can be set. Some services might not provide the result. result can be only one of the following: |
|
error |
The error result of the operation in case of failure or cancellation. |
response |
The normal, successful response of the operation. If the original method returns no data on success, such as An object containing fields of an arbitrary type. An additional field |
Any
| JSON representation |
|---|
{ "typeUrl": string, "value": string } |
| Fields | |
|---|---|
typeUrl |
Identifies the type of the serialized Protobuf message with a URI reference consisting of a prefix ending in a slash and the fully-qualified type name. Example: type.googleapis.com/google.protobuf.StringValue This string must contain at least one The prefix is arbitrary and Protobuf implementations are expected to simply strip off everything up to and including the last All type URL strings must be legal URI references with the additional restriction (for the text format) that the content of the reference must consist only of alphanumeric characters, percent-encoded escapes, and characters in the following set (not including the outer backticks): In the original design of |
value |
Holds a Protobuf serialization of the type described by type_url. A base64-encoded string. |
Status
| JSON representation |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Fields | |
|---|---|
code |
The status code, which should be an enum value of |
message |
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the |
details[] |
A list of messages that carry the error details. There is a common set of message types for APIs to use. An object containing fields of an arbitrary type. An additional field |
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌