# Google Identity and Access Management (IAM) API . roles

## Instance Methods

Queries roles that can be granted on a particular resource.

Retrieves the next page of results.

### Method Details

`queryGrantableRoles(body, x__xgafv=None)`

    Queries roles that can be granted on a particular resource.
    A role is grantable if it can be used as the role in a binding for a policy
    for that resource.

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    { # The grantable role query request.
        "pageToken": "A String", # Optional pagination token returned in an earlier
            # QueryGrantableRolesResponse.
        "fullResourceName": "A String", # Required. The full resource name to query from the list of grantable roles.
            #
            # The name follows the Google Cloud Platform resource format.
            # For example, a Cloud Platform project with id `my-project` will be named
            # `//cloudresourcemanager.googleapis.com/projects/my-project`.
        "pageSize": 42, # Optional limit on the number of roles to include in the response.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # The grantable role query response.
        "nextPageToken": "A String", # To retrieve the next page of results, set
            # `QueryGrantableRolesRequest.page_token` to this value.
        "roles": [ # The list of matching roles.
          { # A role in the Identity and Access Management API.
            "title": "A String", # Optional.  A human-readable title for the role.  Typically this
                # is limited to 100 UTF-8 bytes.
            "name": "A String", # The name of the role.
                #
                # When Role is used in CreateRole, the role name must not be set.
                #
                # When Role is used in output and other input such as UpdateRole, the role
                # name is the complete path, e.g., roles/logging.viewer for curated roles
                # and organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles.
            "description": "A String", # Optional.  A human-readable description for the role.
          },
        ],
      }

`queryGrantableRoles_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.