Compute Engine API

Creates and runs virtual machines on Google Cloud Platform.

Service: compute.googleapis.com

We recommend that you call this service using Google-provided client libraries. If your application needs to call this service using your own libraries, you should use the following information when making the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service may have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

  • https://compute.googleapis.com

REST Resource: beta.acceleratorTypes

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/acceleratorTypes
Retrieves an aggregated list of accelerator types.
get GET /compute/beta/projects/{project}/zones/{zone}/acceleratorTypes/{resourceId}
Returns the specified accelerator type.
list GET /compute/beta/projects/{project}/zones/{zone}/acceleratorTypes
Retrieves a list of accelerator types available to the specified project.

REST Resource: beta.addresses

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/addresses
Retrieves an aggregated list of addresses.
delete DELETE /compute/beta/projects/{project}/regions/{region}/addresses/{resourceId}
Deletes the specified address resource.
get GET /compute/beta/projects/{project}/regions/{region}/addresses/{resourceId}
Returns the specified address resource.
insert POST /compute/beta/projects/{project}/regions/{region}/addresses
Creates an address resource in the specified project by using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/addresses
Retrieves a list of addresses contained within the specified region.
setLabels POST /compute/beta/projects/{project}/regions/{region}/addresses/{resourceId}/setLabels
Sets the labels on an Address.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/addresses/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.autoscalers

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/autoscalers
Retrieves an aggregated list of autoscalers.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/autoscalers/{resourceId}
Deletes the specified autoscaler.
get GET /compute/beta/projects/{project}/zones/{zone}/autoscalers/{resourceId}
Returns the specified autoscaler resource.
insert POST /compute/beta/projects/{project}/zones/{zone}/autoscalers
Creates an autoscaler in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/autoscalers
Retrieves a list of autoscalers contained within the specified zone.
patch PATCH /compute/beta/projects/{project}/zones/{zone}/autoscalers
Updates an autoscaler in the specified project using the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/autoscalers/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/zones/{zone}/autoscalers
Updates an autoscaler in the specified project using the data included in the request.

REST Resource: beta.backendBuckets

Methods
addSignedUrlKey POST /compute/beta/projects/{project}/global/backendBuckets/{resourceId}/addSignedUrlKey
Adds a key for validating requests with signed URLs for this backend bucket.
delete DELETE /compute/beta/projects/{project}/global/backendBuckets/{resourceId}
Deletes the specified BackendBucket resource.
deleteSignedUrlKey POST /compute/beta/projects/{project}/global/backendBuckets/{resourceId}/deleteSignedUrlKey
Deletes a key for validating requests with signed URLs for this backend bucket.
get GET /compute/beta/projects/{project}/global/backendBuckets/{resourceId}
Returns the specified BackendBucket resource.
getIamPolicy GET /compute/beta/projects/{project}/global/backendBuckets/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/global/backendBuckets
Creates a BackendBucket resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/backendBuckets
Retrieves the list of BackendBucket resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/backendBuckets/{resourceId}
Updates the specified BackendBucket resource with the data included in the request.
setIamPolicy POST /compute/beta/projects/{project}/global/backendBuckets/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
testIamPermissions POST /compute/beta/projects/{project}/global/backendBuckets/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/backendBuckets/{resourceId}
Updates the specified BackendBucket resource with the data included in the request.

REST Resource: beta.backendServices

Methods
addSignedUrlKey POST /compute/beta/projects/{project}/global/backendServices/{resourceId}/addSignedUrlKey
Adds a key for validating requests with signed URLs for this backend service.
aggregatedList GET /compute/beta/projects/{project}/aggregated/backendServices
Retrieves the list of all BackendService resources, regional and global, available to the specified project.
delete DELETE /compute/beta/projects/{project}/global/backendServices/{resourceId}
Deletes the specified BackendService resource.
deleteSignedUrlKey POST /compute/beta/projects/{project}/global/backendServices/{resourceId}/deleteSignedUrlKey
Deletes a key for validating requests with signed URLs for this backend service.
get GET /compute/beta/projects/{project}/global/backendServices/{resourceId}
Returns the specified BackendService resource.
getHealth POST /compute/beta/projects/{project}/global/backendServices/{resourceId}/getHealth
Gets the most recent health check results for this BackendService.
insert POST /compute/beta/projects/{project}/global/backendServices
Creates a BackendService resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/backendServices
Retrieves the list of BackendService resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/backendServices/{resourceId}
Patches the specified BackendService resource with the data included in the request.
setSecurityPolicy POST /compute/beta/projects/{project}/global/backendServices/{resourceId}/setSecurityPolicy
Sets the security policy for the specified backend service.
testIamPermissions POST /compute/beta/projects/{project}/global/backendServices/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/backendServices/{resourceId}
Updates the specified BackendService resource with the data included in the request.

