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: v1.acceleratorTypes

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

REST Resource: v1.addresses

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/addresses
Retrieves an aggregated list of addresses.
delete DELETE /compute/v1/projects/{project}/regions/{region}/addresses/{resourceId}
Deletes the specified address resource.
get GET /compute/v1/projects/{project}/regions/{region}/addresses/{resourceId}
Returns the specified address resource.
insert POST /compute/v1/projects/{project}/regions/{region}/addresses
Creates an address resource in the specified project by using the data included in the request.
list GET /compute/v1/projects/{project}/regions/{region}/addresses
Retrieves a list of addresses contained within the specified region.

REST Resource: v1.autoscalers

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

REST Resource: v1.backendBuckets

Methods
addSignedUrlKey POST /compute/v1/projects/{project}/global/backendBuckets/{resourceId}/addSignedUrlKey
Adds a key for validating requests with signed URLs for this backend bucket.
delete DELETE /compute/v1/projects/{project}/global/backendBuckets/{resourceId}
Deletes the specified BackendBucket resource.
deleteSignedUrlKey POST /compute/v1/projects/{project}/global/backendBuckets/{resourceId}/deleteSignedUrlKey
Deletes a key for validating requests with signed URLs for this backend bucket.
get GET /compute/v1/projects/{project}/global/backendBuckets/{resourceId}
Returns the specified BackendBucket resource.
insert POST /compute/v1/projects/{project}/global/backendBuckets
Creates a BackendBucket resource in the specified project using the data included in the request.
list GET /compute/v1/projects/{project}/global/backendBuckets
Retrieves the list of BackendBucket resources available to the specified project.
patch PATCH /compute/v1/projects/{project}/global/backendBuckets/{resourceId}
Updates the specified BackendBucket resource with the data included in the request.
update PUT /compute/v1/projects/{project}/global/backendBuckets/{resourceId}
Updates the specified BackendBucket resource with the data included in the request.

REST Resource: v1.backendServices

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

REST Resource: v1.diskTypes

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

REST Resource: v1.disks

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

REST Resource: v1.externalVpnGateways

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

REST Resource: v1.firewalls

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

REST Resource: v1.forwardingRules

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/forwardingRules
Retrieves an aggregated list of forwarding rules.
delete DELETE /compute/v1/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Deletes the specified ForwardingRule resource.
get GET /compute/v1/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Returns the specified ForwardingRule resource.
insert POST /compute/v1/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/v1/projects/{project}/regions/{region}/forwardingRules
Retrieves a list of ForwardingRule resources available to the specified project and region.
patch PATCH /compute/v1/projects/{project}/regions/{region}/forwardingRules/{resourceId}
Updates the specified forwarding rule with the data included in the request.
setTarget POST /compute/v1/projects/{project}/regions/{region}/forwardingRules/{resourceId}/setTarget
Changes target URL for forwarding rule.

REST Resource: v1.globalAddresses

Methods
delete DELETE /compute/v1/projects/{project}/global/addresses/{resourceId}
Deletes the specified address resource.
get GET /compute/v1/projects/{project}/global/addresses/{resourceId}
Returns the specified address resource.
insert POST /compute/v1/projects/{project}/global/addresses
Creates an address resource in the specified project by using the data included in the request.
list GET /compute/v1/projects/{project}/global/addresses
Retrieves a list of global addresses.

REST Resource: v1.globalForwardingRules

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

REST Resource: v1.globalNetworkEndpointGroups

