Hide
Compute Engine

API Reference

This API reference is organized by resource type. Each resource type has one or more data representations and one or more methods.

Resource types

  1. Addresses
  2. BackendServices
  3. Disks
  4. Firewalls
  5. ForwardingRules
  6. GlobalAddresses
  7. GlobalForwardingRules
  8. GlobalOperations
  9. HttpHealthChecks
  10. Images
  11. Instances
  12. MachineTypes
  13. Networks
  14. Projects
  15. RegionOperations
  16. Regions
  17. Routes
  18. Snapshots
  19. TargetHttpProxies
  20. TargetInstances
  21. TargetPools
  22. UrlMaps
  23. ZoneOperations
  24. Zones
  25. DiskTypes
  26. HttpsHealthChecks
  27. InstanceTemplates
  28. Licenses
  29. SslCertificates
  30. TargetHttpsProxies
  31. TargetVpnGateways
  32. VpnTunnels

Addresses

For Addresses Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/addresses Retrieves the list of addresses grouped by scope.
delete DELETE  /project/regions/region/addresses/address Deletes the specified address resource.
get GET  /project/regions/region/addresses/address Returns the specified address resource.
insert POST  /project/regions/region/addresses Creates an address resource in the specified project using the data included in the request.
list GET  /project/regions/region/addresses Retrieves the list of address resources contained within the specified region.

BackendServices

For BackendServices Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/backendServices/backendService Deletes the specified BackendService resource.
get GET  /project/global/backendServices/backendService Returns the specified BackendService resource.
getHealth POST  /project/global/backendServices/backendService/getHealth Gets the most recent health check results for this Backend Service.
insert POST  /project/global/backendServices Creates a BackendService resource in the specified project using the data included in the request.
list GET  /project/global/backendServices Retrieves the list of BackendService resources available to the specified project.
patch PATCH  /project/global/backendServices/backendService Update the entire content of the Backend Service resource. This method supports patch semantics.
update PUT  /project/global/backendServices/backendService Update the entire content of the Backend Service resource.

Disks

For Disks Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/disks Retrieves the list of disks grouped by scope.
createSnapshot POST  /project/zones/zone/disks/disk/createSnapshot Creates a snapshot of this disk.
delete DELETE  /project/zones/zone/disks/disk Deletes the specified persistent disk.
get GET  /project/zones/zone/disks/disk Returns a specified persistent disk.
insert POST  /project/zones/zone/disks Creates a persistent disk in the specified project using the data included in the request.
list GET  /project/zones/zone/disks Retrieves the list of persistent disks contained within the specified zone.

Firewalls

For Firewalls Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/firewalls/firewall Deletes the specified firewall resource.
get GET  /project/global/firewalls/firewall Returns the specified firewall resource.
insert POST  /project/global/firewalls Creates a firewall resource in the specified project using the data included in the request.
list GET  /project/global/firewalls Retrieves the list of firewall resources available to the specified project.
patch PATCH  /project/global/firewalls/firewall Updates the specified firewall resource with the data included in the request. This method supports patch semantics.
update PUT  /project/global/firewalls/firewall Updates the specified firewall resource with the data included in the request.

ForwardingRules

For ForwardingRules Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/forwardingRules Retrieves the list of forwarding rules grouped by scope.
delete DELETE  /project/regions/region/forwardingRules/forwardingRule Deletes the specified ForwardingRule resource.
get GET  /project/regions/region/forwardingRules/forwardingRule Returns the specified ForwardingRule resource.
insert POST  /project/regions/region/forwardingRules Creates a ForwardingRule resource in the specified project and region using the data included in the request.
list GET  /project/regions/region/forwardingRules Retrieves the list of ForwardingRule resources available to the specified project and region.
setTarget POST  /project/regions/region/forwardingRules/forwardingRule/setTarget Changes the target URL for the forwarding rule.

GlobalAddresses

For GlobalAddresses Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/addresses/address Deletes the specified address resource.
get GET  /project/global/addresses/address Returns the specified address resource.
insert POST  /project/global/addresses Creates an address resource in the specified project using the data included in the request.
list GET  /project/global/addresses Retrieves the list of global address resources.

GlobalForwardingRules

For GlobalForwardingRules Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/forwardingRules/forwardingRule Deletes the specified GlobalForwardingRule resource.
get GET  /project/global/forwardingRules/forwardingRule Returns the specified GlobalForwardingRule resource.
insert POST  /project/global/forwardingRules Creates a GlobalForwardingRule resource in the specified project and region using the data included in the request.
list GET  /project/global/forwardingRules Retrieves the list of GlobalForwardingRule resources that are available to the specified project.
setTarget POST  /project/global/forwardingRules/forwardingRule/setTarget Changes target url for forwarding rule.