REST Resource: beta.diskTypes

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/diskTypes
Retrieves an aggregated list of disk types.
get GET /compute/beta/projects/{project}/zones/{zone}/diskTypes/{resourceId}
Returns the specified disk type.
list GET /compute/beta/projects/{project}/zones/{zone}/diskTypes
Retrieves a list of disk types available to the specified project.

REST Resource: beta.disks

Methods
addResourcePolicies POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/addResourcePolicies
Adds existing resource policies to a disk.
aggregatedList GET /compute/beta/projects/{project}/aggregated/disks
Retrieves an aggregated list of persistent disks.
createSnapshot POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/createSnapshot
Creates a snapshot of a specified persistent disk.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}
Deletes the specified persistent disk.
get GET /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}
Returns a specified persistent disk.
getIamPolicy GET /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/zones/{zone}/disks
Creates a persistent disk in the specified project using the data in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/disks
Retrieves a list of persistent disks contained within the specified zone.
removeResourcePolicies POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/removeResourcePolicies
Removes resource policies from a disk.
resize POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/resize
Resizes the specified persistent disk.
setIamPolicy POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
setLabels POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/setLabels
Sets the labels on a disk.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/disks/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.externalVpnGateways

Methods
delete DELETE /compute/beta/projects/{project}/global/externalVpnGateways/{resourceId}
Deletes the specified externalVpnGateway.
get GET /compute/beta/projects/{project}/global/externalVpnGateways/{resourceId}
Returns the specified externalVpnGateway.
insert POST /compute/beta/projects/{project}/global/externalVpnGateways
Creates a ExternalVpnGateway in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/externalVpnGateways
Retrieves the list of ExternalVpnGateway available to the specified project.
setLabels POST /compute/beta/projects/{project}/global/externalVpnGateways/{resourceId}/setLabels
Sets the labels on an ExternalVpnGateway.
testIamPermissions POST /compute/beta/projects/{project}/global/externalVpnGateways/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.firewalls

Methods
delete DELETE /compute/beta/projects/{project}/global/firewalls/{resourceId}
Deletes the specified firewall.
get GET /compute/beta/projects/{project}/global/firewalls/{resourceId}
Returns the specified firewall.
insert POST /compute/beta/projects/{project}/global/firewalls
Creates a firewall rule in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/firewalls
Retrieves the list of firewall rules available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/firewalls/{resourceId}
Updates the specified firewall rule with the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/global/firewalls/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/firewalls/{resourceId}
Updates the specified firewall rule with the data included in the request.

REST Resource: beta.forwardingRules

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/forwardingRules
Retrieves an aggregated list of forwarding rules.
delete DELETE /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Deletes the specified ForwardingRule resource.
get GET /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Returns the specified ForwardingRule resource.
insert POST /compute/beta/projects/{project}/regions/{region}/forwardingRules
Creates a ForwardingRule resource in the specified project and region using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/forwardingRules
Retrieves a list of ForwardingRule resources available to the specified project and region.
patch PATCH /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Updates the specified forwarding rule with the data included in the request.
setLabels POST /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}/setLabels
Sets the labels on the specified resource.
setTarget POST /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}/setTarget
Changes target URL for forwarding rule.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/forwardingRules/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.globalAddresses