Methods
attachNetworkEndpoints POST /compute/v1/projects/{project}/global/networkEndpointGroups/{resourceId}/attachNetworkEndpoints
Attach a network endpoint to the specified network endpoint group.
delete DELETE /compute/v1/projects/{project}/global/networkEndpointGroups/{resourceId}
Deletes the specified network endpoint group.Note that the NEG cannot be deleted if there are backend services referencing it.
detachNetworkEndpoints POST /compute/v1/projects/{project}/global/networkEndpointGroups/{resourceId}/detachNetworkEndpoints
Detach the network endpoint from the specified network endpoint group.
get GET /compute/v1/projects/{project}/global/networkEndpointGroups/{resourceId}
Returns the specified network endpoint group.
insert POST /compute/v1/projects/{project}/global/networkEndpointGroups
Creates a network endpoint group in the specified project using the parameters that are included in the request.
list GET /compute/v1/projects/{project}/global/networkEndpointGroups
Retrieves the list of network endpoint groups that are located in the specified project.
listNetworkEndpoints POST /compute/v1/projects/{project}/global/networkEndpointGroups/{resourceId}/listNetworkEndpoints
Lists the network endpoints in the specified network endpoint group.

REST Resource: v1.globalOperations

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/operations
Retrieves an aggregated list of all operations.
delete DELETE /compute/v1/projects/{project}/global/operations/{resourceId}
Deletes the specified Operations resource.
get GET /compute/v1/projects/{project}/global/operations/{resourceId}
Retrieves the specified Operations resource.
list GET /compute/v1/projects/{project}/global/operations
Retrieves a list of Operation resources contained within the specified project.
wait POST /compute/v1/projects/{project}/global/operations/{resourceId}/wait
Waits for the specified Operation resource to return as DONE or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource.

REST Resource: v1.healthChecks

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

REST Resource: v1.httpHealthChecks

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

REST Resource: v1.httpsHealthChecks

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

REST Resource: v1.images

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

REST Resource: v1.instanceGroupManagers

Methods
abandonInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/abandonInstances
Flags the specified instances to be removed from the managed instance group.
aggregatedList GET /compute/v1/projects/{project}/aggregated/instanceGroupManagers
Retrieves the list of managed instance groups and groups them by zone.
applyUpdatesToInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/applyUpdatesToInstances
Applies changes to selected instances on the managed instance group.
createInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/createInstances
Creates instances with per-instance configs in this managed instance group.
delete DELETE /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Deletes the specified managed instance group and all of the instances in that group.
deleteInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/deleteInstances
Flags the specified instances in the managed instance group for immediate deletion.
deletePerInstanceConfigs POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/deletePerInstanceConfigs
Deletes selected per-instance configs for the managed instance group.
get GET /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Returns all of the details about the specified managed instance group.
insert POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers
Creates a managed instance group using the information that you specify in the request.
list GET /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers
Retrieves a list of managed instance groups that are contained within the specified project and zone.
listErrors GET /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/listErrors
Lists all errors thrown by actions on instances for a given managed instance group.
listManagedInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/listManagedInstances
Lists all of the instances in the managed instance group.
listPerInstanceConfigs POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/listPerInstanceConfigs
Lists all of the per-instance configs defined for the managed instance group.
patch PATCH /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}
Updates a managed instance group using the information that you specify in the request.
patchPerInstanceConfigs POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/patchPerInstanceConfigs
Inserts or patches per-instance configs for the managed instance group.
recreateInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/recreateInstances
Flags the specified instances in the managed instance group to be immediately recreated.
resize POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/resize
Resizes the managed instance group.
setInstanceTemplate POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/setInstanceTemplate
Specifies the instance template to use when creating new instances in this group.
setTargetPools POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/setTargetPools
Modifies the target pools to which all instances in this managed instance group are assigned.
updatePerInstanceConfigs POST /compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/updatePerInstanceConfigs
Inserts or updates per-instance configs for the managed instance group.

REST Resource: v1.instanceGroups

Methods
addInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/addInstances
Adds a list of instances to the specified instance group.
aggregatedList GET /compute/v1/projects/{project}/aggregated/instanceGroups
Retrieves the list of instance groups and sorts them by zone.
delete DELETE /compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resourceId}
Deletes the specified instance group.
get GET /compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resourceId}
Returns the specified zonal instance group.
insert POST /compute/v1/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/v1/projects/{project}/zones/{zone}/instanceGroups
Retrieves the list of zonal instance group resources contained within the specified zone.
listInstances POST /compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/listInstances
Lists the instances in the specified instance group.
removeInstances POST /compute/v1/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/v1/projects/{project}/zones/{zone}/instanceGroups/{resourceId}/setNamedPorts
Sets the named ports for the specified instance group.