GlobalOperations

For GlobalOperations Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/operations Retrieves the list of all operations grouped by scope.
delete DELETE  /project/global/operations/operation Deletes the specified operation resource.
get GET  /project/global/operations/operation Retrieves the specified operation resource.
list GET  /project/global/operations Retrieves the list of operation resources contained within the specified project.

HttpHealthChecks

For HttpHealthChecks Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/httpHealthChecks/httpHealthCheck Deletes the specified HttpHealthCheck resource.
get GET  /project/global/httpHealthChecks/httpHealthCheck Returns the specified HttpHealthCheck resource.
insert POST  /project/global/httpHealthChecks Creates a HttpHealthCheck resource in the specified project using the data included in the request.
list GET  /project/global/httpHealthChecks Retrieves the list of HttpHealthCheck resources available to the specified project.
patch PATCH  /project/global/httpHealthChecks/httpHealthCheck Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.
update PUT  /project/global/httpHealthChecks/httpHealthCheck Updates a HttpHealthCheck resource in the specified project using the data included in the request.

Images

For Images Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/images/image Deletes the specified image resource.
deprecate POST  /project/global/images/image/deprecate Sets the deprecation status of an image.

If an empty request body is given, clears the deprecation status instead.
get GET  /project/global/images/image Returns the specified image resource.
insert POST  /project/global/images Creates an image resource in the specified project using the data included in the request.
list GET  /project/global/images Retrieves the list of image resources available to the specified project.

Instances

For Instances Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
addAccessConfig POST  /project/zones/zone/instances/instance/addAccessConfig Adds an access config to an instance's network interface.

Required query parameters: networkInterface

aggregatedList GET  /project/aggregated/instances Retrieves the list of Instance resources across all available zones.
attachDisk POST  /project/zones/zone/instances/instance/attachDisk Attaches a Disk resource to an instance.
delete DELETE  /project/zones/zone/instances/instance Deletes the specified Instance resource. For more information, see Shutting down an instance.
deleteAccessConfig POST  /project/zones/zone/instances/instance/deleteAccessConfig Deletes an access config from an instance's network interface.

Required query parameters: accessConfig, networkInterface

detachDisk POST  /project/zones/zone/instances/instance/detachDisk Detaches a disk from an instance.

Required query parameters: deviceName

get GET  /project/zones/zone/instances/instance Returns the specified instance resource.
getSerialPortOutput GET  /project/zones/zone/instances/instance/serialPort Returns the specified instance's serial port output.
insert POST  /project/zones/zone/instances Creates an instance resource in the specified project using the data included in the request.
list GET  /project/zones/zone/instances Retrieves the list of instance resources contained within the specified zone.
reset POST  /project/zones/zone/instances/instance/reset Performs a hard reset on the instance.
setDiskAutoDelete POST  /project/zones/zone/instances/instance/setDiskAutoDelete Sets the auto-delete flag for a disk attached to an instance.

Required query parameters: autoDelete, deviceName

setMetadata POST  /project/zones/zone/instances/instance/setMetadata Sets metadata for the specified instance to the data included in the request.
setScheduling POST  /project/zones/zone/instances/instance/setScheduling Sets an instance's scheduling options.
setTags POST  /project/zones/zone/instances/instance/setTags Sets tags for the specified instance to the data included in the request.
start POST  /project/zones/zone/instances/instance/start This method starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.
stop POST  /project/zones/zone/instances/instance/stop This method stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur per-minute, virtual machine usage charges while they are stopped, but any resources that the virtual machine is using, such as persistent disks and static IP addresses,will continue to be charged until they are deleted. For more information, see Stopping an instance.

MachineTypes

For MachineTypes Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/machineTypes Retrieves the list of machine type resources grouped by scope.
get GET  /project/zones/zone/machineTypes/machineType Returns the specified machine type resource.
list GET  /project/zones/zone/machineTypes Retrieves the list of machine type resources available to the specified project.

Networks

For Networks Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/networks/network Deletes the specified network resource.
get GET  /project/global/networks/network Returns the specified network resource.
insert POST  /project/global/networks Creates a network resource in the specified project using the data included in the request.
list GET  /project/global/networks Retrieves the list of network resources available to the specified project.

Projects