Methods
delete DELETE /compute/beta/projects/{project}/global/addresses/{resourceId}
Deletes the specified address resource.
get GET /compute/beta/projects/{project}/global/addresses/{resourceId}
Returns the specified address resource.
insert POST /compute/beta/projects/{project}/global/addresses
Creates an address resource in the specified project by using the data included in the request.
list GET /compute/beta/projects/{project}/global/addresses
Retrieves a list of global addresses.
setLabels POST /compute/beta/projects/{project}/global/addresses/{resourceId}/setLabels
Sets the labels on a GlobalAddress.
testIamPermissions POST /compute/beta/projects/{project}/global/addresses/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.globalForwardingRules

Methods
delete DELETE /compute/beta/projects/{project}/global/forwardingRules/{resourceId}
Deletes the specified GlobalForwardingRule resource.
get GET /compute/beta/projects/{project}/global/forwardingRules/{resourceId}
Returns the specified GlobalForwardingRule resource.
insert POST /compute/beta/projects/{project}/global/forwardingRules
Creates a GlobalForwardingRule resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/forwardingRules
Retrieves a list of GlobalForwardingRule resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/forwardingRules/{resourceId}
Updates the specified forwarding rule with the data included in the request.
setLabels POST /compute/beta/projects/{project}/global/forwardingRules/{resourceId}/setLabels
Sets the labels on the specified resource.
setTarget POST /compute/beta/projects/{project}/global/forwardingRules/{resourceId}/setTarget
Changes target URL for the GlobalForwardingRule resource.
testIamPermissions POST /compute/beta/projects/{project}/global/forwardingRules/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.globalOperations

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/operations
Retrieves an aggregated list of all operations.
delete DELETE /compute/beta/projects/{project}/global/operations/{resourceId}
Deletes the specified Operations resource.
get GET /compute/beta/projects/{project}/global/operations/{resourceId}
Retrieves the specified Operations resource.
list GET /compute/beta/projects/{project}/global/operations
Retrieves a list of Operation resources contained within the specified project.

REST Resource: beta.healthChecks

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/healthChecks
Retrieves the list of all HealthCheck resources, regional and global, available to the specified project.
delete DELETE /compute/beta/projects/{project}/global/healthChecks/{resourceId}
Deletes the specified HealthCheck resource.
get GET /compute/beta/projects/{project}/global/healthChecks/{resourceId}
Returns the specified HealthCheck resource.
insert POST /compute/beta/projects/{project}/global/healthChecks
Creates a HealthCheck resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/healthChecks
Retrieves the list of HealthCheck resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/healthChecks/{resourceId}
Updates a HealthCheck resource in the specified project using the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/global/healthChecks/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/healthChecks/{resourceId}
Updates a HealthCheck resource in the specified project using the data included in the request.

REST Resource: beta.httpHealthChecks

Methods
delete DELETE /compute/beta/projects/{project}/global/httpHealthChecks/{resourceId}
Deletes the specified HttpHealthCheck resource.
get GET /compute/beta/projects/{project}/global/httpHealthChecks/{resourceId}
Returns the specified HttpHealthCheck resource.
insert POST /compute/beta/projects/{project}/global/httpHealthChecks
Creates a HttpHealthCheck resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/httpHealthChecks
Retrieves the list of HttpHealthCheck resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/httpHealthChecks/{resourceId}
Updates a HttpHealthCheck resource in the specified project using the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/global/httpHealthChecks/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/httpHealthChecks/{resourceId}
Updates a HttpHealthCheck resource in the specified project using the data included in the request.

REST Resource: beta.httpsHealthChecks

Methods
delete DELETE /compute/beta/projects/{project}/global/httpsHealthChecks/{resourceId}
Deletes the specified HttpsHealthCheck resource.
get GET /compute/beta/projects/{project}/global/httpsHealthChecks/{resourceId}
Returns the specified HttpsHealthCheck resource.
insert POST /compute/beta/projects/{project}/global/httpsHealthChecks
Creates a HttpsHealthCheck resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/httpsHealthChecks
Retrieves the list of HttpsHealthCheck resources available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/httpsHealthChecks/{resourceId}
Updates a HttpsHealthCheck resource in the specified project using the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/global/httpsHealthChecks/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/global/httpsHealthChecks/{resourceId}
Updates a HttpsHealthCheck resource in the specified project using the data included in the request.

