Method: testIamPermissions

Returns permissions that a caller has on the Identity-Aware Proxy protected resource. If the resource does not exist or the caller does not have Identity-Aware Proxy permissions a google.rpc.Code.PERMISSION_DENIED will be returned. More information about managing access via IAP can be found at:

HTTP request


The URL uses gRPC Transcoding syntax.

Path parameters



REQUIRED: The resource for which the policy detail is being requested. See Resource names for the appropriate value for this field.

Request body

The request body contains data with the following structure:

JSON representation
  "permissions": [


The set of permissions to check for the resource. Permissions with wildcards (such as * or storage.*) are not allowed. For more information see IAM Overview.

Response body

If successful, the response body contains an instance of TestIamPermissionsResponse.

Authorization scopes

Requires the following OAuth scope:


For more information, see the Authentication Overview.

IAM Permissions

Requires one of the following IAM permissions on the resource resource, depending on the resource type:

  • iap.gateway.getIamPolicy
  • iap.tunnel.getIamPolicy
  • iap.tunnelDestGroups.getIamPolicy
  • iap.tunnelInstances.getIamPolicy
  • iap.tunnelLocations.getIamPolicy
  • iap.tunnelZones.getIamPolicy
  • iap.web.getIamPolicy
  • iap.webServices.getIamPolicy
  • iap.webServiceVersions.getIamPolicy
  • iap.webTypes.getIamPolicy

For more information, see the IAM documentation.