10.1.9 JA Publication

Compute Engine API

Scope: https://www.googleapis.com/auth/compute.readonly

NameAPI ReferenceIAM permission
Addresshttps://cloud.google.com/compute/docs/reference/rest/v1/addresses/aggregatedList
  • compute.addresses.list

Requires one of the following OAuth scopes:

Backend Buckethttps://cloud.google.com/compute/docs/reference/rest/v1/backendBuckets/get?authuser=2
  • compute.backendBuckets.get

Requires one of the following OAuth scopes:

Backend Service

https://cloud.google.com/compute/docs/reference/rest/v1/backendServices/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/backendServices/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices/get?authuser=2

 

  • compute.backendServices.list
  • compute.backendServices.get
  • compute.regionBackendServices.get

Requires one of the following OAuth scopes:

Firewall

https://cloud.google.com/compute/docs/reference/rest/v1/firewallPolicies/list

https://cloud.google.com/compute/docs/reference/rest/v1/firewalls/list

  • compute.firewalls.list
  • compute.firewallPolicies.list

Requires one of the following OAuth scopes:

Forwarding Rule

https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules/get

https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules/get

https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules/aggregatedList

 

https://cloud.google.com/compute/docs/reference/rest/v1/targetHttpProxies/get

https://cloud.google.com/compute/docs/reference/rest/v1/targetHttpsProxies/get

https://cloud.google.com/compute/docs/reference/rest/v1/targetSslProxies/get

https://cloud.google.com/compute/docs/reference/rest/v1/targetTcpProxies/get

 

  • compute.forwardingRules.get
  • compute.forwardingRules.list

In addition to any permissions specified on the fields above, authorization requires one or more of the following IAM permissions:

  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.pscGet
  • compute.targetHttpProxies.get
  • compute.targetHttpsProxies.get
  • compute.targetSslProxies.get
  • compute.targetTcpProxies.get

Requires one of the following OAuth scopes:

 

Instance

https://cloud.google.com/compute/docs/reference/rest/v1/instances/list

https://cloud.google.com/compute/docs/reference/rest/v1/instances/aggregatedList

  • compute.instances.list

Requires one of the following OAuth scopes:

Instance Group

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroups/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroups/listInstances

https://cloud.google.com/compute/docs/reference/rest/v1/regionInstanceGroups/listInstances

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroups/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroups/list?authuser=2

 

  • compute.instances.list
  • compute.instances.get

Requires one of the following OAuth scopes:

Instance Group Managers

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagers/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagers/listManagedInstances

https://cloud.google.com/compute/docs/reference/rest/v1/regionInstanceGroupManagers/listManagedInstances

  • compute.instanceGroupManagers.list
  • compute.instanceGroupManagers.get

Requires one of the following OAuth scopes:

Instance Templateshttps://cloud.google.com/compute/docs/reference/rest/v1/instanceTemplates/list
  • compute.instanceTemplates.list

Requires one of the following OAuth scopes:

Interconnect Attachmentshttps://cloud.google.com/compute/docs/reference/rest/v1/interconnectAttachments/aggregatedList
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list

Requires one of the following OAuth scopes:

Interconnects

Method: interconnects.list  |  Compute Engine Documentation (google.com)

GET https://compute.googleapis.com/compute/v1/projects/{project}/global/interconnects

Authorization Scopes

Requires one of the following OAuth scopes:

For more information, see the Authentication Overview.

 

IAM Permissions

In addition to any permissions specified in the fields above, authorization requires one or more of the following IAM permissions:

  • compute.interconnects.get
  • compute.interconnects.list

To find predefined roles that contain those permissions, see Compute Engine IAM Roles.

Load Balancer

[1]https://codeblog.dotsandbrackets.com/internal-load-balancer/
[2]https://codeblog.dotsandbrackets.com/external-load-balancer/

https://compute.googleapis.com/compute/v1/projects/{project}/aggregated/forwardingRules

 
NAT

https://cloud.google.com/compute/docs/reference/rest/v1/routers/aggregatedList

https://cloud.google.com/nat/docs/apis

Since NAT is bound to cloud router, NAT can be retrieved by cloud router APIs.

