CONTACTCENTERINSIGHTS

contactcenterinsights.projects.locations.analysisRules.create

enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel := [ "SUMMARIZATION_MODEL_UNSPECIFIED", "BASELINE_MODEL", "BASELINE_MODEL_V2_0" ]

valid {
    input.Body.active == BOOLEAN
    input.Body.analysisPercentage == NUMBER
    input.Body.annotatorSelector.issueModels[_] == STRING
    input.Body.annotatorSelector.phraseMatchers[_] == STRING
    input.Body.annotatorSelector.qaConfig.scorecardList.qaScorecardRevisions[_] == STRING
    input.Body.annotatorSelector.runEntityAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIntentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runInterruptionAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIssueModelAnnotator == BOOLEAN
    input.Body.annotatorSelector.runPhraseMatcherAnnotator == BOOLEAN
    input.Body.annotatorSelector.runQaAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSentimentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSilenceAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSummarizationAnnotator == BOOLEAN
    input.Body.annotatorSelector.summarizationConfig.conversationProfile == STRING
    input.Body.annotatorSelector.summarizationConfig.summarizationModel == enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel[_]
    input.Body.conversationFilter == STRING
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.analysisRules.delete

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

contactcenterinsights.projects.locations.analysisRules.get

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

contactcenterinsights.projects.locations.analysisRules.list

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

contactcenterinsights.projects.locations.analysisRules.patch

enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel := [ "SUMMARIZATION_MODEL_UNSPECIFIED", "BASELINE_MODEL", "BASELINE_MODEL_V2_0" ]

valid {
    input.Body.active == BOOLEAN
    input.Body.analysisPercentage == NUMBER
    input.Body.annotatorSelector.issueModels[_] == STRING
    input.Body.annotatorSelector.phraseMatchers[_] == STRING
    input.Body.annotatorSelector.qaConfig.scorecardList.qaScorecardRevisions[_] == STRING
    input.Body.annotatorSelector.runEntityAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIntentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runInterruptionAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIssueModelAnnotator == BOOLEAN
    input.Body.annotatorSelector.runPhraseMatcherAnnotator == BOOLEAN
    input.Body.annotatorSelector.runQaAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSentimentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSilenceAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSummarizationAnnotator == BOOLEAN
    input.Body.annotatorSelector.summarizationConfig.conversationProfile == STRING
    input.Body.annotatorSelector.summarizationConfig.summarizationModel == enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel[_]
    input.Body.conversationFilter == STRING
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.bulkDownloadFeedbackLabels

enum_GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestFeedbackLabelType := [ "FEEDBACK_LABEL_TYPE_UNSPECIFIED", "QUALITY_AI", "TOPIC_MODELING" ]
enum_GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestinationFormat := [ "FORMAT_UNSPECIFIED", "CSV", "JSON" ]

valid {
    input.Body.conversationFilter == STRING
    input.Body.feedbackLabelType == enum_GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestFeedbackLabelType[_]
    input.Body.filter == STRING
    input.Body.gcsDestination.addWhitespace == BOOLEAN
    input.Body.gcsDestination.alwaysPrintEmptyFields == BOOLEAN
    input.Body.gcsDestination.format == enum_GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestinationFormat[_]
    input.Body.gcsDestination.objectUri == STRING
    input.Body.gcsDestination.recordsPerFileCount == STRING
    input.Body.maxDownloadCount == INTEGER
    input.Body.parent == STRING
    input.Body.templateQaScorecardId[_] == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.bulkUploadFeedbackLabels

enum_GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSourceFormat := [ "FORMAT_UNSPECIFIED", "CSV", "JSON" ]

valid {
    input.Body.gcsSource.format == enum_GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSourceFormat[_]
    input.Body.gcsSource.objectUri == STRING
    input.Body.validateOnly == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.analyses.create

enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel := [ "SUMMARIZATION_MODEL_UNSPECIFIED", "BASELINE_MODEL", "BASELINE_MODEL_V2_0" ]

valid {
    input.Body.annotatorSelector.issueModels[_] == STRING
    input.Body.annotatorSelector.phraseMatchers[_] == STRING
    input.Body.annotatorSelector.qaConfig.scorecardList.qaScorecardRevisions[_] == STRING
    input.Body.annotatorSelector.runEntityAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIntentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runInterruptionAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIssueModelAnnotator == BOOLEAN
    input.Body.annotatorSelector.runPhraseMatcherAnnotator == BOOLEAN
    input.Body.annotatorSelector.runQaAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSentimentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSilenceAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSummarizationAnnotator == BOOLEAN
    input.Body.annotatorSelector.summarizationConfig.conversationProfile == STRING
    input.Body.annotatorSelector.summarizationConfig.summarizationModel == enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel[_]
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.analyses.delete

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

contactcenterinsights.projects.locations.conversations.analyses.get

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

contactcenterinsights.projects.locations.conversations.analyses.list

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

contactcenterinsights.projects.locations.conversations.bulkAnalyze

enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel := [ "SUMMARIZATION_MODEL_UNSPECIFIED", "BASELINE_MODEL", "BASELINE_MODEL_V2_0" ]

valid {
    input.Body.analysisPercentage == NUMBER
    input.Body.annotatorSelector.issueModels[_] == STRING
    input.Body.annotatorSelector.phraseMatchers[_] == STRING
    input.Body.annotatorSelector.qaConfig.scorecardList.qaScorecardRevisions[_] == STRING
    input.Body.annotatorSelector.runEntityAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIntentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runInterruptionAnnotator == BOOLEAN
    input.Body.annotatorSelector.runIssueModelAnnotator == BOOLEAN
    input.Body.annotatorSelector.runPhraseMatcherAnnotator == BOOLEAN
    input.Body.annotatorSelector.runQaAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSentimentAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSilenceAnnotator == BOOLEAN
    input.Body.annotatorSelector.runSummarizationAnnotator == BOOLEAN
    input.Body.annotatorSelector.summarizationConfig.conversationProfile == STRING
    input.Body.annotatorSelector.summarizationConfig.summarizationModel == enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel[_]
    input.Body.filter == STRING
    input.Body.parent == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.bulkDelete

valid {
    input.Body.filter == STRING
    input.Body.force == BOOLEAN
    input.Body.maxDeleteCount == INTEGER
    input.Body.parent == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.calculateStats

valid {
    input.ReqMap.location == STRING
    input.Qs.filter == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.create

enum_GoogleCloudContactcenterinsightsV1ConversationMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]
enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType := [ "ROLE_UNSPECIFIED", "HUMAN_AGENT", "AUTOMATED_AGENT", "END_USER", "ANY_AGENT" ]

valid {
    input.Body.agentId == STRING
    input.Body.callMetadata.agentChannel == INTEGER
    input.Body.callMetadata.customerChannel == INTEGER
    input.Body.dataSource.dialogflowSource.audioUri == STRING
    input.Body.dataSource.gcsSource.audioUri == STRING
    input.Body.dataSource.gcsSource.transcriptUri == STRING
    input.Body.expireTime == STRING
    input.Body.labels.STRING == STRING
    input.Body.languageCode == STRING
    input.Body.medium == enum_GoogleCloudContactcenterinsightsV1ConversationMedium[_]
    input.Body.metadataJson == STRING
    input.Body.name == STRING
    input.Body.obfuscatedUserId == STRING
    input.Body.qualityMetadata.agentInfo[_].agentId == STRING
    input.Body.qualityMetadata.agentInfo[_].agentType == enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType[_]
    input.Body.qualityMetadata.agentInfo[_].displayName == STRING
    input.Body.qualityMetadata.agentInfo[_].dispositionCode == STRING
    input.Body.qualityMetadata.agentInfo[_].team == STRING
    input.Body.qualityMetadata.customerSatisfactionRating == INTEGER
    input.Body.qualityMetadata.menuPath == STRING
    input.Body.qualityMetadata.waitDuration == STRING
    input.Body.startTime == STRING
    input.Body.ttl == STRING
    input.ReqMap.parent == STRING
    input.Qs.conversationId == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.delete

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

contactcenterinsights.projects.locations.conversations.feedbackLabels.create

valid {
    input.Body.label == STRING
    input.Body.labeledResource == STRING
    input.Body.name == STRING
    input.Body.qaAnswerLabel.boolValue == BOOLEAN
    input.Body.qaAnswerLabel.key == STRING
    input.Body.qaAnswerLabel.naValue == BOOLEAN
    input.Body.qaAnswerLabel.numValue == NUMBER
    input.Body.qaAnswerLabel.strValue == STRING
    input.ReqMap.parent == STRING
    input.Qs.feedbackLabelId == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.feedbackLabels.delete

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

contactcenterinsights.projects.locations.conversations.feedbackLabels.get

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

contactcenterinsights.projects.locations.conversations.feedbackLabels.list

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

contactcenterinsights.projects.locations.conversations.feedbackLabels.patch

valid {
    input.Body.label == STRING
    input.Body.labeledResource == STRING
    input.Body.name == STRING
    input.Body.qaAnswerLabel.boolValue == BOOLEAN
    input.Body.qaAnswerLabel.key == STRING
    input.Body.qaAnswerLabel.naValue == BOOLEAN
    input.Body.qaAnswerLabel.numValue == NUMBER
    input.Body.qaAnswerLabel.strValue == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.get

enum_ViewParameter := [ "CONVERSATION_VIEW_UNSPECIFIED", "FULL", "BASIC" ]

valid {
    input.ReqMap.name == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.ingest

enum_GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSourceBucketObjectType := [ "BUCKET_OBJECT_TYPE_UNSPECIFIED", "TRANSCRIPT", "AUDIO" ]
enum_GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfigMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]

valid {
    input.Body.conversationConfig.agentChannel == INTEGER
    input.Body.conversationConfig.agentId == STRING
    input.Body.conversationConfig.customerChannel == INTEGER
    input.Body.gcsSource.bucketObjectType == enum_GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSourceBucketObjectType[_]
    input.Body.gcsSource.bucketUri == STRING
    input.Body.gcsSource.customMetadataKeys[_] == STRING
    input.Body.gcsSource.metadataBucketUri == STRING
    input.Body.parent == STRING
    input.Body.redactionConfig.deidentifyTemplate == STRING
    input.Body.redactionConfig.inspectTemplate == STRING
    input.Body.sampleSize == INTEGER
    input.Body.speechConfig.speechRecognizer == STRING
    input.Body.transcriptObjectConfig.medium == enum_GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfigMedium[_]
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.list

enum_ViewParameter := [ "CONVERSATION_VIEW_UNSPECIFIED", "FULL", "BASIC" ]

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.view == enum_ViewParameter[_]
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.patch

enum_GoogleCloudContactcenterinsightsV1ConversationMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]
enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType := [ "ROLE_UNSPECIFIED", "HUMAN_AGENT", "AUTOMATED_AGENT", "END_USER", "ANY_AGENT" ]

valid {
    input.Body.agentId == STRING
    input.Body.callMetadata.agentChannel == INTEGER
    input.Body.callMetadata.customerChannel == INTEGER
    input.Body.dataSource.dialogflowSource.audioUri == STRING
    input.Body.dataSource.gcsSource.audioUri == STRING
    input.Body.dataSource.gcsSource.transcriptUri == STRING
    input.Body.expireTime == STRING
    input.Body.labels.STRING == STRING
    input.Body.languageCode == STRING
    input.Body.medium == enum_GoogleCloudContactcenterinsightsV1ConversationMedium[_]
    input.Body.metadataJson == STRING
    input.Body.name == STRING
    input.Body.obfuscatedUserId == STRING
    input.Body.qualityMetadata.agentInfo[_].agentId == STRING
    input.Body.qualityMetadata.agentInfo[_].agentType == enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType[_]
    input.Body.qualityMetadata.agentInfo[_].displayName == STRING
    input.Body.qualityMetadata.agentInfo[_].dispositionCode == STRING
    input.Body.qualityMetadata.agentInfo[_].team == STRING
    input.Body.qualityMetadata.customerSatisfactionRating == INTEGER
    input.Body.qualityMetadata.menuPath == STRING
    input.Body.qualityMetadata.waitDuration == STRING
    input.Body.startTime == STRING
    input.Body.ttl == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.conversations.upload

enum_GoogleCloudContactcenterinsightsV1ConversationMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]
enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType := [ "ROLE_UNSPECIFIED", "HUMAN_AGENT", "AUTOMATED_AGENT", "END_USER", "ANY_AGENT" ]

valid {
    input.Body.conversation.agentId == STRING
    input.Body.conversation.callMetadata.agentChannel == INTEGER
    input.Body.conversation.callMetadata.customerChannel == INTEGER
    input.Body.conversation.dataSource.dialogflowSource.audioUri == STRING
    input.Body.conversation.dataSource.gcsSource.audioUri == STRING
    input.Body.conversation.dataSource.gcsSource.transcriptUri == STRING
    input.Body.conversation.expireTime == STRING
    input.Body.conversation.labels.STRING == STRING
    input.Body.conversation.languageCode == STRING
    input.Body.conversation.medium == enum_GoogleCloudContactcenterinsightsV1ConversationMedium[_]
    input.Body.conversation.metadataJson == STRING
    input.Body.conversation.name == STRING
    input.Body.conversation.obfuscatedUserId == STRING
    input.Body.conversation.qualityMetadata.agentInfo[_].agentId == STRING
    input.Body.conversation.qualityMetadata.agentInfo[_].agentType == enum_GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfoAgentType[_]
    input.Body.conversation.qualityMetadata.agentInfo[_].displayName == STRING
    input.Body.conversation.qualityMetadata.agentInfo[_].dispositionCode == STRING
    input.Body.conversation.qualityMetadata.agentInfo[_].team == STRING
    input.Body.conversation.qualityMetadata.customerSatisfactionRating == INTEGER
    input.Body.conversation.qualityMetadata.menuPath == STRING
    input.Body.conversation.qualityMetadata.waitDuration == STRING
    input.Body.conversation.startTime == STRING
    input.Body.conversation.ttl == STRING
    input.Body.conversationId == STRING
    input.Body.parent == STRING
    input.Body.redactionConfig.deidentifyTemplate == STRING
    input.Body.redactionConfig.inspectTemplate == STRING
    input.Body.speechConfig.speechRecognizer == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.encryptionSpec.initialize

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

contactcenterinsights.projects.locations.getEncryptionSpec

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

contactcenterinsights.projects.locations.getSettings

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

contactcenterinsights.projects.locations.insightsdata.export

enum_GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestWriteDisposition := [ "WRITE_DISPOSITION_UNSPECIFIED", "WRITE_TRUNCATE", "WRITE_APPEND" ]

valid {
    input.Body.bigQueryDestination.dataset == STRING
    input.Body.bigQueryDestination.projectId == STRING
    input.Body.bigQueryDestination.table == STRING
    input.Body.filter == STRING
    input.Body.kmsKey == STRING
    input.Body.parent == STRING
    input.Body.writeDisposition == enum_GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestWriteDisposition[_]
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.issueModels.calculateIssueModelStats

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

contactcenterinsights.projects.locations.issueModels.create

enum_GoogleCloudContactcenterinsightsV1IssueModelInputDataConfigMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]
enum_GoogleCloudContactcenterinsightsV1IssueModelModelType := [ "MODEL_TYPE_UNSPECIFIED", "TYPE_V1", "TYPE_V2" ]

valid {
    input.Body.displayName == STRING
    input.Body.inputDataConfig.filter == STRING
    input.Body.inputDataConfig.medium == enum_GoogleCloudContactcenterinsightsV1IssueModelInputDataConfigMedium[_]
    input.Body.languageCode == STRING
    input.Body.modelType == enum_GoogleCloudContactcenterinsightsV1IssueModelModelType[_]
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.issueModels.delete

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

contactcenterinsights.projects.locations.issueModels.deploy

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

contactcenterinsights.projects.locations.issueModels.export

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

contactcenterinsights.projects.locations.issueModels.get

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

contactcenterinsights.projects.locations.issueModels.import

valid {
    input.Body.createNewModel == BOOLEAN
    input.Body.gcsSource.objectUri == STRING
    input.Body.parent == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.issueModels.issues.delete

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

contactcenterinsights.projects.locations.issueModels.issues.get

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

contactcenterinsights.projects.locations.issueModels.issues.list

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

contactcenterinsights.projects.locations.issueModels.issues.patch

valid {
    input.Body.displayDescription == STRING
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.issueModels.list

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

contactcenterinsights.projects.locations.issueModels.patch

enum_GoogleCloudContactcenterinsightsV1IssueModelInputDataConfigMedium := [ "MEDIUM_UNSPECIFIED", "PHONE_CALL", "CHAT" ]
enum_GoogleCloudContactcenterinsightsV1IssueModelModelType := [ "MODEL_TYPE_UNSPECIFIED", "TYPE_V1", "TYPE_V2" ]

valid {
    input.Body.displayName == STRING
    input.Body.inputDataConfig.filter == STRING
    input.Body.inputDataConfig.medium == enum_GoogleCloudContactcenterinsightsV1IssueModelInputDataConfigMedium[_]
    input.Body.languageCode == STRING
    input.Body.modelType == enum_GoogleCloudContactcenterinsightsV1IssueModelModelType[_]
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.issueModels.undeploy

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

contactcenterinsights.projects.locations.listAllFeedbackLabels

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

contactcenterinsights.projects.locations.operations.cancel

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

contactcenterinsights.projects.locations.operations.get

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

contactcenterinsights.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
}

contactcenterinsights.projects.locations.phraseMatchers.create

enum_GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroupType := [ "PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED", "ALL_OF", "ANY_OF" ]
enum_GoogleCloudContactcenterinsightsV1PhraseMatcherRoleMatch := [ "ROLE_UNSPECIFIED", "HUMAN_AGENT", "AUTOMATED_AGENT", "END_USER", "ANY_AGENT" ]
enum_GoogleCloudContactcenterinsightsV1PhraseMatcherType := [ "PHRASE_MATCHER_TYPE_UNSPECIFIED", "ALL_OF", "ANY_OF" ]

valid {
    input.Body.active == BOOLEAN
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].config.exactMatchConfig.caseSensitive == BOOLEAN
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].negated == BOOLEAN
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].query == STRING
    input.Body.phraseMatchRuleGroups[_].type == enum_GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroupType[_]
    input.Body.roleMatch == enum_GoogleCloudContactcenterinsightsV1PhraseMatcherRoleMatch[_]
    input.Body.type == enum_GoogleCloudContactcenterinsightsV1PhraseMatcherType[_]
    input.Body.versionTag == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.phraseMatchers.delete

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

contactcenterinsights.projects.locations.phraseMatchers.get

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

contactcenterinsights.projects.locations.phraseMatchers.list

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

contactcenterinsights.projects.locations.phraseMatchers.patch

enum_GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroupType := [ "PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED", "ALL_OF", "ANY_OF" ]
enum_GoogleCloudContactcenterinsightsV1PhraseMatcherRoleMatch := [ "ROLE_UNSPECIFIED", "HUMAN_AGENT", "AUTOMATED_AGENT", "END_USER", "ANY_AGENT" ]
enum_GoogleCloudContactcenterinsightsV1PhraseMatcherType := [ "PHRASE_MATCHER_TYPE_UNSPECIFIED", "ALL_OF", "ANY_OF" ]

valid {
    input.Body.active == BOOLEAN
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].config.exactMatchConfig.caseSensitive == BOOLEAN
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].negated == BOOLEAN
    input.Body.phraseMatchRuleGroups[_].phraseMatchRules[_].query == STRING
    input.Body.phraseMatchRuleGroups[_].type == enum_GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroupType[_]
    input.Body.roleMatch == enum_GoogleCloudContactcenterinsightsV1PhraseMatcherRoleMatch[_]
    input.Body.type == enum_GoogleCloudContactcenterinsightsV1PhraseMatcherType[_]
    input.Body.versionTag == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.create

valid {
    input.Body.description == STRING
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.Qs.qaScorecardId == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.delete

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

contactcenterinsights.projects.locations.qaScorecards.get

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

contactcenterinsights.projects.locations.qaScorecards.list

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

contactcenterinsights.projects.locations.qaScorecards.patch

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

contactcenterinsights.projects.locations.qaScorecards.revisions.create

valid {
    input.Body.name == STRING
    input.Body.snapshot.description == STRING
    input.Body.snapshot.displayName == STRING
    input.Body.snapshot.name == STRING
    input.ReqMap.parent == STRING
    input.Qs.qaScorecardRevisionId == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.revisions.delete

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

contactcenterinsights.projects.locations.qaScorecards.revisions.deploy

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

contactcenterinsights.projects.locations.qaScorecards.revisions.get

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

contactcenterinsights.projects.locations.qaScorecards.revisions.list

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

contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.create

enum_GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadataDatasetValidationWarnings := [ "DATASET_VALIDATION_WARNING_UNSPECIFIED", "TOO_MANY_INVALID_FEEDBACK_LABELS", "INSUFFICIENT_FEEDBACK_LABELS", "INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER", "ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER" ]

valid {
    input.Body.abbreviation == STRING
    input.Body.answerChoices[_].boolValue == BOOLEAN
    input.Body.answerChoices[_].key == STRING
    input.Body.answerChoices[_].naValue == BOOLEAN
    input.Body.answerChoices[_].numValue == NUMBER
    input.Body.answerChoices[_].score == NUMBER
    input.Body.answerChoices[_].strValue == STRING
    input.Body.answerInstructions == STRING
    input.Body.metrics == {}
    input.Body.name == STRING
    input.Body.order == INTEGER
    input.Body.questionBody == STRING
    input.Body.tags[_] == STRING
    input.Body.tuningMetadata.datasetValidationWarnings[_] == enum_GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadataDatasetValidationWarnings[_]
    input.Body.tuningMetadata.totalValidLabelCount == STRING
    input.Body.tuningMetadata.tuningError == STRING
    input.ReqMap.parent == STRING
    input.Qs.qaQuestionId == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.delete

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

contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.get

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

contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.list

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

contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.patch

enum_GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadataDatasetValidationWarnings := [ "DATASET_VALIDATION_WARNING_UNSPECIFIED", "TOO_MANY_INVALID_FEEDBACK_LABELS", "INSUFFICIENT_FEEDBACK_LABELS", "INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER", "ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER" ]

valid {
    input.Body.abbreviation == STRING
    input.Body.answerChoices[_].boolValue == BOOLEAN
    input.Body.answerChoices[_].key == STRING
    input.Body.answerChoices[_].naValue == BOOLEAN
    input.Body.answerChoices[_].numValue == NUMBER
    input.Body.answerChoices[_].score == NUMBER
    input.Body.answerChoices[_].strValue == STRING
    input.Body.answerInstructions == STRING
    input.Body.metrics == {}
    input.Body.name == STRING
    input.Body.order == INTEGER
    input.Body.questionBody == STRING
    input.Body.tags[_] == STRING
    input.Body.tuningMetadata.datasetValidationWarnings[_] == enum_GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadataDatasetValidationWarnings[_]
    input.Body.tuningMetadata.totalValidLabelCount == STRING
    input.Body.tuningMetadata.tuningError == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.revisions.tuneQaScorecardRevision

valid {
    input.Body.filter == STRING
    input.Body.validateOnly == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.qaScorecards.revisions.undeploy

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

contactcenterinsights.projects.locations.queryMetrics

enum_GoogleCloudContactcenterinsightsV1DimensionDimensionKey := [ "DIMENSION_KEY_UNSPECIFIED", "ISSUE", "AGENT", "AGENT_TEAM", "QA_QUESTION_ID", "QA_QUESTION_ANSWER_VALUE", "CONVERSATION_PROFILE_ID" ]
enum_GoogleCloudContactcenterinsightsV1QueryMetricsRequestTimeGranularity := [ "TIME_GRANULARITY_UNSPECIFIED", "NONE", "DAILY", "HOURLY", "PER_MINUTE", "PER_5_MINUTES", "MONTHLY" ]

valid {
    input.Body.dimensions[_].dimensionKey == enum_GoogleCloudContactcenterinsightsV1DimensionDimensionKey[_]
    input.Body.filter == STRING
    input.Body.measureMask == STRING
    input.Body.timeGranularity == enum_GoogleCloudContactcenterinsightsV1QueryMetricsRequestTimeGranularity[_]
    input.ReqMap.location == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.updateSettings

enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel := [ "SUMMARIZATION_MODEL_UNSPECIFIED", "BASELINE_MODEL", "BASELINE_MODEL_V2_0" ]

valid {
    input.Body.analysisConfig.annotatorSelector.issueModels[_] == STRING
    input.Body.analysisConfig.annotatorSelector.phraseMatchers[_] == STRING
    input.Body.analysisConfig.annotatorSelector.qaConfig.scorecardList.qaScorecardRevisions[_] == STRING
    input.Body.analysisConfig.annotatorSelector.runEntityAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runIntentAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runInterruptionAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runIssueModelAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runPhraseMatcherAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runQaAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runSentimentAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runSilenceAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.runSummarizationAnnotator == BOOLEAN
    input.Body.analysisConfig.annotatorSelector.summarizationConfig.conversationProfile == STRING
    input.Body.analysisConfig.annotatorSelector.summarizationConfig.summarizationModel == enum_GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfigSummarizationModel[_]
    input.Body.analysisConfig.runtimeIntegrationAnalysisPercentage == NUMBER
    input.Body.analysisConfig.uploadConversationAnalysisPercentage == NUMBER
    input.Body.conversationTtl == STRING
    input.Body.languageCode == STRING
    input.Body.name == STRING
    input.Body.pubsubNotificationSettings.STRING == STRING
    input.Body.redactionConfig.deidentifyTemplate == STRING
    input.Body.redactionConfig.inspectTemplate == STRING
    input.Body.speechConfig.speechRecognizer == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

contactcenterinsights.projects.locations.views.create

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

contactcenterinsights.projects.locations.views.delete

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

contactcenterinsights.projects.locations.views.get

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

contactcenterinsights.projects.locations.views.list

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

contactcenterinsights.projects.locations.views.patch

valid {
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.Body.value == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}