REST Resource: beta.images

Methods
delete DELETE /compute/beta/projects/{project}/global/images/{resourceId}
Deletes the specified image.
deprecate POST /compute/beta/projects/{project}/global/images/{resourceId}/deprecate
Sets the deprecation status of an image.
get GET /compute/beta/projects/{project}/global/images/{resourceId}
Returns the specified image.
getFromFamily GET /compute/beta/projects/{project}/global/images/family/{resourceId}
Returns the latest image that is part of an image family and is not deprecated.
getIamPolicy GET /compute/beta/projects/{project}/global/images/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/global/images
Creates an image in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/images
Retrieves the list of custom images available to the specified project.
setIamPolicy POST /compute/beta/projects/{project}/global/images/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
setLabels POST /compute/beta/projects/{project}/global/images/{resourceId}/setLabels
Sets the labels on an image.
testIamPermissions POST /compute/beta/projects/{project}/global/images/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.instanceGroupManagers

Methods
abandonInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/abandonInstances
Flags the specified instances to be removed from the managed instance group.
aggregatedList GET /compute/beta/projects/{project}/aggregated/instanceGroupManagers
Retrieves the list of managed instance groups and groups them by zone.
applyUpdatesToInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/applyUpdatesToInstances
Apply changes to selected instances on the managed instance group.
createInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/createInstances
Creates instances with per-instance configs in this managed instance group.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Deletes the specified managed instance group and all of the instances in that group.
deleteInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/deleteInstances
Flags the specified instances in the managed instance group for immediate deletion.
get GET /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Returns all of the details about the specified managed instance group.
insert POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers
Creates a managed instance group using the information that you specify in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers
Retrieves a list of managed instance groups that are contained within the specified project and zone.
listManagedInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/listManagedInstances
Lists all of the instances in the managed instance group.
patch PATCH /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Updates a managed instance group using the information that you specify in the request.
recreateInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/recreateInstances
Flags the specified instances in the managed instance group to be immediately recreated.
resize POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/resize
Resizes the managed instance group.
resizeAdvanced POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/resizeAdvanced
Resizes the managed instance group with advanced configuration options like disabling creation retries.
setAutoHealingPolicies
(deprecated)
POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/setAutoHealingPolicies
Modifies the autohealing policies.
setInstanceTemplate POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/setInstanceTemplate
Specifies the instance template to use when creating new instances in this group.
setTargetPools POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/setTargetPools
Modifies the target pools to which all instances in this managed instance group are assigned.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Updates a managed instance group using the information that you specify in the request.

REST Resource: beta.instanceGroups

Methods
addInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/addInstances
Adds a list of instances to the specified instance group.
aggregatedList GET /compute/beta/projects/{project}/aggregated/instanceGroups
Retrieves the list of instance groups and sorts them by zone.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}
Deletes the specified instance group.
get GET /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}
Returns the specified instance group.
insert POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups
Creates an instance group in the specified project using the parameters that are included in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/instanceGroups
Retrieves the list of instance groups that are located in the specified project and zone.
listInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/listInstances
Lists the instances in the specified instance group.
removeInstances POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/removeInstances
Removes one or more instances from the specified instance group, but does not delete those instances.
setNamedPorts POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/setNamedPorts
Sets the named ports for the specified instance group.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.instanceTemplates

Methods
delete DELETE /compute/beta/projects/{project}/global/instanceTemplates/{resourceId}
Deletes the specified instance template.
get GET /compute/beta/projects/{project}/global/instanceTemplates/{resourceId}
Returns the specified instance template.
getIamPolicy GET /compute/beta/projects/{project}/global/instanceTemplates/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/global/instanceTemplates
Creates an instance template in the specified project using the data that is included in the request.
list GET /compute/beta/projects/{project}/global/instanceTemplates
Retrieves a list of instance templates that are contained within the specified project.
setIamPolicy POST /compute/beta/projects/{project}/global/instanceTemplates/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
testIamPermissions POST /compute/beta/projects/{project}/global/instanceTemplates/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.instances

