netapp.projects.locations.activeDirectories.create

valid {
    input.Body.administrators[_] == STRING
    input.Body.aesEncryption == BOOLEAN
    input.Body.backupOperators[_] == STRING
    input.Body.description == STRING
    input.Body.dns == STRING
    input.Body.domain == STRING
    input.Body.encryptDcConnections == BOOLEAN
    input.Body.kdcHostname == STRING
    input.Body.kdcIp == STRING
    input.Body.labels.STRING == STRING
    input.Body.ldapSigning == BOOLEAN
    input.Body.name == STRING
    input.Body.netBiosPrefix == STRING
    input.Body.nfsUsersWithLdap == BOOLEAN
    input.Body.organizationalUnit == STRING
    input.Body.password == STRING
    input.Body.securityOperators[_] == STRING
    input.Body.site == STRING
    input.Body.username == STRING
    input.ReqMap.parent == STRING
    input.Qs.activeDirectoryId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.activeDirectories.delete

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

netapp.projects.locations.activeDirectories.get

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

netapp.projects.locations.activeDirectories.list

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

netapp.projects.locations.activeDirectories.patch

valid {
    input.Body.administrators[_] == STRING
    input.Body.aesEncryption == BOOLEAN
    input.Body.backupOperators[_] == STRING
    input.Body.description == STRING
    input.Body.dns == STRING
    input.Body.domain == STRING
    input.Body.encryptDcConnections == BOOLEAN
    input.Body.kdcHostname == STRING
    input.Body.kdcIp == STRING
    input.Body.labels.STRING == STRING
    input.Body.ldapSigning == BOOLEAN
    input.Body.name == STRING
    input.Body.netBiosPrefix == STRING
    input.Body.nfsUsersWithLdap == BOOLEAN
    input.Body.organizationalUnit == STRING
    input.Body.password == STRING
    input.Body.securityOperators[_] == STRING
    input.Body.site == STRING
    input.Body.username == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupPolicies.create

valid {
    input.Body.dailyBackupLimit == INTEGER
    input.Body.description == STRING
    input.Body.enabled == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.monthlyBackupLimit == INTEGER
    input.Body.name == STRING
    input.Body.weeklyBackupLimit == INTEGER
    input.ReqMap.parent == STRING
    input.Qs.backupPolicyId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupPolicies.delete

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

netapp.projects.locations.backupPolicies.get

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

netapp.projects.locations.backupPolicies.list

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

netapp.projects.locations.backupPolicies.patch

valid {
    input.Body.dailyBackupLimit == INTEGER
    input.Body.description == STRING
    input.Body.enabled == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.monthlyBackupLimit == INTEGER
    input.Body.name == STRING
    input.Body.weeklyBackupLimit == INTEGER
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupVaults.backups.create

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.sourceSnapshot == STRING
    input.Body.sourceVolume == STRING
    input.ReqMap.parent == STRING
    input.Qs.backupId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupVaults.backups.delete

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

netapp.projects.locations.backupVaults.backups.get

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

netapp.projects.locations.backupVaults.backups.list

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

netapp.projects.locations.backupVaults.backups.patch

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.sourceSnapshot == STRING
    input.Body.sourceVolume == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupVaults.create

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.Qs.backupVaultId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.backupVaults.delete

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

netapp.projects.locations.backupVaults.get

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

netapp.projects.locations.backupVaults.list

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

netapp.projects.locations.backupVaults.patch

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.get

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

netapp.projects.locations.kmsConfigs.create

valid {
    input.Body.cryptoKeyName == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.Qs.kmsConfigId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.kmsConfigs.delete

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

netapp.projects.locations.kmsConfigs.encrypt

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

netapp.projects.locations.kmsConfigs.get

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

netapp.projects.locations.kmsConfigs.list

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

netapp.projects.locations.kmsConfigs.patch

valid {
    input.Body.cryptoKeyName == STRING
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.kmsConfigs.verify

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

netapp.projects.locations.list

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

netapp.projects.locations.operations.cancel

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

netapp.projects.locations.operations.delete

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

netapp.projects.locations.operations.get

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

netapp.projects.locations.operations.list

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

netapp.projects.locations.storagePools.create

enum_StoragePoolServiceLevel := [ "SERVICE_LEVEL_UNSPECIFIED", "PREMIUM", "EXTREME", "STANDARD", "FLEX" ]

valid {
    input.Body.activeDirectory == STRING
    input.Body.allowAutoTiering == BOOLEAN
    input.Body.capacityGib == STRING
    input.Body.description == STRING
    input.Body.globalAccessAllowed == BOOLEAN
    input.Body.kmsConfig == STRING
    input.Body.labels.STRING == STRING
    input.Body.ldapEnabled == BOOLEAN
    input.Body.name == STRING
    input.Body.network == STRING
    input.Body.psaRange == STRING
    input.Body.replicaZone == STRING
    input.Body.serviceLevel == enum_StoragePoolServiceLevel[_]
    input.Body.zone == STRING
    input.ReqMap.parent == STRING
    input.Qs.storagePoolId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.storagePools.delete

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

netapp.projects.locations.storagePools.get

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

netapp.projects.locations.storagePools.list

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

netapp.projects.locations.storagePools.patch

enum_StoragePoolServiceLevel := [ "SERVICE_LEVEL_UNSPECIFIED", "PREMIUM", "EXTREME", "STANDARD", "FLEX" ]

valid {
    input.Body.activeDirectory == STRING
    input.Body.allowAutoTiering == BOOLEAN
    input.Body.capacityGib == STRING
    input.Body.description == STRING
    input.Body.globalAccessAllowed == BOOLEAN
    input.Body.kmsConfig == STRING
    input.Body.labels.STRING == STRING
    input.Body.ldapEnabled == BOOLEAN
    input.Body.name == STRING
    input.Body.network == STRING
    input.Body.psaRange == STRING
    input.Body.replicaZone == STRING
    input.Body.serviceLevel == enum_StoragePoolServiceLevel[_]
    input.Body.zone == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.storagePools.switch

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

netapp.projects.locations.volumes.create

enum_SimpleExportPolicyRuleAccessType := [ "ACCESS_TYPE_UNSPECIFIED", "READ_ONLY", "READ_WRITE", "READ_NONE" ]
enum_TieringPolicyTierAction := [ "TIER_ACTION_UNSPECIFIED", "ENABLED", "PAUSED" ]
enum_VolumeProtocols := [ "PROTOCOLS_UNSPECIFIED", "NFSV3", "NFSV4", "SMB" ]
enum_VolumeRestrictedActions := [ "RESTRICTED_ACTION_UNSPECIFIED", "DELETE" ]
enum_VolumeSecurityStyle := [ "SECURITY_STYLE_UNSPECIFIED", "NTFS", "UNIX" ]
enum_VolumeSmbSettings := [ "SMB_SETTINGS_UNSPECIFIED", "ENCRYPT_DATA", "BROWSABLE", "CHANGE_NOTIFY", "NON_BROWSABLE", "OPLOCKS", "SHOW_SNAPSHOT", "SHOW_PREVIOUS_VERSIONS", "ACCESS_BASED_ENUMERATION", "CONTINUOUSLY_AVAILABLE" ]

valid {
    input.Body.backupConfig.backupPolicies[_] == STRING
    input.Body.backupConfig.backupVault == STRING
    input.Body.backupConfig.scheduledBackupEnabled == BOOLEAN
    input.Body.capacityGib == STRING
    input.Body.description == STRING
    input.Body.exportPolicy.rules[_].accessType == enum_SimpleExportPolicyRuleAccessType[_]
    input.Body.exportPolicy.rules[_].allowedClients == STRING
    input.Body.exportPolicy.rules[_].hasRootAccess == STRING
    input.Body.exportPolicy.rules[_].kerberos5ReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5ReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5iReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5iReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5pReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5pReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].nfsv3 == BOOLEAN
    input.Body.exportPolicy.rules[_].nfsv4 == BOOLEAN
    input.Body.hybridReplicationParameters.clusterLocation == STRING
    input.Body.hybridReplicationParameters.description == STRING
    input.Body.hybridReplicationParameters.labels.STRING == STRING
    input.Body.hybridReplicationParameters.peerClusterName == STRING
    input.Body.hybridReplicationParameters.peerIpAddresses[_] == STRING
    input.Body.hybridReplicationParameters.peerSvmName == STRING
    input.Body.hybridReplicationParameters.peerVolumeName == STRING
    input.Body.hybridReplicationParameters.replication == STRING
    input.Body.kerberosEnabled == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.largeCapacity == BOOLEAN
    input.Body.multipleEndpoints == BOOLEAN
    input.Body.name == STRING
    input.Body.protocols[_] == enum_VolumeProtocols[_]
    input.Body.restoreParameters.sourceBackup == STRING
    input.Body.restoreParameters.sourceSnapshot == STRING
    input.Body.restrictedActions[_] == enum_VolumeRestrictedActions[_]
    input.Body.securityStyle == enum_VolumeSecurityStyle[_]
    input.Body.shareName == STRING
    input.Body.smbSettings[_] == enum_VolumeSmbSettings[_]
    input.Body.snapReserve == NUMBER
    input.Body.snapshotDirectory == BOOLEAN
    input.Body.snapshotPolicy.dailySchedule.hour == NUMBER
    input.Body.snapshotPolicy.dailySchedule.minute == NUMBER
    input.Body.snapshotPolicy.dailySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.enabled == BOOLEAN
    input.Body.snapshotPolicy.hourlySchedule.minute == NUMBER
    input.Body.snapshotPolicy.hourlySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.daysOfMonth == STRING
    input.Body.snapshotPolicy.monthlySchedule.hour == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.minute == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.day == STRING
    input.Body.snapshotPolicy.weeklySchedule.hour == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.minute == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.snapshotsToKeep == NUMBER
    input.Body.storagePool == STRING
    input.Body.tieringPolicy.coolingThresholdDays == INTEGER
    input.Body.tieringPolicy.tierAction == enum_TieringPolicyTierAction[_]
    input.Body.unixPermissions == STRING
    input.ReqMap.parent == STRING
    input.Qs.volumeId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.delete

valid {
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.get

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

netapp.projects.locations.volumes.list

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

netapp.projects.locations.volumes.patch

enum_SimpleExportPolicyRuleAccessType := [ "ACCESS_TYPE_UNSPECIFIED", "READ_ONLY", "READ_WRITE", "READ_NONE" ]
enum_TieringPolicyTierAction := [ "TIER_ACTION_UNSPECIFIED", "ENABLED", "PAUSED" ]
enum_VolumeProtocols := [ "PROTOCOLS_UNSPECIFIED", "NFSV3", "NFSV4", "SMB" ]
enum_VolumeRestrictedActions := [ "RESTRICTED_ACTION_UNSPECIFIED", "DELETE" ]
enum_VolumeSecurityStyle := [ "SECURITY_STYLE_UNSPECIFIED", "NTFS", "UNIX" ]
enum_VolumeSmbSettings := [ "SMB_SETTINGS_UNSPECIFIED", "ENCRYPT_DATA", "BROWSABLE", "CHANGE_NOTIFY", "NON_BROWSABLE", "OPLOCKS", "SHOW_SNAPSHOT", "SHOW_PREVIOUS_VERSIONS", "ACCESS_BASED_ENUMERATION", "CONTINUOUSLY_AVAILABLE" ]

valid {
    input.Body.backupConfig.backupPolicies[_] == STRING
    input.Body.backupConfig.backupVault == STRING
    input.Body.backupConfig.scheduledBackupEnabled == BOOLEAN
    input.Body.capacityGib == STRING
    input.Body.description == STRING
    input.Body.exportPolicy.rules[_].accessType == enum_SimpleExportPolicyRuleAccessType[_]
    input.Body.exportPolicy.rules[_].allowedClients == STRING
    input.Body.exportPolicy.rules[_].hasRootAccess == STRING
    input.Body.exportPolicy.rules[_].kerberos5ReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5ReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5iReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5iReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5pReadOnly == BOOLEAN
    input.Body.exportPolicy.rules[_].kerberos5pReadWrite == BOOLEAN
    input.Body.exportPolicy.rules[_].nfsv3 == BOOLEAN
    input.Body.exportPolicy.rules[_].nfsv4 == BOOLEAN
    input.Body.hybridReplicationParameters.clusterLocation == STRING
    input.Body.hybridReplicationParameters.description == STRING
    input.Body.hybridReplicationParameters.labels.STRING == STRING
    input.Body.hybridReplicationParameters.peerClusterName == STRING
    input.Body.hybridReplicationParameters.peerIpAddresses[_] == STRING
    input.Body.hybridReplicationParameters.peerSvmName == STRING
    input.Body.hybridReplicationParameters.peerVolumeName == STRING
    input.Body.hybridReplicationParameters.replication == STRING
    input.Body.kerberosEnabled == BOOLEAN
    input.Body.labels.STRING == STRING
    input.Body.largeCapacity == BOOLEAN
    input.Body.multipleEndpoints == BOOLEAN
    input.Body.name == STRING
    input.Body.protocols[_] == enum_VolumeProtocols[_]
    input.Body.restoreParameters.sourceBackup == STRING
    input.Body.restoreParameters.sourceSnapshot == STRING
    input.Body.restrictedActions[_] == enum_VolumeRestrictedActions[_]
    input.Body.securityStyle == enum_VolumeSecurityStyle[_]
    input.Body.shareName == STRING
    input.Body.smbSettings[_] == enum_VolumeSmbSettings[_]
    input.Body.snapReserve == NUMBER
    input.Body.snapshotDirectory == BOOLEAN
    input.Body.snapshotPolicy.dailySchedule.hour == NUMBER
    input.Body.snapshotPolicy.dailySchedule.minute == NUMBER
    input.Body.snapshotPolicy.dailySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.enabled == BOOLEAN
    input.Body.snapshotPolicy.hourlySchedule.minute == NUMBER
    input.Body.snapshotPolicy.hourlySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.daysOfMonth == STRING
    input.Body.snapshotPolicy.monthlySchedule.hour == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.minute == NUMBER
    input.Body.snapshotPolicy.monthlySchedule.snapshotsToKeep == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.day == STRING
    input.Body.snapshotPolicy.weeklySchedule.hour == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.minute == NUMBER
    input.Body.snapshotPolicy.weeklySchedule.snapshotsToKeep == NUMBER
    input.Body.storagePool == STRING
    input.Body.tieringPolicy.coolingThresholdDays == INTEGER
    input.Body.tieringPolicy.tierAction == enum_TieringPolicyTierAction[_]
    input.Body.unixPermissions == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.quotaRules.create

enum_QuotaRuleType := [ "TYPE_UNSPECIFIED", "INDIVIDUAL_USER_QUOTA", "INDIVIDUAL_GROUP_QUOTA", "DEFAULT_USER_QUOTA", "DEFAULT_GROUP_QUOTA" ]

valid {
    input.Body.description == STRING
    input.Body.diskLimitMib == INTEGER
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.target == STRING
    input.Body.type == enum_QuotaRuleType[_]
    input.ReqMap.parent == STRING
    input.Qs.quotaRuleId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.quotaRules.delete

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

netapp.projects.locations.volumes.quotaRules.get

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

netapp.projects.locations.volumes.quotaRules.list

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

netapp.projects.locations.volumes.quotaRules.patch

enum_QuotaRuleType := [ "TYPE_UNSPECIFIED", "INDIVIDUAL_USER_QUOTA", "INDIVIDUAL_GROUP_QUOTA", "DEFAULT_USER_QUOTA", "DEFAULT_GROUP_QUOTA" ]

valid {
    input.Body.description == STRING
    input.Body.diskLimitMib == INTEGER
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.target == STRING
    input.Body.type == enum_QuotaRuleType[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.replications.create

enum_ReplicationReplicationSchedule := [ "REPLICATION_SCHEDULE_UNSPECIFIED", "EVERY_10_MINUTES", "HOURLY", "DAILY" ]

valid {
    input.Body.clusterLocation == STRING
    input.Body.description == STRING
    input.Body.destinationVolumeParameters.description == STRING
    input.Body.destinationVolumeParameters.shareName == STRING
    input.Body.destinationVolumeParameters.storagePool == STRING
    input.Body.destinationVolumeParameters.volumeId == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.replicationSchedule == enum_ReplicationReplicationSchedule[_]
    input.ReqMap.parent == STRING
    input.Qs.replicationId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.replications.delete

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

netapp.projects.locations.volumes.replications.establishPeering

valid {
    input.Body.peerClusterName == STRING
    input.Body.peerIpAddresses[_] == STRING
    input.Body.peerSvmName == STRING
    input.Body.peerVolumeName == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.replications.get

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

netapp.projects.locations.volumes.replications.list

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

netapp.projects.locations.volumes.replications.patch

enum_ReplicationReplicationSchedule := [ "REPLICATION_SCHEDULE_UNSPECIFIED", "EVERY_10_MINUTES", "HOURLY", "DAILY" ]

valid {
    input.Body.clusterLocation == STRING
    input.Body.description == STRING
    input.Body.destinationVolumeParameters.description == STRING
    input.Body.destinationVolumeParameters.shareName == STRING
    input.Body.destinationVolumeParameters.storagePool == STRING
    input.Body.destinationVolumeParameters.volumeId == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.Body.replicationSchedule == enum_ReplicationReplicationSchedule[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.replications.resume

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

netapp.projects.locations.volumes.replications.reverseDirection

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

netapp.projects.locations.volumes.replications.stop

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

netapp.projects.locations.volumes.replications.sync

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

netapp.projects.locations.volumes.revert

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

netapp.projects.locations.volumes.snapshots.create

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.Qs.snapshotId == STRING
    input.ProviderMetadata.Region == STRING
}

netapp.projects.locations.volumes.snapshots.delete

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

netapp.projects.locations.volumes.snapshots.get

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

netapp.projects.locations.volumes.snapshots.list

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

netapp.projects.locations.volumes.snapshots.patch

valid {
    input.Body.description == STRING
    input.Body.labels.STRING == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}