For Projects Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
get GET  /project Returns the specified project resource.
setCommonInstanceMetadata POST  /project/setCommonInstanceMetadata Sets metadata common to all instances within the specified project using the data included in the request.
setUsageExportBucket POST  /project/setUsageExportBucket Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.
setUsageExportCloudStorageBucket POST  /project/setUsageExportCloudStorageBucket [Deprecated] Use setUsageExportBucket instead.

RegionOperations

For RegionOperations Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/regions/region/operations/operation Deletes the specified region-specific operation resource.
get GET  /project/regions/region/operations/operation Retrieves the specified region-specific operation resource.
list GET  /project/regions/region/operations Retrieves the list of operation resources contained within the specified region.

Regions

For Regions Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
get GET  /project/regions/region Returns the specified region resource.
list GET  /project/regions Retrieves the list of region resources available to the specified project.

Routes

For Routes Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/routes/route Deletes the specified route resource.
get GET  /project/global/routes/route Returns the specified route resource.
insert POST  /project/global/routes Creates a route resource in the specified project using the data included in the request.
list GET  /project/global/routes Retrieves the list of route resources available to the specified project.

Snapshots

For Snapshots Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/snapshots/snapshot Deletes the specified persistent disk snapshot resource.
get GET  /project/global/snapshots/snapshot Returns the specified persistent disk snapshot resource.
list GET  /project/global/snapshots Retrieves the list of persistent disk snapshot resources contained within the specified project.

TargetHttpProxies

For TargetHttpProxies Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/targetHttpProxies/targetHttpProxy Deletes the specified TargetHttpProxy resource.
get GET  /project/global/targetHttpProxies/targetHttpProxy Returns the specified TargetHttpProxy resource.
insert POST  /project/global/targetHttpProxies Creates a TargetHttpProxy resource in the specified project using the data included in the request.
list GET  /project/global/targetHttpProxies Retrieves the list of TargetHttpProxy resources available to the specified project.
setUrlMap POST  /project/targetHttpProxies/targetHttpProxy/setUrlMap Changes the URL map for TargetHttpProxy.

TargetInstances

For TargetInstances Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/targetInstances Retrieves the list of target instances grouped by scope.
delete DELETE  /project/zones/zone/targetInstances/targetInstance Deletes the specified TargetInstance resource.
get GET  /project/zones/zone/targetInstances/targetInstance Returns the specified TargetInstance resource.
insert POST  /project/zones/zone/targetInstances Creates a TargetInstance resource in the specified project and zone using the data included in the request.
list GET  /project/zones/zone/targetInstances Retrieves the list of TargetInstance resources available to the specified project and zone.

TargetPools

For TargetPools Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
addHealthCheck POST  /project/regions/region/targetPools/targetPool/addHealthCheck Adds health check URL to targetPool.
addInstance POST  /project/regions/region/targetPools/targetPool/addInstance Adds instance URL to targetPool.
aggregatedList GET  /project/aggregated/targetPools Retrieves the list of target pools grouped by scope.
delete DELETE  /project/regions/region/targetPools/targetPool Deletes the specified TargetPool resource.
get GET  /project/regions/region/targetPools/targetPool Returns the specified TargetPool resource.
getHealth POST  /project/regions/region/targetPools/targetPool/getHealth Gets the most recent health check results for each IP for the given instance that is referenced by given TargetPool.
insert POST  /project/regions/region/targetPools Creates a TargetPool resource in the specified project and region using the data included in the request.
list GET  /project/regions/region/targetPools Retrieves the list of TargetPool resources available to the specified project and region.
removeHealthCheck POST  /project/regions/region/targetPools/targetPool/removeHealthCheck Removes health check URL from targetPool.
removeInstance POST  /project/regions/region/targetPools/targetPool/removeInstance Removes instance URL from targetPool.
setBackup POST  /project/regions/region/targetPools/targetPool/setBackup Changes backup pool configurations. For more information, see backup pools.

UrlMaps

For UrlMaps Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/urlMaps/urlMap Deletes the specified UrlMap resource.
get GET  /project/global/urlMaps/urlMap Returns the specified UrlMap resource.
insert POST  /project/global/urlMaps Creates a UrlMap resource in the specified project using the data included in the request.
list GET  /project/global/urlMaps Retrieves the list of UrlMap resources available to the specified project.
patch PATCH  /project/global/urlMaps/urlMap Update the entire content of the UrlMap resource. This method supports patch semantics.
update PUT  /project/global/urlMaps/urlMap Update the entire content of the UrlMap resource.
validate POST  /project/global/urlMaps/urlMap/validate Run static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.