Methods
addAccessConfig POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/addAccessConfig
Adds an access config to an instance's network interface.
aggregatedList GET /compute/beta/projects/{project}/aggregated/instances
Retrieves aggregated list of all of the instances in your project across all regions and zones.
attachDisk POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/attachDisk
Attaches an existing Disk resource to an instance.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}
Deletes the specified Instance resource.
deleteAccessConfig POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/deleteAccessConfig
Deletes an access config from an instance's network interface.
detachDisk POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/detachDisk
Detaches a disk from an instance.
get GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}
Returns the specified Instance resource.
getGuestAttributes GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/getGuestAttributes
Returns the specified guest attributes entry.
getIamPolicy GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
getSerialPortOutput GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/serialPort
Returns the last 1 MB of serial port output from the specified instance.
getShieldedInstanceIdentity GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/getShieldedInstanceIdentity
Returns the Shielded Instance Identity of an instance
getShieldedVmIdentity GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/getShieldedVmIdentity
Returns the Shielded VM Identity of an instance
insert POST /compute/beta/projects/{project}/zones/{zone}/instances
Creates an instance resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/instances
Retrieves the list of instances contained within the specified zone.
listReferrers GET /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/referrers
Retrieves the list of referrers to instances contained within the specified zone.
reset POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/reset
Performs a reset on the instance.
resume POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/resume

Resumes an instance that was suspended using the instances().suspend method.

setDeletionProtection POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setDeletionProtection
Sets deletion protection on the instance.
setDiskAutoDelete POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setDiskAutoDelete
Sets the auto-delete flag for a disk attached to an instance.
setIamPolicy POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
setLabels POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setLabels
Sets labels on an instance.
setMachineResources POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setMachineResources
Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.
setMachineType POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setMachineType
Changes the machine type for a stopped instance to the machine type specified in the request.
setMetadata POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setMetadata
Sets metadata for the specified instance to the data included in the request.
setMinCpuPlatform POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setMinCpuPlatform
Changes the minimum CPU platform that this instance should use.
setScheduling POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setScheduling
Sets an instance's scheduling options.
setServiceAccount POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setServiceAccount
Sets the service account on the instance.
setShieldedInstanceIntegrityPolicy PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setShieldedInstanceIntegrityPolicy
Sets the Shielded Instance integrity policy for an instance.
setShieldedVmIntegrityPolicy PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setShieldedVmIntegrityPolicy
Sets the Shielded VM integrity policy for a VM instance.
setTags POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/setTags
Sets network tags for the specified instance to the data included in the request.
simulateMaintenanceEvent POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/simulateMaintenanceEvent
Simulates a maintenance event on the instance.
start POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/start

Starts an instance that was stopped using the instances().stop method.

startWithEncryptionKey POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/startWithEncryptionKey

Starts an instance that was stopped using the instances().stop method.

stop POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/stop
Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time.
suspend POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/suspend
This method suspends a running instance, saving its state to persistent storage, and allows you to resume the instance at a later time.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
updateAccessConfig POST /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/updateAccessConfig
Updates the specified access config from an instance's network interface with the data included in the request.
updateDisplayDevice PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/updateDisplayDevice
Updates the Display config for a VM instance.
updateNetworkInterface PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/updateNetworkInterface
Updates an instance's network interface.
updateShieldedInstanceConfig PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/updateShieldedInstanceConfig
Updates the Shielded Instance config for an instance.
updateShieldedVmConfig PATCH /compute/beta/projects/{project}/zones/{zone}/instances/{resourceId}/updateShieldedVmConfig
Updates the Shielded VM config for a VM instance.

REST Resource: beta.interconnectAttachments

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/interconnectAttachments
Retrieves an aggregated list of interconnect attachments.
delete DELETE /compute/beta/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Deletes the specified interconnect attachment.
get GET /compute/beta/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Returns the specified interconnect attachment.
insert POST /compute/beta/projects/{project}/regions/{region}/interconnectAttachments
Creates an InterconnectAttachment in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/interconnectAttachments
Retrieves the list of interconnect attachments contained within the specified region.
patch PATCH /compute/beta/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Updates the specified interconnect attachment with the data included in the request.
setLabels POST /compute/beta/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}/setLabels
Sets the labels on an InterconnectAttachment.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.interconnectLocations

