# Access Approval API . folders . approvalRequests

## Instance Methods

Approves a request and returns the updated ApprovalRequest.

Dismisses a request. Returns the updated ApprovalRequest.

Gets an approval request. Returns NOT_FOUND if the request does not exist.

Lists approval requests associated with a project, folder, or organization.

Retrieves the next page of results.

### Method Details

`approve(name, body, x__xgafv=None)`

    Approves a request and returns the updated ApprovalRequest.

    Returns NOT_FOUND if the request does not exist. Returns
    FAILED_PRECONDITION if the request exists but is not in a pending state.

    Args:
      name: string, Name of the approval request to approve. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Request to approve an ApprovalRequest.
        "expireTime": "A String", # The expiration time of this approval.
      }

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

    Returns:
      An object of the form:

        { # A request for the customer to approve access to a resource.
        "requestedResourceProperties": { # The properties associated with the resource of the request. # Properties related to the resource represented by requested_resource_name.
          "excludesDescendants": True or False, # Whether an approval will exclude the descendants of the resource being
              # requested.
        },
        "requestTime": "A String", # The time at which approval was requested.
        "requestedExpiration": "A String", # The requested expiration for the approval. If the request is approved,
            # access will be granted from the time of approval until the expiration time.
        "name": "A String", # The resource name of the request. Format is
            # "{projects|folders|organizations}/{id}/approvalRequests/{approval_request_id}".
        "dismiss": { # A decision that has been made to dismiss an approval request. # The request was dismissed.
          "dismissTime": "A String", # The time at which the approval request was dismissed.
        },
        "requestedReason": { # The justification for which approval is being requested.
          "type": "A String", # Type of access justification.
          "detail": "A String", # More detail about certain reason types. See comments for each type above.
        },
        "requestedResourceName": "A String", # The resource for which approval is being requested. The format of the
            # resource name is defined at
            # https://cloud.google.com/apis/design/resource_names. The resource name here
            # may either be a "full" resource name (e.g.
            # "//library.googleapis.com/shelves/shelf1/books/book2") or a "relative"
            # resource name (e.g. "shelves/shelf1/books/book2") as described in the
            # resource name specification.
        "approve": { # A decision that has been made to approve access to a resource. # Access was approved.
          "expireTime": "A String", # The time at which the approval expires.
          "approveTime": "A String", # The time at which approval was granted.
        },
        "requestedLocations": { # Home office and physical location of the principal. # The locations for which approval is being requested.
          "principalOfficeCountry": "A String", # The "home office" location of the principal. A two-letter country code
              # (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code. In some
              # limited situations Google systems may refer refer to a region code instead
              # of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
          "principalPhysicalLocationCountry": "A String", # Physical location of the principal at the time of the access. A
              # two-letter country code (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or
              # a region code. In some limited situations Google systems may refer refer to
              # a region code instead of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
        },
      }

