- HTTP request
- Request body
- Response body
- Authorization scopes
- Permission
- PermissionLaunchStage
- CustomRolesSupportLevel
- Examples
- Try it!
Lists every permission that you can test on a resource. A permission is testable if you can check whether a principal has that permission on the resource.
HTTP request
POST https://iam.googleapis.com/v1/permissions:queryTestablePermissions
The URL uses gRPC Transcoding syntax.
Request body
The request body contains data with the following structure:
| JSON representation | 
|---|
| { "fullResourceName": string, "pageSize": integer, "pageToken": string } | 
| Fields | |
|---|---|
| fullResourceName | 
 Required. The full resource name to query from the list of testable permissions. The name follows the Google Cloud Platform resource format. For example, a Cloud Platform project with id  | 
| pageSize | 
 Optional limit on the number of permissions to include in the response. The default is 100, and the maximum is 1,000. | 
| pageToken | 
 Optional pagination token returned in an earlier QueryTestablePermissionsRequest. | 
Response body
The response containing permissions which can be tested on a resource.
If successful, the response body contains data with the following structure:
| JSON representation | 
|---|
| {
  "permissions": [
    {
      object ( | 
| Fields | |
|---|---|
| permissions[] | 
 The Permissions testable on the requested resource. | 
| nextPageToken | 
 To retrieve the next page of results, set  | 
Authorization scopes
Requires one of the following OAuth scopes:
- https://www.googleapis.com/auth/iam
- https://www.googleapis.com/auth/cloud-platform
For more information, see the Authentication Overview.
Permission
A permission which can be included by a role.
| JSON representation | 
|---|
| { "name": string, "title": string, "description": string, "onlyInPredefinedRoles": boolean, "stage": enum ( | 
| Fields | |
|---|---|
| name | 
 The name of this Permission. | 
| title | 
 The title of this Permission. | 
| description | 
 A brief description of what this Permission is used for. | 
| onlyInPredefinedRoles | 
 | 
| stage | 
 The current launch stage of the permission. | 
| customRolesSupportLevel | 
 The current custom role support level. | 
| apiDisabled | 
 The service API associated with the permission is not enabled. | 
| primaryPermission | 
 The preferred name for this permission. If present, then this permission is an alias of, and equivalent to, the listed primaryPermission. | 
PermissionLaunchStage
A stage representing a permission's lifecycle phase.
| Enums | |
|---|---|
| ALPHA | The permission is currently in an alpha phase. | 
| BETA | The permission is currently in a beta phase. | 
| GA | The permission is generally available. | 
| DEPRECATED | The permission is being deprecated. | 
CustomRolesSupportLevel
The state of the permission with regards to custom roles.
| Enums | |
|---|---|
| SUPPORTED | Default state. Permission is fully supported for custom role use. | 
| TESTING | Permission is being tested to check custom role compatibility. | 
| NOT_SUPPORTED | Permission is not supported for custom role use. |