Methods
get GET /compute/beta/projects/{project}/global/interconnectLocations/{resourceId}
Returns the details for the specified interconnect location.
list GET /compute/beta/projects/{project}/global/interconnectLocations
Retrieves the list of interconnect locations available to the specified project.

REST Resource: beta.interconnects

Methods
delete DELETE /compute/beta/projects/{project}/global/interconnects/{resourceId}
Deletes the specified interconnect.
get GET /compute/beta/projects/{project}/global/interconnects/{resourceId}
Returns the specified interconnect.
getDiagnostics GET /compute/beta/projects/{project}/global/interconnects/{resourceId}/getDiagnostics
Returns the interconnectDiagnostics for the specified interconnect.
insert POST /compute/beta/projects/{project}/global/interconnects
Creates a Interconnect in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/interconnects
Retrieves the list of interconnect available to the specified project.
patch PATCH /compute/beta/projects/{project}/global/interconnects/{resourceId}
Updates the specified interconnect with the data included in the request.
setLabels POST /compute/beta/projects/{project}/global/interconnects/{resourceId}/setLabels
Sets the labels on an Interconnect.
testIamPermissions POST /compute/beta/projects/{project}/global/interconnects/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.licenseCodes

Methods
get GET /compute/beta/projects/{project}/global/licenseCodes/{resourceId}
Return a specified license code.
testIamPermissions POST /compute/beta/projects/{project}/global/licenseCodes/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.licenses

Methods
delete DELETE /compute/beta/projects/{project}/global/licenses/{resourceId}
Deletes the specified license.
get GET /compute/beta/projects/{project}/global/licenses/{resourceId}
Returns the specified License resource.
getIamPolicy GET /compute/beta/projects/{project}/global/licenses/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/global/licenses
Create a License resource in the specified project.
list GET /compute/beta/projects/{project}/global/licenses
Retrieves the list of licenses available in the specified project.
setIamPolicy POST /compute/beta/projects/{project}/global/licenses/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
testIamPermissions POST /compute/beta/projects/{project}/global/licenses/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.machineTypes

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/machineTypes
Retrieves an aggregated list of machine types.
get GET /compute/beta/projects/{project}/zones/{zone}/machineTypes/{resourceId}
Returns the specified machine type.
list GET /compute/beta/projects/{project}/zones/{zone}/machineTypes
Retrieves a list of machine types available to the specified project.

REST Resource: beta.networkEndpointGroups

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/networkEndpointGroups
Retrieves the list of network endpoint groups and sorts them by zone.
attachNetworkEndpoints POST /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/attachNetworkEndpoints
Attach a list of network endpoints to the specified network endpoint group.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}
Deletes the specified network endpoint group.
detachNetworkEndpoints POST /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/detachNetworkEndpoints
Detach a list of network endpoints from the specified network endpoint group.
get GET /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}
Returns the specified network endpoint group.
insert POST /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups
Creates a network endpoint group in the specified project using the parameters that are included in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups
Retrieves the list of network endpoint groups that are located in the specified project and zone.
listNetworkEndpoints POST /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/listNetworkEndpoints
Lists the network endpoints in the specified network endpoint group.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.networks

Methods
addPeering POST /compute/beta/projects/{project}/global/networks/{resourceId}/addPeering
Adds a peering to the specified network.
delete DELETE /compute/beta/projects/{project}/global/networks/{resourceId}
Deletes the specified network.
get GET /compute/beta/projects/{project}/global/networks/{resourceId}
Returns the specified network.
insert POST /compute/beta/projects/{project}/global/networks
Creates a network in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/global/networks
Retrieves the list of networks available to the specified project.
listPeeringRoutes GET /compute/beta/projects/{project}/global/networks/{resourceId}/listPeeringRoutes
Lists the peering routes exchanged over peering connection.
patch PATCH /compute/beta/projects/{project}/global/networks/{resourceId}
Patches the specified network with the data included in the request.
removePeering POST /compute/beta/projects/{project}/global/networks/{resourceId}/removePeering
Removes a peering from the specified network.
switchToCustomMode POST /compute/beta/projects/{project}/global/networks/{resourceId}/switchToCustomMode
Switches the network mode from auto subnet mode to custom subnet mode.
testIamPermissions POST /compute/beta/projects/{project}/global/networks/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
updatePeering PATCH /compute/beta/projects/{project}/global/networks/{resourceId}/updatePeering
Updates the specified network peering with the data included in the request Only the following fields can be modified: NetworkPeering.export_custom_routes, and NetworkPeering.import_custom_routes