`dismiss(name, body=None, x__xgafv=None)`

    Dismisses a request. Returns the updated ApprovalRequest.

    NOTE: This does not deny access to the resource if another request has been
    made and approved. It is equivalent in effect to ignoring the request
    altogether.

    Returns NOT_FOUND if the request does not exist.

    Returns FAILED_PRECONDITION if the request exists but is not in a pending
    state.

    Args:
      name: string, Name of the ApprovalRequest to dismiss. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request to dismiss an approval request.
      }

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

    Returns:
      An object of the form:

        { # A request for the customer to approve access to a resource.
        "requestedResourceProperties": { # The properties associated with the resource of the request. # Properties related to the resource represented by requested_resource_name.
          "excludesDescendants": True or False, # Whether an approval will exclude the descendants of the resource being
              # requested.
        },
        "requestTime": "A String", # The time at which approval was requested.
        "requestedExpiration": "A String", # The requested expiration for the approval. If the request is approved,
            # access will be granted from the time of approval until the expiration time.
        "name": "A String", # The resource name of the request. Format is
            # "{projects|folders|organizations}/{id}/approvalRequests/{approval_request_id}".
        "dismiss": { # A decision that has been made to dismiss an approval request. # The request was dismissed.
          "dismissTime": "A String", # The time at which the approval request was dismissed.
        },
        "requestedReason": { # The justification for which approval is being requested.
          "type": "A String", # Type of access justification.
          "detail": "A String", # More detail about certain reason types. See comments for each type above.
        },
        "requestedResourceName": "A String", # The resource for which approval is being requested. The format of the
            # resource name is defined at
            # https://cloud.google.com/apis/design/resource_names. The resource name here
            # may either be a "full" resource name (e.g.
            # "//library.googleapis.com/shelves/shelf1/books/book2") or a "relative"
            # resource name (e.g. "shelves/shelf1/books/book2") as described in the
            # resource name specification.
        "approve": { # A decision that has been made to approve access to a resource. # Access was approved.
          "expireTime": "A String", # The time at which the approval expires.
          "approveTime": "A String", # The time at which approval was granted.
        },
        "requestedLocations": { # Home office and physical location of the principal. # The locations for which approval is being requested.
          "principalOfficeCountry": "A String", # The "home office" location of the principal. A two-letter country code
              # (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code. In some
              # limited situations Google systems may refer refer to a region code instead
              # of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
          "principalPhysicalLocationCountry": "A String", # Physical location of the principal at the time of the access. A
              # two-letter country code (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or
              # a region code. In some limited situations Google systems may refer refer to
              # a region code instead of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
        },
      }

`get(name, x__xgafv=None)`

    Gets an approval request. Returns NOT_FOUND if the request does not exist.

    Args:
      name: string, Name of the approval request to retrieve. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A request for the customer to approve access to a resource.
        "requestedResourceProperties": { # The properties associated with the resource of the request. # Properties related to the resource represented by requested_resource_name.
          "excludesDescendants": True or False, # Whether an approval will exclude the descendants of the resource being
              # requested.
        },
        "requestTime": "A String", # The time at which approval was requested.
        "requestedExpiration": "A String", # The requested expiration for the approval. If the request is approved,
            # access will be granted from the time of approval until the expiration time.
        "name": "A String", # The resource name of the request. Format is
            # "{projects|folders|organizations}/{id}/approvalRequests/{approval_request_id}".
        "dismiss": { # A decision that has been made to dismiss an approval request. # The request was dismissed.
          "dismissTime": "A String", # The time at which the approval request was dismissed.
        },
        "requestedReason": { # The justification for which approval is being requested.
          "type": "A String", # Type of access justification.
          "detail": "A String", # More detail about certain reason types. See comments for each type above.
        },
        "requestedResourceName": "A String", # The resource for which approval is being requested. The format of the
            # resource name is defined at
            # https://cloud.google.com/apis/design/resource_names. The resource name here
            # may either be a "full" resource name (e.g.
            # "//library.googleapis.com/shelves/shelf1/books/book2") or a "relative"
            # resource name (e.g. "shelves/shelf1/books/book2") as described in the
            # resource name specification.
        "approve": { # A decision that has been made to approve access to a resource. # Access was approved.
          "expireTime": "A String", # The time at which the approval expires.
          "approveTime": "A String", # The time at which approval was granted.
        },
        "requestedLocations": { # Home office and physical location of the principal. # The locations for which approval is being requested.
          "principalOfficeCountry": "A String", # The "home office" location of the principal. A two-letter country code
              # (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code. In some
              # limited situations Google systems may refer refer to a region code instead
              # of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
          "principalPhysicalLocationCountry": "A String", # Physical location of the principal at the time of the access. A
              # two-letter country code (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or
              # a region code. In some limited situations Google systems may refer refer to
              # a region code instead of a country code.
              # Possible Region Codes:
              #
              #   ASI: Asia
              #   EUR: Europe
              #   OCE: Oceania
              #   AFR: Africa
              #   NAM: North America
              #   SAM: South America
              #   ANT: Antarctica
              #   ANY: Any location
              #
        },
      }