REST Resource: v1.instanceTemplates

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

REST Resource: v1.instances

Methods
addAccessConfig POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/addAccessConfig
Adds an access config to an instance's network interface.
addResourcePolicies POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/addResourcePolicies
Adds existing resource policies to an instance.
aggregatedList GET /compute/v1/projects/{project}/aggregated/instances
Retrieves aggregated list of all of the instances in your project across all regions and zones.
attachDisk POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/attachDisk
Attaches an existing Disk resource to an instance.
delete DELETE /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}
Deletes the specified Instance resource.
deleteAccessConfig POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/deleteAccessConfig
Deletes an access config from an instance's network interface.
detachDisk POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/detachDisk
Detaches a disk from an instance.
get GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}
Returns the specified Instance resource.
getGuestAttributes GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/getGuestAttributes
Returns the specified guest attributes entry.
getIamPolicy GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/getIamPolicy
Gets the access control policy for a resource.
getScreenshot GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/screenshot
Returns the screenshot from the specified instance.
getSerialPortOutput GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/serialPort
Returns the last 1 MB of serial port output from the specified instance.
getShieldedInstanceIdentity GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/getShieldedInstanceIdentity
Returns the Shielded Instance Identity of an instance
insert POST /compute/v1/projects/{project}/zones/{zone}/instances
Creates an instance resource in the specified project using the data included in the request.
list GET /compute/v1/projects/{project}/zones/{zone}/instances
Retrieves the list of instances contained within the specified zone.
listReferrers GET /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/referrers
Retrieves a list of resources that refer to the VM instance specified in the request.
removeResourcePolicies POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/removeResourcePolicies
Removes resource policies from an instance.
reset POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/reset
Performs a reset on the instance.
setDeletionProtection POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setDeletionProtection
Sets deletion protection on the instance.
setDiskAutoDelete POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setDiskAutoDelete
Sets the auto-delete flag for a disk attached to an instance.
setIamPolicy POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setIamPolicy
Sets the access control policy on the specified resource.
setLabels POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setLabels
Sets labels on an instance.
setMachineResources POST /compute/v1/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/v1/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/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setMetadata
Sets metadata for the specified instance to the data included in the request.
setMinCpuPlatform POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setMinCpuPlatform
Changes the minimum CPU platform that this instance should use.
setScheduling POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setScheduling
Sets an instance's scheduling options.
setServiceAccount POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setServiceAccount
Sets the service account on the instance.
setShieldedInstanceIntegrityPolicy PATCH /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setShieldedInstanceIntegrityPolicy
Sets the Shielded Instance integrity policy for an instance.
setTags POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/setTags
Sets network tags for the specified instance to the data included in the request.
simulateMaintenanceEvent POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/simulateMaintenanceEvent
Simulates a maintenance event on the instance.
start POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/start

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

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

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

stop POST /compute/v1/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.
testIamPermissions POST /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.
update PUT /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}
Updates an instance only if the necessary resources are available.
updateAccessConfig POST /compute/v1/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/v1/projects/{project}/zones/{zone}/instances/{resourceId}/updateDisplayDevice
Updates the Display config for a VM instance.
updateNetworkInterface PATCH /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/updateNetworkInterface
Updates an instance's network interface.
updateShieldedInstanceConfig PATCH /compute/v1/projects/{project}/zones/{zone}/instances/{resourceId}/updateShieldedInstanceConfig
Updates the Shielded Instance config for an instance.