ZoneOperations

For ZoneOperations Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/zones/zone/operations/operation Deletes the specified zone-specific operation resource.
get GET  /project/zones/zone/operations/operation Retrieves the specified zone-specific operation resource.
list GET  /project/zones/zone/operations Retrieves the list of operation resources contained within the specified zone.

Zones

For Zones Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
get GET  /project/zones/zone Returns the specified zone resource.
list GET  /project/zones Retrieves the list of zone resources available to the specified project.

DiskTypes

For DiskTypes Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/diskTypes Retrieves the list of disk type resources grouped by scope.
get GET  /project/zones/zone/diskTypes/diskType Returns the specified disk type resource.
list GET  /project/zones/zone/diskTypes Retrieves the list of disk type resources available to the specified project.

HttpsHealthChecks

For HttpsHealthChecks Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/httpsHealthChecks/httpsHealthCheck Deletes the specified HttpsHealthCheck resource.
get GET  /project/global/httpsHealthChecks/httpsHealthCheck Returns the specified HttpsHealthCheck resource.
insert POST  /project/global/httpsHealthChecks Creates a HttpsHealthCheck resource in the specified project using the data included in the request.
list GET  /project/global/httpsHealthChecks Retrieves the list of HttpsHealthCheck resources available to the specified project.
patch PATCH  /project/global/httpsHealthChecks/httpsHealthCheck Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.
update PUT  /project/global/httpsHealthChecks/httpsHealthCheck Updates a HttpsHealthCheck resource in the specified project using the data included in the request.

InstanceTemplates

For InstanceTemplates Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/instanceTemplates/instanceTemplate Deletes the specified instance template resource.
get GET  /project/global/instanceTemplates/instanceTemplate Returns the specified instance template resource.
insert POST  /project/global/instanceTemplates Creates an instance template resource in the specified project using the data included in the request.
list GET  /project/global/instanceTemplates Retrieves the list of instance template resources contained within the specified project.

Licenses

For Licenses Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
get GET  /project/global/licenses/license Returns the specified license resource.

SslCertificates

For SslCertificates Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/sslCertificates/sslCertificate Deletes the specified SslCertificate resource.
get GET  /project/global/sslCertificates/sslCertificate Returns the specified SslCertificate resource.
insert POST  /project/global/sslCertificates Creates a SslCertificate resource in the specified project using the data included in the request.
list GET  /project/global/sslCertificates Retrieves the list of SslCertificate resources available to the specified project.

TargetHttpsProxies

For TargetHttpsProxies Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
delete DELETE  /project/global/targetHttpsProxies/targetHttpsProxy Deletes the specified TargetHttpsProxy resource.
get GET  /project/global/targetHttpsProxies/targetHttpsProxy Returns the specified TargetHttpsProxy resource.
insert POST  /project/global/targetHttpsProxies Creates a TargetHttpsProxy resource in the specified project using the data included in the request.
list GET  /project/global/targetHttpsProxies Retrieves the list of TargetHttpsProxy resources available to the specified project.

TargetVpnGateways

For TargetVpnGateways Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/targetVpnGateways Retrieves the list of target VPN gateways grouped by scope.
delete DELETE  /project/regions/region/targetVpnGateways/targetVpnGateway Deletes the specified TargetVpnGateway resource.
get GET  /project/regions/region/targetVpnGateways/targetVpnGateway Returns the specified TargetVpnGateway resource.
insert POST  /project/regions/region/targetVpnGateways Creates a TargetVpnGateway resource in the specified project and region using the data included in the request.
list GET  /project/regions/region/targetVpnGateways Retrieves the list of TargetVpnGateway resources available to the specified project and region.

VpnTunnels

For VpnTunnels Resource details, see the resource representation page.

Method HTTP request Description
URIs relative to https://www.googleapis.com/compute/beta/projects, unless otherwise noted
aggregatedList GET  /project/aggregated/vpnTunnels Retrieves the list of VPN tunnels grouped by scope.
delete DELETE  /project/regions/region/vpnTunnels/vpnTunnel Deletes the specified VpnTunnel resource.
get GET  /project/regions/region/vpnTunnels/vpnTunnel Returns the specified VpnTunnel resource.
insert POST  /project/regions/region/vpnTunnels Creates a VpnTunnel resource in the specified project and region using the data included in the request.
list GET  /project/regions/region/vpnTunnels Retrieves the list of VpnTunnel resources contained in the specified project and region.