REST Resource: beta.nodeGroups

Methods
addNodes POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/addNodes
Adds specified number of nodes to the node group.
aggregatedList GET /compute/beta/projects/{project}/aggregated/nodeGroups
Retrieves an aggregated list of node groups.
delete DELETE /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}
Deletes the specified NodeGroup resource.
deleteNodes POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/deleteNodes
Deletes specified nodes from the node group.
get GET /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}
Returns the specified NodeGroup.
getIamPolicy GET /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups
Creates a NodeGroup resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/zones/{zone}/nodeGroups
Retrieves a list of node groups available to the specified project.
listNodes POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/listNodes
Lists nodes in the node group.
setIamPolicy POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
setNodeTemplate POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/setNodeTemplate
Updates the node template of the node group.
testIamPermissions POST /compute/beta/projects/{project}/zones/{zone}/nodeGroups/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.nodeTemplates

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/nodeTemplates
Retrieves an aggregated list of node templates.
delete DELETE /compute/beta/projects/{project}/regions/{region}/nodeTemplates/{resourceId}
Deletes the specified NodeTemplate resource.
get GET /compute/beta/projects/{project}/regions/{region}/nodeTemplates/{resourceId}
Returns the specified node template.
getIamPolicy GET /compute/beta/projects/{project}/regions/{region}/nodeTemplates/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
insert POST /compute/beta/projects/{project}/regions/{region}/nodeTemplates
Creates a NodeTemplate resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/nodeTemplates
Retrieves a list of node templates available to the specified project.
setIamPolicy POST /compute/beta/projects/{project}/regions/{region}/nodeTemplates/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/nodeTemplates/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.nodeTypes

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/nodeTypes
Retrieves an aggregated list of node types.
get GET /compute/beta/projects/{project}/zones/{zone}/nodeTypes/{resourceId}
Returns the specified node type.
list GET /compute/beta/projects/{project}/zones/{zone}/nodeTypes
Retrieves a list of node types available to the specified project.

REST Resource: beta.packetMirrorings

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/packetMirrorings
Retrieves an aggregated list of packetMirrorings.
delete DELETE /compute/beta/projects/{project}/regions/{region}/packetMirrorings/{resourceId}
Deletes the specified PacketMirroring resource.
get GET /compute/beta/projects/{project}/regions/{region}/packetMirrorings/{resourceId}
Returns the specified PacketMirroring resource.
insert POST /compute/beta/projects/{project}/regions/{region}/packetMirrorings
Creates a PacketMirroring resource in the specified project and region using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/packetMirrorings
Retrieves a list of PacketMirroring resources available to the specified project and region.
patch PATCH /compute/beta/projects/{project}/regions/{region}/packetMirrorings/{resourceId}
Patches the specified PacketMirroring resource with the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/packetMirrorings/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: beta.projects

