SERVICENETWORKING

servicenetworking.operations.cancel

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

servicenetworking.operations.delete

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

servicenetworking.operations.get

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

servicenetworking.operations.list

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

servicenetworking.services.addSubnetwork

valid {
    input.Body.allowSubnetCidrRoutesOverlap == BOOLEAN
    input.Body.checkServiceNetworkingUsePermission == BOOLEAN
    input.Body.computeIdempotencyWindow == STRING
    input.Body.consumer == STRING
    input.Body.consumerNetwork == STRING
    input.Body.description == STRING
    input.Body.internalRange == STRING
    input.Body.ipPrefixLength == INTEGER
    input.Body.outsideAllocationPublicIpRange == STRING
    input.Body.privateIpv6GoogleAccess == STRING
    input.Body.purpose == STRING
    input.Body.region == STRING
    input.Body.requestedAddress == STRING
    input.Body.requestedRanges[_] == STRING
    input.Body.role == STRING
    input.Body.secondaryIpRangeSpecs[_].ipPrefixLength == INTEGER
    input.Body.secondaryIpRangeSpecs[_].outsideAllocationPublicIpRange == STRING
    input.Body.secondaryIpRangeSpecs[_].rangeName == STRING
    input.Body.secondaryIpRangeSpecs[_].requestedAddress == STRING
    input.Body.skipRequestedAddressValidation == BOOLEAN
    input.Body.subnetwork == STRING
    input.Body.subnetworkUsers[_] == STRING
    input.Body.useCustomComputeIdempotencyWindow == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.connections.create

valid {
    input.Body.network == STRING
    input.Body.reservedPeeringRanges[_] == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.connections.deleteConnection

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

servicenetworking.services.connections.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.network == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.connections.patch

valid {
    input.Body.network == STRING
    input.Body.reservedPeeringRanges[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.disableVpcServiceControls

valid {
    input.Body.consumerNetwork == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsRecordSets.add

valid {
    input.Body.consumerNetwork == STRING
    input.Body.dnsRecordSet.data[_] == STRING
    input.Body.dnsRecordSet.domain == STRING
    input.Body.dnsRecordSet.ttl == STRING
    input.Body.dnsRecordSet.type == STRING
    input.Body.zone == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsRecordSets.get

valid {
    input.ReqMap.parent == STRING
    input.Qs.consumerNetwork == STRING
    input.Qs.domain == STRING
    input.Qs.type == STRING
    input.Qs.zone == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsRecordSets.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.consumerNetwork == STRING
    input.Qs.zone == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsRecordSets.remove

valid {
    input.Body.consumerNetwork == STRING
    input.Body.dnsRecordSet.data[_] == STRING
    input.Body.dnsRecordSet.domain == STRING
    input.Body.dnsRecordSet.ttl == STRING
    input.Body.dnsRecordSet.type == STRING
    input.Body.zone == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsRecordSets.update

valid {
    input.Body.consumerNetwork == STRING
    input.Body.existingDnsRecordSet.data[_] == STRING
    input.Body.existingDnsRecordSet.domain == STRING
    input.Body.existingDnsRecordSet.ttl == STRING
    input.Body.existingDnsRecordSet.type == STRING
    input.Body.newDnsRecordSet.data[_] == STRING
    input.Body.newDnsRecordSet.domain == STRING
    input.Body.newDnsRecordSet.ttl == STRING
    input.Body.newDnsRecordSet.type == STRING
    input.Body.zone == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.dnsZones.add

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

servicenetworking.services.dnsZones.remove

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

servicenetworking.services.enableVpcServiceControls

valid {
    input.Body.consumerNetwork == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.projects.global.networks.dnsZones.get

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

servicenetworking.services.projects.global.networks.dnsZones.list

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

servicenetworking.services.projects.global.networks.get

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

servicenetworking.services.projects.global.networks.getVpcServiceControls

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

servicenetworking.services.projects.global.networks.peeredDnsDomains.create

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

servicenetworking.services.projects.global.networks.peeredDnsDomains.delete

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

servicenetworking.services.projects.global.networks.peeredDnsDomains.list

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

servicenetworking.services.projects.global.networks.updateConsumerConfig

valid {
    input.Body.consumerConfig.cloudsqlConfigs[_].service == STRING
    input.Body.consumerConfig.cloudsqlConfigs[_].umbrellaNetwork == STRING
    input.Body.consumerConfig.cloudsqlConfigs[_].umbrellaProject == STRING
    input.Body.consumerConfig.consumerExportCustomRoutes == BOOLEAN
    input.Body.consumerConfig.consumerExportSubnetRoutesWithPublicIp == BOOLEAN
    input.Body.consumerConfig.consumerImportCustomRoutes == BOOLEAN
    input.Body.consumerConfig.consumerImportSubnetRoutesWithPublicIp == BOOLEAN
    input.Body.consumerConfig.producerExportCustomRoutes == BOOLEAN
    input.Body.consumerConfig.producerExportSubnetRoutesWithPublicIp == BOOLEAN
    input.Body.consumerConfig.producerImportCustomRoutes == BOOLEAN
    input.Body.consumerConfig.producerImportSubnetRoutesWithPublicIp == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.roles.add

valid {
    input.Body.consumerNetwork == STRING
    input.Body.policyBinding[_].member == STRING
    input.Body.policyBinding[_].role == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.searchRange

valid {
    input.Body.ipPrefixLength == INTEGER
    input.Body.network == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.updateConnections

valid {
    input.Body.network == STRING
    input.Body.peering == STRING
    input.Body.reservedPeeringRanges[_] == STRING
    input.Body.service == STRING
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

servicenetworking.services.validate

valid {
    input.Body.checkServiceNetworkingUsePermission == BOOLEAN
    input.Body.consumerNetwork == STRING
    input.Body.consumerProject.projectNum == STRING
    input.Body.rangeReservation.ipPrefixLength == INTEGER
    input.Body.rangeReservation.requestedRanges[_] == STRING
    input.Body.rangeReservation.secondaryRangeIpPrefixLengths[_] == INTEGER
    input.Body.rangeReservation.subnetworkCandidates[_].ipCidrRange == STRING
    input.Body.rangeReservation.subnetworkCandidates[_].name == STRING
    input.Body.rangeReservation.subnetworkCandidates[_].network == STRING
    input.Body.rangeReservation.subnetworkCandidates[_].outsideAllocation == BOOLEAN
    input.Body.rangeReservation.subnetworkCandidates[_].region == STRING
    input.Body.rangeReservation.subnetworkCandidates[_].secondaryIpRanges[_].ipCidrRange == STRING
    input.Body.rangeReservation.subnetworkCandidates[_].secondaryIpRanges[_].rangeName == STRING
    input.Body.validateNetwork == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}