WEBSECURITYSCANNER

websecurityscanner.projects.scanConfigs.create

enum_ScanConfigExportToSecurityCommandCenter := [ "EXPORT_TO_SECURITY_COMMAND_CENTER_UNSPECIFIED", "ENABLED", "DISABLED" ]
enum_ScanConfigRiskLevel := [ "RISK_LEVEL_UNSPECIFIED", "NORMAL", "LOW" ]
enum_ScanConfigUserAgent := [ "USER_AGENT_UNSPECIFIED", "CHROME_LINUX", "CHROME_ANDROID", "SAFARI_IPHONE" ]

valid {
    input.Body.authentication.customAccount.loginUrl == STRING
    input.Body.authentication.customAccount.password == STRING
    input.Body.authentication.customAccount.username == STRING
    input.Body.authentication.googleAccount.password == STRING
    input.Body.authentication.googleAccount.username == STRING
    input.Body.authentication.iapCredential.iapTestServiceAccountInfo.targetAudienceClientId == STRING
    input.Body.blacklistPatterns[_] == STRING
    input.Body.displayName == STRING
    input.Body.exportToSecurityCommandCenter == enum_ScanConfigExportToSecurityCommandCenter[_]
    input.Body.ignoreHttpStatusErrors == BOOLEAN
    input.Body.managedScan == BOOLEAN
    input.Body.maxQps == INTEGER
    input.Body.name == STRING
    input.Body.riskLevel == enum_ScanConfigRiskLevel[_]
    input.Body.schedule.intervalDurationDays == INTEGER
    input.Body.schedule.scheduleTime == STRING
    input.Body.startingUrls[_] == STRING
    input.Body.staticIpScan == BOOLEAN
    input.Body.userAgent == enum_ScanConfigUserAgent[_]
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

websecurityscanner.projects.scanConfigs.delete

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

websecurityscanner.projects.scanConfigs.get

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

websecurityscanner.projects.scanConfigs.list

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

websecurityscanner.projects.scanConfigs.patch

enum_ScanConfigExportToSecurityCommandCenter := [ "EXPORT_TO_SECURITY_COMMAND_CENTER_UNSPECIFIED", "ENABLED", "DISABLED" ]
enum_ScanConfigRiskLevel := [ "RISK_LEVEL_UNSPECIFIED", "NORMAL", "LOW" ]
enum_ScanConfigUserAgent := [ "USER_AGENT_UNSPECIFIED", "CHROME_LINUX", "CHROME_ANDROID", "SAFARI_IPHONE" ]

valid {
    input.Body.authentication.customAccount.loginUrl == STRING
    input.Body.authentication.customAccount.password == STRING
    input.Body.authentication.customAccount.username == STRING
    input.Body.authentication.googleAccount.password == STRING
    input.Body.authentication.googleAccount.username == STRING
    input.Body.authentication.iapCredential.iapTestServiceAccountInfo.targetAudienceClientId == STRING
    input.Body.blacklistPatterns[_] == STRING
    input.Body.displayName == STRING
    input.Body.exportToSecurityCommandCenter == enum_ScanConfigExportToSecurityCommandCenter[_]
    input.Body.ignoreHttpStatusErrors == BOOLEAN
    input.Body.managedScan == BOOLEAN
    input.Body.maxQps == INTEGER
    input.Body.name == STRING
    input.Body.riskLevel == enum_ScanConfigRiskLevel[_]
    input.Body.schedule.intervalDurationDays == INTEGER
    input.Body.schedule.scheduleTime == STRING
    input.Body.startingUrls[_] == STRING
    input.Body.staticIpScan == BOOLEAN
    input.Body.userAgent == enum_ScanConfigUserAgent[_]
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

websecurityscanner.projects.scanConfigs.scanRuns.crawledUrls.list

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

websecurityscanner.projects.scanConfigs.scanRuns.findingTypeStats.list

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

websecurityscanner.projects.scanConfigs.scanRuns.findings.get

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

websecurityscanner.projects.scanConfigs.scanRuns.findings.list

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

websecurityscanner.projects.scanConfigs.scanRuns.get

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

websecurityscanner.projects.scanConfigs.scanRuns.list

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

websecurityscanner.projects.scanConfigs.scanRuns.stop

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

websecurityscanner.projects.scanConfigs.start

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