REST Resource: v1.interconnectAttachments

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/interconnectAttachments
Retrieves an aggregated list of interconnect attachments.
delete DELETE /compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Deletes the specified interconnect attachment.
get GET /compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Returns the specified interconnect attachment.
insert POST /compute/v1/projects/{project}/regions/{region}/interconnectAttachments
Creates an InterconnectAttachment in the specified project using the data included in the request.
list GET /compute/v1/projects/{project}/regions/{region}/interconnectAttachments
Retrieves the list of interconnect attachments contained within the specified region.
patch PATCH /compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resourceId}
Updates the specified interconnect attachment with the data included in the request.

REST Resource: v1.interconnectLocations

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

REST Resource: v1.interconnects

Methods
delete DELETE /compute/v1/projects/{project}/global/interconnects/{resourceId}
Deletes the specified interconnect.
get GET /compute/v1/projects/{project}/global/interconnects/{resourceId}
Returns the specified interconnect.
getDiagnostics GET /compute/v1/projects/{project}/global/interconnects/{resourceId}/getDiagnostics
Returns the interconnectDiagnostics for the specified interconnect.
insert POST /compute/v1/projects/{project}/global/interconnects
Creates a Interconnect in the specified project using the data included in the request.
list GET /compute/v1/projects/{project}/global/interconnects
Retrieves the list of interconnect available to the specified project.
patch PATCH /compute/v1/projects/{project}/global/interconnects/{resourceId}
Updates the specified interconnect with the data included in the request.

REST Resource: v1.licenseCodes

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

REST Resource: v1.licenses

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

REST Resource: v1.machineTypes

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

REST Resource: v1.networkEndpointGroups

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/networkEndpointGroups
Retrieves the list of network endpoint groups and sorts them by zone.
attachNetworkEndpoints POST /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/attachNetworkEndpoints
Attach a list of network endpoints to the specified network endpoint group.
delete DELETE /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}
Deletes the specified network endpoint group.
detachNetworkEndpoints POST /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/detachNetworkEndpoints
Detach a list of network endpoints from the specified network endpoint group.
get GET /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}
Returns the specified network endpoint group.
insert POST /compute/v1/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/v1/projects/{project}/zones/{zone}/networkEndpointGroups
Retrieves the list of network endpoint groups that are located in the specified project and zone.
listNetworkEndpoints POST /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/listNetworkEndpoints
Lists the network endpoints in the specified network endpoint group.
testIamPermissions POST /compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resourceId}/testIamPermissions
Returns permissions that a caller has on the specified resource.

REST Resource: v1.networks

Methods
addPeering POST /compute/v1/projects/{project}/global/networks/{resourceId}/addPeering
Adds a peering to the specified network.
delete DELETE /compute/v1/projects/{project}/global/networks/{resourceId}
Deletes the specified network.
get GET /compute/v1/projects/{project}/global/networks/{resourceId}
Returns the specified network.
insert POST /compute/v1/projects/{project}/global/networks
Creates a network in the specified project using the data included in the request.
list GET /compute/v1/projects/{project}/global/networks
Retrieves the list of networks available to the specified project.
listPeeringRoutes GET /compute/v1/projects/{project}/global/networks/{resourceId}/listPeeringRoutes
Lists the peering routes exchanged over peering connection.
patch PATCH /compute/v1/projects/{project}/global/networks/{resourceId}
Patches the specified network with the data included in the request.
removePeering POST /compute/v1/projects/{project}/global/networks/{resourceId}/removePeering
Removes a peering from the specified network.
switchToCustomMode POST /compute/v1/projects/{project}/global/networks/{resourceId}/switchToCustomMode
Switches the network mode from auto subnet mode to custom subnet mode.
updatePeering PATCH /compute/v1/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: v1.nodeGroups

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

REST Resource: v1.nodeTemplates

Methods
aggregatedList GET /compute/v1/projects/{project}/aggregated/nodeTemplates
Retrieves an aggregated list of node templates.
delete DELETE /compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resourceId}
Deletes the specified NodeTemplate resource.
get GET /compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resourceId}
Returns the specified node template.
getIamPolicy