# Access Approval API . folders

## Instance Methods

Returns the approvalRequests Resource.

Deletes the settings associated with a project, folder, or organization.

Gets the settings associated with a project, folder, or organization.

Updates the settings associated with a project, folder, or organization.

### Method Details

`deleteAccessApprovalSettings(name, x__xgafv=None)`

    Deletes the settings associated with a project, folder, or organization.
    This will have the effect of disabling Access Approval for the project,
    folder, or organization, but only if all ancestors also have Access
    Approval disabled. If Access Approval is enabled at a higher level of the
    hierarchy, then Access Approval will still be enabled at this level as
    the settings are inherited.

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

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`getAccessApprovalSettings(name, x__xgafv=None)`

    Gets the settings associated with a project, folder, or organization.

    Args:
      name: string, Name of the AccessApprovalSettings 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:

        { # Settings on a Project/Folder/Organization related to Access Approval.
          "enrolledAncestor": True or False, # Output only. This field is read only (not settable via
              # UpdateAccessAccessApprovalSettings method). If the field is true, that
              # indicates that at least one service is enrolled for Access Approval in one
              # or more ancestors of the Project or Folder (this field will always be
              # unset for the organization since organizations do not have ancestors).
          "name": "A String", # The resource name of the settings. Format is one of:
              # <ol>
              #   <li>"projects/{project_id}/accessApprovalSettings"</li>
              #   <li>"folders/{folder_id}/accessApprovalSettings"</li>
              #   <li>"organizations/{organization_id}/accessApprovalSettings"</li>
              # <ol>
          "enrolledServices": [ # A list of Google Cloud Services for which the given resource has Access
              # Approval enrolled. Access requests for the resource given by name against
              # any of these services contained here will be required to have explicit
              # approval. If name refers to an organization, enrollment can be done for
              # individual services. If name refers to a folder or project, enrollment can
              # only be done on an all or nothing basis.
              #
              # If a cloud_product is repeated in this list, the first entry will be
              # honored and all following entries will be discarded. A maximum of 10
              # enrolled services will be enforced, to be expanded as the set of supported
              # services is expanded.
            { # Represents the enrollment of a cloud resource into a specific service.
              "enrollmentLevel": "A String", # The enrollment level of the service.
              "cloudProduct": "A String", # The product for which Access Approval will be enrolled. Allowed values are
                  # listed below (case-sensitive):
                  # <ol>
                  #   <li>all</li>
                  #   <li>appengine.googleapis.com</li>
                  #   <li>bigquery.googleapis.com</li>
                  #   <li>bigtable.googleapis.com</li>
                  #   <li>cloudkms.googleapis.com</li>
                  #   <li>compute.googleapis.com</li>
                  #   <li>dataflow.googleapis.com</li>
                  #   <li>iam.googleapis.com</li>
                  #   <li>pubsub.googleapis.com</li>
                  #   <li>storage.googleapis.com</li>
                  # <ol>
            },
          ],
          "notificationEmails": [ # A list of email addresses to which notifications relating to approval
              # requests should be sent. Notifications relating to a resource will be sent
              # to all emails in the settings of ancestor resources of that resource. A
              # maximum of 50 email addresses are allowed.
            "A String",
          ],
        }

