Viewing referrers to VM instances

If you want to view the relationships between VM instances and otherCompute Engine resources, use thelistReferrers REST API method.

When you use REST, Compute Engine returns a list ofreferences that describe:

  • The source resource: the resource that is pointing to the target resource
  • The target resource: the resource in question
  • The reference type: the relationship between the two resources

For example, you can use REST to conveniently view a list of instancegroups that a VM instance belongs to.

Before you begin

Limitations

  • You can only list relationships between VM instances and instance groups (bothmanaged and unmanaged).
  • You can only list referrers by using REST.

Listing a single referrer

A referrer is a resource that refers to another resource. For VM instances,a common referrer is an instance group.

For example, assume that you have a VM instance namedexample-ig-a1 in zoneus-central1-a. The VM instance is a member of an instance group calledexample-ig in the same zone, as shown in the diagram below:

A virtual machine instance is a member of an instance group in the            same zone.

To see this relationship, call thelistReferrers methodonexample-ig-a1 with the following HTTP request:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1/referrers

The server returns standard list response containing the following items:

"items": [  {    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,    "referenceType": MEMBER_OF,    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig  }]

In this case, thetarget isexample-ig-a1, which is aMEMBER_OFthereferrer, theexample-ig instance group.

Listing multiple referrers

If a resource has more than one referrer, the response returns a listof all referrers for the target resource. If an instance belongs to two instancegroups, the response contains both instance groups.

If a virtual machine instance is a member of two instance groups,            the response contains both instance groups.

For example, the following response indicates that the instance namedexample-instance-a2 belongs to two instance groups,example-ig andexample-ig-2:

"items": [  {    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,    "referenceType": MEMBER_OF,    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig  },  {    "target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,    "referenceType": MEMBER_OF,    "referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2  }]

Listing cross-scope referrers

ThelistReferrers method also returns information about referrers that existinside other scopes, such as other regions or zones. For example, assume thatyou have a VM instance that belongs to a regional managed instance group(regional MIG):

In region us-central1, instance new-instance-a3 in            zone us-central1-a is a member of            the example-rmig regional instance group.

You call thelistReferrers method targeting this instance with the followingHTTP request:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3/referrers

The server returns a standard list response containing the following items:

"items":[{"target":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,"referenceType":MEMBER_OF,"referrer":https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rmig}]

The response shows the regional instance group in the list of referrers.

Listing referrers to all resources within a collection

By using the wildcard character (-), you can request a list of allreferrers to all VM instances within a specific zone. The request can bemade with an HTTP request that is similar to the following:

GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/-/referrers

The server returns a response containing a list of VM instances in the zoneand references to the instance. For example:

"items":[{"target":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,"referenceType":MEMBER_OF,"referrer":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig},{"target":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,"referenceType":MEMBER_OF,"referrer":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig},{"target":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,"referenceType":MEMBER_OF,"referrer":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2},{"target":https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,"referenceType":MEMBER_OF,"referrer":https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rmig}]

What's next

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-15 UTC.