Note that NAT does not have an individual API.

Requires one of the following OAuth scopes:

Network Endpoint Group

https://cloud.google.com/compute/docs/reference/rest/v1/globalNetworkEndpointGroups/list

https://cloud.google.com/compute/docs/reference/rest/v1/globalNetworkEndpointGroups/listNetworkEndpoints

https://cloud.google.com/compute/docs/reference/rest/v1/networkEndpointGroups/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/networkEndpointGroups/listNetworkEndpoints

https://cloud.google.com/compute/docs/reference/rest/v1/regionNetworkEndpointGroups/list

  • compute.globalNetworkEndpointGroups.list
  • compute.globalNetworkEndpointGroups.get
  • compute.networkEndpointGroups.list
  • compute.networkEndpointGroups.get
  • compute.regionNetworkEndpointGroups.list

Requires one of the following OAuth scopes:

Network(VPC)

https://cloud.google.com/compute/docs/reference/rest/v1/networks/get

https://cloud.google.com/compute/docs/reference/rest/v1/networks/getEffectiveFirewalls

Method: networks.list  |  Compute Engine Documentation  |  Google Cloud

  • compute.networks.list
  • compute.networks.get
  • compute.networks.getEffectiveFirewalls

Authorization Scopes

Requires one of the following OAuth scopes:

Projecthttps://cloud.google.com/compute/docs/reference/rest/v1/projects/get
  • compute.projects.get
Regionhttps://cloud.google.com/compute/docs/reference/rest/v1/regions/list
  • compute.regions.list
Route

https://cloud.google.com/compute/docs/reference/rest/v1/routes/list

 Expand source

  • compute.routes.list
Router

https://cloud.google.com/compute/docs/reference/rest/v1/routers/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/routers/get

https://cloud.google.com/compute/docs/reference/rest/v1/routers/getRouterStatus

https://cloud.google.com/compute/docs/reference/rest/v1/routers/list Expand source

  • compute.routers.list
  • compute.routers.get
Subnetworkshttps://cloud.google.com/compute/docs/reference/rest/v1/subnetworks/aggregatedList?authuser=2 
  • compute.subnetworks.list

 

Authorization Scopes

Requires one of the following OAuth scopes:

For more information, see the Authentication Overview.

Target Proxies

https://cloud.google.com/compute/docs/reference/rest/v1/targetHttpProxies/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/targetHttpsProxies/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/targetSslProxies/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/targetTcpProxies/get?authuser=2

https://cloud.google.com/compute/docs/reference/rest/v1/regionTargetHttpProxies/get?authuser=2

 

  • compute.targetHttpProxies.get
  • compute.targetHttpsProxies.get
  • compute.targetTcpProxies.get
  • compute.targetSslProxies.get
  • compute.regionTargetHttpProxies.get

 

Target pool

(network TCP/UDP load balancing)

https://cloud.google.com/compute/docs/reference/rest/v1/targetPools/list

https://cloud.google.com/compute/docs/reference/rest/v1/targetPools/get?authuser=2

  • compute.targetPools.list
  • compute.targetPools.get

URL Maps

(component of HTTP load balancers)

https://cloud.google.com/compute/docs/reference/rest/v1/urlMaps/get

https://cloud.google.com/compute/docs/reference/rest/v1/urlMaps/list
https://cloud.google.com/compute/docs/reference/rest/v1/regionUrlMaps/get?authuser=2

  • compute.urlMaps.list
  • compute.urlMaps.get
  • compute.regionUrlMaps.get
VPN Gateway

https://cloud.google.com/compute/docs/reference/rest/v1/vpnGateways/list

https://cloud.google.com/compute/docs/reference/rest/v1/vpnGateways/aggregatedList

https://cloud.google.com/compute/docs/reference/rest/v1/targetVpnGateways/aggregatedList

  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.targetVpnGateways.list
VPN Tunnel

https://cloud.google.com/compute/docs/reference/rest/v1/vpnTunnels/list

https://cloud.google.com/compute/docs/reference/rest/v1/vpnTunnels/aggregatedList

  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
Zonehttps://cloud.google.com/compute/docs/reference/rest/v1/zones/list
  • compute.zones.list