`list(parent, pageToken=None, x__xgafv=None, pageSize=None, filter=None)`

    Lists approval requests associated with a project, folder, or organization.
    Approval requests can be filtered by state (pending, active, dismissed).
    The order is reverse chronological.

    Args:
      parent: string, The parent resource. This may be "projects/{project_id}",
    "folders/{folder_id}", or "organizations/{organization_id}". (required)
      pageToken: string, A token identifying the page of results to return.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format
      pageSize: integer, Requested page size.
      filter: string, A filter on the type of approval requests to retrieve. Must be one of the
    following values:

      [not set]: Requests that are pending or have active approvals.
      ALL: All requests.
      PENDING: Only pending requests.
      ACTIVE: Only active (i.e. currently approved) requests.
      DISMISSED: Only dismissed (including expired) requests.

    Returns:
      An object of the form:

        { # Response to listing of ApprovalRequest objects.
        "nextPageToken": "A String", # Token to retrieve the next page of results, or empty if there are no more.
        "approvalRequests": [ # Approval request details.
          { # A request for the customer to approve access to a resource.
            "requestedResourceProperties": { # The properties associated with the resource of the request. # Properties related to the resource represented by requested_resource_name.
              "excludesDescendants": True or False, # Whether an approval will exclude the descendants of the resource being
                  # requested.
            },
            "requestTime": "A String", # The time at which approval was requested.
            "requestedExpiration": "A String", # The requested expiration for the approval. If the request is approved,
                # access will be granted from the time of approval until the expiration time.
            "name": "A String", # The resource name of the request. Format is
                # "{projects|folders|organizations}/{id}/approvalRequests/{approval_request_id}".
            "dismiss": { # A decision that has been made to dismiss an approval request. # The request was dismissed.
              "dismissTime": "A String", # The time at which the approval request was dismissed.
            },
            "requestedReason": { # The justification for which approval is being requested.
              "type": "A String", # Type of access justification.
              "detail": "A String", # More detail about certain reason types. See comments for each type above.
            },
            "requestedResourceName": "A String", # The resource for which approval is being requested. The format of the
                # resource name is defined at
                # https://cloud.google.com/apis/design/resource_names. The resource name here
                # may either be a "full" resource name (e.g.
                # "//library.googleapis.com/shelves/shelf1/books/book2") or a "relative"
                # resource name (e.g. "shelves/shelf1/books/book2") as described in the
                # resource name specification.
            "approve": { # A decision that has been made to approve access to a resource. # Access was approved.
              "expireTime": "A String", # The time at which the approval expires.
              "approveTime": "A String", # The time at which approval was granted.
            },
            "requestedLocations": { # Home office and physical location of the principal. # The locations for which approval is being requested.
              "principalOfficeCountry": "A String", # The "home office" location of the principal. A two-letter country code
                  # (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or a region code. In some
                  # limited situations Google systems may refer refer to a region code instead
                  # of a country code.
                  # Possible Region Codes:
                  #
                  #   ASI: Asia
                  #   EUR: Europe
                  #   OCE: Oceania
                  #   AFR: Africa
                  #   NAM: North America
                  #   SAM: South America
                  #   ANT: Antarctica
                  #   ANY: Any location
                  #
              "principalPhysicalLocationCountry": "A String", # Physical location of the principal at the time of the access. A
                  # two-letter country code (ISO 3166-1 alpha-2), such as "US", "DE" or "GB" or
                  # a region code. In some limited situations Google systems may refer refer to
                  # a region code instead of a country code.
                  # Possible Region Codes:
                  #
                  #   ASI: Asia
                  #   EUR: Europe
                  #   OCE: Oceania
                  #   AFR: Africa
                  #   NAM: North America
                  #   SAM: South America
                  #   ANT: Antarctica
                  #   ANY: Any location
                  #
            },
          },
        ],
      }

`list_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.