ACCESSAPPROVAL

accessapproval.folders.approvalRequests.approve

valid {
    input.Body.expireTime == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.approvalRequests.dismiss

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.approvalRequests.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.approvalRequests.invalidate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.approvalRequests.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.deleteAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.getAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.getServiceAccount

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.folders.updateAccessApprovalSettings

enum_AccessApprovalSettingsRequestScopeMaxWidthPreference := [ "REQUEST_SCOPE_MAX_WIDTH_PREFERENCE_UNSPECIFIED", "ORGANIZATION", "FOLDER", "PROJECT" ]
enum_EnrolledServiceEnrollmentLevel := [ "ENROLLMENT_LEVEL_UNSPECIFIED", "BLOCK_ALL" ]

valid {
    input.Body.activeKeyVersion == STRING
    input.Body.enrolledServices[_].cloudProduct == STRING
    input.Body.enrolledServices[_].enrollmentLevel == enum_EnrolledServiceEnrollmentLevel[_]
    input.Body.name == STRING
    input.Body.notificationEmails[_] == STRING
    input.Body.notificationPubsubTopic == STRING
    input.Body.preferNoBroadApprovalRequests == BOOLEAN
    input.Body.preferredRequestExpirationDays == INTEGER
    input.Body.requestScopeMaxWidthPreference == enum_AccessApprovalSettingsRequestScopeMaxWidthPreference[_]
    input.Body.requireCustomerVisibleJustification == BOOLEAN
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.approvalRequests.approve

valid {
    input.Body.expireTime == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.approvalRequests.dismiss

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.approvalRequests.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.approvalRequests.invalidate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.approvalRequests.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.deleteAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.getAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.getServiceAccount

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.organizations.updateAccessApprovalSettings

enum_AccessApprovalSettingsRequestScopeMaxWidthPreference := [ "REQUEST_SCOPE_MAX_WIDTH_PREFERENCE_UNSPECIFIED", "ORGANIZATION", "FOLDER", "PROJECT" ]
enum_EnrolledServiceEnrollmentLevel := [ "ENROLLMENT_LEVEL_UNSPECIFIED", "BLOCK_ALL" ]

valid {
    input.Body.activeKeyVersion == STRING
    input.Body.enrolledServices[_].cloudProduct == STRING
    input.Body.enrolledServices[_].enrollmentLevel == enum_EnrolledServiceEnrollmentLevel[_]
    input.Body.name == STRING
    input.Body.notificationEmails[_] == STRING
    input.Body.notificationPubsubTopic == STRING
    input.Body.preferNoBroadApprovalRequests == BOOLEAN
    input.Body.preferredRequestExpirationDays == INTEGER
    input.Body.requestScopeMaxWidthPreference == enum_AccessApprovalSettingsRequestScopeMaxWidthPreference[_]
    input.Body.requireCustomerVisibleJustification == BOOLEAN
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.approvalRequests.approve

valid {
    input.Body.expireTime == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.approvalRequests.dismiss

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.approvalRequests.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.approvalRequests.invalidate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.approvalRequests.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.deleteAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.getAccessApprovalSettings

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.getServiceAccount

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

accessapproval.projects.updateAccessApprovalSettings

enum_AccessApprovalSettingsRequestScopeMaxWidthPreference := [ "REQUEST_SCOPE_MAX_WIDTH_PREFERENCE_UNSPECIFIED", "ORGANIZATION", "FOLDER", "PROJECT" ]
enum_EnrolledServiceEnrollmentLevel := [ "ENROLLMENT_LEVEL_UNSPECIFIED", "BLOCK_ALL" ]

valid {
    input.Body.activeKeyVersion == STRING
    input.Body.enrolledServices[_].cloudProduct == STRING
    input.Body.enrolledServices[_].enrollmentLevel == enum_EnrolledServiceEnrollmentLevel[_]
    input.Body.name == STRING
    input.Body.notificationEmails[_] == STRING
    input.Body.notificationPubsubTopic == STRING
    input.Body.preferNoBroadApprovalRequests == BOOLEAN
    input.Body.preferredRequestExpirationDays == INTEGER
    input.Body.requestScopeMaxWidthPreference == enum_AccessApprovalSettingsRequestScopeMaxWidthPreference[_]
    input.Body.requireCustomerVisibleJustification == BOOLEAN
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}