Methods
disableXpnHost POST /compute/beta/projects/{project}/disableXpnHost
Disable this project as a shared VPC host project.
disableXpnResource POST /compute/beta/projects/{project}/disableXpnResource
Disable a service resource (also known as service project) associated with this host project.
enableXpnHost POST /compute/beta/projects/{project}/enableXpnHost
Enable this project as a shared VPC host project.
enableXpnResource POST /compute/beta/projects/{project}/enableXpnResource
Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.
get GET /compute/beta/projects/{project}
Returns the specified Project resource.
getXpnHost GET /compute/beta/projects/{project}/getXpnHost
Gets the shared VPC host project that this project links to.
getXpnResources GET /compute/beta/projects/{project}/getXpnResources
Gets service resources (a.k.a service project) associated with this host project.
listXpnHosts POST /compute/beta/projects/{project}/listXpnHosts
Lists all shared VPC host projects visible to the user in an organization.
moveDisk POST /compute/beta/projects/{project}/moveDisk
Moves a persistent disk from one zone to another.
moveInstance POST /compute/beta/projects/{project}/moveInstance
Moves an instance and its attached persistent disks from one zone to another.
setCommonInstanceMetadata POST /compute/beta/projects/{project}/setCommonInstanceMetadata
Sets metadata common to all instances within the specified project using the data included in the request.
setDefaultNetworkTier POST /compute/beta/projects/{project}/setDefaultNetworkTier
Sets the default network tier of the project.
setUsageExportBucket POST /compute/beta/projects/{project}/setUsageExportBucket
Enables the usage export feature and sets the usage export bucket where reports are stored.

REST Resource: beta.regionAutoscalers

Methods
delete DELETE /compute/beta/projects/{project}/regions/{region}/autoscalers/{resourceId}
Deletes the specified autoscaler.
get GET /compute/beta/projects/{project}/regions/{region}/autoscalers/{resourceId}
Returns the specified autoscaler.
insert POST /compute/beta/projects/{project}/regions/{region}/autoscalers
Creates an autoscaler in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/autoscalers
Retrieves a list of autoscalers contained within the specified region.
patch PATCH /compute/beta/projects/{project}/regions/{region}/autoscalers
Updates an autoscaler in the specified project using the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/autoscalers/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/regions/{region}/autoscalers
Updates an autoscaler in the specified project using the data included in the request.

REST Resource: beta.regionBackendServices

Methods
delete DELETE /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}
Deletes the specified regional BackendService resource.
get GET /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}
Returns the specified regional BackendService resource.
getHealth POST /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}/getHealth
Gets the most recent health check results for this regional BackendService.
insert POST /compute/beta/projects/{project}/regions/{region}/backendServices
Creates a regional BackendService resource in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/backendServices
Retrieves the list of regional BackendService resources available to the specified project in the given region.
patch PATCH /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}
Updates the specified regional BackendService resource with the data included in the request.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/beta/projects/{project}/regions/{region}/backendServices/{resourceId}
Updates the specified regional BackendService resource with the data included in the request.

REST Resource: beta.regionCommitments

Methods
aggregatedList GET /compute/beta/projects/{project}/aggregated/commitments
Retrieves an aggregated list of commitments.
get GET /compute/beta/projects/{project}/regions/{region}/commitments/{resourceId}
Returns the specified commitment resource.
insert POST /compute/beta/projects/{project}/regions/{region}/commitments
Creates a commitment in the specified project using the data included in the request.
list GET /compute/beta/projects/{project}/regions/{region}/commitments
Retrieves a list of commitments contained within the specified region.
testIamPermissions POST /compute/beta/projects/{project}/regions/{region}/commitments/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
updateReservations POST /compute/beta/projects/{project}/regions/{region}/commitments/{resourceId}/updateReservations
Update the shape of reservations for GPUS/Local SSDs of reservations within the commitments.

REST Resource: beta.regionDiskTypes

Methods
get GET /compute/beta/projects/{project}/regions/{region}/diskTypes/{resourceId}
Returns the specified regional disk type.
list GET /compute/beta/projects/{project}/regions/{region}/diskTypes
Retrieves a list of regional disk types available to the specified project.

REST Resource: beta.regionDisks

Methods
addResourcePolicies POST /compute/beta/projects/{project}/regions/{region}/disks/{resourceId}/addResourcePolicies
Adds existing resource policies to a regional disk.
createSnapshot POST /compute/beta/projects/{project}/regions/{region}/disks/{resourceId}/createSnapshot
Creates a snapshot of this regional disk.
delete DELETE /compute/beta/projects/{project}/regions/{region}/disks/{resourceId}
Deletes the specified regional persistent disk.
get GET /compute/beta/projects/{project}/regions/{region}/disks/{resourceId}