`updateAccessApprovalSettings(name, body=None, updateMask=None, x__xgafv=None)`

    Updates the settings associated with a project, folder, or organization.
    Settings to update are determined by the value of field_mask.

    Args:
      name: string, The resource name of the settings. Format is one of:
    <ol>
      <li>"projects/{project_id}/accessApprovalSettings"</li>
      <li>"folders/{folder_id}/accessApprovalSettings"</li>
      <li>"organizations/{organization_id}/accessApprovalSettings"</li>
    <ol> (required)
      body: object, The request body.
        The object takes the form of:

    { # Settings on a Project/Folder/Organization related to Access Approval.
        "enrolledAncestor": True or False, # Output only. This field is read only (not settable via
            # UpdateAccessAccessApprovalSettings method). If the field is true, that
            # indicates that at least one service is enrolled for Access Approval in one
            # or more ancestors of the Project or Folder (this field will always be
            # unset for the organization since organizations do not have ancestors).
        "name": "A String", # The resource name of the settings. Format is one of:
            # <ol>
            #   <li>"projects/{project_id}/accessApprovalSettings"</li>
            #   <li>"folders/{folder_id}/accessApprovalSettings"</li>
            #   <li>"organizations/{organization_id}/accessApprovalSettings"</li>
            # <ol>
        "enrolledServices": [ # A list of Google Cloud Services for which the given resource has Access
            # Approval enrolled. Access requests for the resource given by name against
            # any of these services contained here will be required to have explicit
            # approval. If name refers to an organization, enrollment can be done for
            # individual services. If name refers to a folder or project, enrollment can
            # only be done on an all or nothing basis.
            #
            # If a cloud_product is repeated in this list, the first entry will be
            # honored and all following entries will be discarded. A maximum of 10
            # enrolled services will be enforced, to be expanded as the set of supported
            # services is expanded.
          { # Represents the enrollment of a cloud resource into a specific service.
            "enrollmentLevel": "A String", # The enrollment level of the service.
            "cloudProduct": "A String", # The product for which Access Approval will be enrolled. Allowed values are
                # listed below (case-sensitive):
                # <ol>
                #   <li>all</li>
                #   <li>appengine.googleapis.com</li>
                #   <li>bigquery.googleapis.com</li>
                #   <li>bigtable.googleapis.com</li>
                #   <li>cloudkms.googleapis.com</li>
                #   <li>compute.googleapis.com</li>
                #   <li>dataflow.googleapis.com</li>
                #   <li>iam.googleapis.com</li>
                #   <li>pubsub.googleapis.com</li>
                #   <li>storage.googleapis.com</li>
                # <ol>
          },
        ],
        "notificationEmails": [ # A list of email addresses to which notifications relating to approval
            # requests should be sent. Notifications relating to a resource will be sent
            # to all emails in the settings of ancestor resources of that resource. A
            # maximum of 50 email addresses are allowed.
          "A String",
        ],
      }

      updateMask: string, The update mask applies to the settings. Only the top level fields of
    AccessApprovalSettings (notification_emails & enrolled_services) are
    supported. For each field, if it is included, the currently stored value
    will be entirely overwritten with the value of the field passed in this
    request.

    For the `FieldMask` definition, see
    https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
    If this field is left unset, only the notification_emails field will be
    updated.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Settings on a Project/Folder/Organization related to Access Approval.
          "enrolledAncestor": True or False, # Output only. This field is read only (not settable via
              # UpdateAccessAccessApprovalSettings method). If the field is true, that
              # indicates that at least one service is enrolled for Access Approval in one
              # or more ancestors of the Project or Folder (this field will always be
              # unset for the organization since organizations do not have ancestors).
          "name": "A String", # The resource name of the settings. Format is one of:
              # <ol>
              #   <li>"projects/{project_id}/accessApprovalSettings"</li>
              #   <li>"folders/{folder_id}/accessApprovalSettings"</li>
              #   <li>"organizations/{organization_id}/accessApprovalSettings"</li>
              # <ol>
          "enrolledServices": [ # A list of Google Cloud Services for which the given resource has Access
              # Approval enrolled. Access requests for the resource given by name against
              # any of these services contained here will be required to have explicit
              # approval. If name refers to an organization, enrollment can be done for
              # individual services. If name refers to a folder or project, enrollment can
              # only be done on an all or nothing basis.
              #
              # If a cloud_product is repeated in this list, the first entry will be
              # honored and all following entries will be discarded. A maximum of 10
              # enrolled services will be enforced, to be expanded as the set of supported
              # services is expanded.
            { # Represents the enrollment of a cloud resource into a specific service.
              "enrollmentLevel": "A String", # The enrollment level of the service.
              "cloudProduct": "A String", # The product for which Access Approval will be enrolled. Allowed values are
                  # listed below (case-sensitive):
                  # <ol>
                  #   <li>all</li>
                  #   <li>appengine.googleapis.com</li>
                  #   <li>bigquery.googleapis.com</li>
                  #   <li>bigtable.googleapis.com</li>
                  #   <li>cloudkms.googleapis.com</li>
                  #   <li>compute.googleapis.com</li>
                  #   <li>dataflow.googleapis.com</li>
                  #   <li>iam.googleapis.com</li>
                  #   <li>pubsub.googleapis.com</li>
                  #   <li>storage.googleapis.com</li>
                  # <ol>
            },
          ],
          "notificationEmails": [ # A list of email addresses to which notifications relating to approval
              # requests should be sent. Notifications relating to a resource will be sent
              # to all emails in the settings of ancestor resources of that resource. A
              # maximum of 50 email addresses are allowed.
            "A String",
          ],
        }