ActivateMessageTemplate

valid {
    input.Body.versionNumber == LONG
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIAgent

enum_AIAgentAssociationConfigurationType := [ "KNOWLEDGE_BASE" ]
enum_AIAgentType := [ "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE" ]
enum_KnowledgeBaseSearchType := [ "HYBRID", "SEMANTIC" ]
enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.answerGenerationAIGuardrailId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.answerGenerationAIPromptId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.answerRecommendationAIAgentConfiguration.intentLabelingGenerationAIPromptId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.locale == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.queryReformulationAIPromptId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.answerGenerationAIGuardrailId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.answerGenerationAIPromptId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.manualSearchAIAgentConfiguration.locale == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServiceAIGuardrailId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServiceAnswerGenerationAIPromptId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServicePreProcessingAIPromptId == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.tags.STRING == STRING
    input.Body.type == enum_AIAgentType[_]
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIAgentVersion

valid {
    input.Body.clientToken == STRING
    input.Body.modifiedTime == TIMESTAMP
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIGuardrail

enum_GuardrailContentFilterType := [ "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK" ]
enum_GuardrailContextualGroundingFilterType := [ "GROUNDING", "RELEVANCE" ]
enum_GuardrailFilterStrength := [ "NONE", "LOW", "MEDIUM", "HIGH" ]
enum_GuardrailManagedWordsType := [ "PROFANITY" ]
enum_GuardrailPiiEntityType := [ "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER" ]
enum_GuardrailSensitiveInformationAction := [ "BLOCK", "ANONYMIZE" ]
enum_GuardrailTopicType := [ "DENY" ]
enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.blockedInputMessaging == STRING
    input.Body.blockedOutputsMessaging == STRING
    input.Body.clientToken == STRING
    input.Body.contentPolicyConfig.filtersConfig[_].inputStrength == enum_GuardrailFilterStrength[_]
    input.Body.contentPolicyConfig.filtersConfig[_].outputStrength == enum_GuardrailFilterStrength[_]
    input.Body.contentPolicyConfig.filtersConfig[_].type == enum_GuardrailContentFilterType[_]
    input.Body.contextualGroundingPolicyConfig.filtersConfig[_].threshold == DOUBLE
    input.Body.contextualGroundingPolicyConfig.filtersConfig[_].type == enum_GuardrailContextualGroundingFilterType[_]
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.sensitiveInformationPolicyConfig.piiEntitiesConfig[_].action == enum_GuardrailSensitiveInformationAction[_]
    input.Body.sensitiveInformationPolicyConfig.piiEntitiesConfig[_].type == enum_GuardrailPiiEntityType[_]
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].action == enum_GuardrailSensitiveInformationAction[_]
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].description == STRING
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].name == STRING
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].pattern == STRING
    input.Body.tags.STRING == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].definition == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].examples[_] == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].name == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].type == enum_GuardrailTopicType[_]
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.Body.wordPolicyConfig.managedWordListsConfig[_].type == enum_GuardrailManagedWordsType[_]
    input.Body.wordPolicyConfig.wordsConfig[_].text == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIGuardrailVersion

valid {
    input.Body.clientToken == STRING
    input.Body.modifiedTime == TIMESTAMP
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIPrompt

enum_AIPromptAPIFormat := [ "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS" ]
enum_AIPromptTemplateType := [ "TEXT" ]
enum_AIPromptType := [ "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION" ]
enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.apiFormat == enum_AIPromptAPIFormat[_]
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.modelId == STRING
    input.Body.name == STRING
    input.Body.tags.STRING == STRING
    input.Body.templateConfiguration.textFullAIPromptEditTemplateConfiguration.text == STRING
    input.Body.templateType == enum_AIPromptTemplateType[_]
    input.Body.type == enum_AIPromptType[_]
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAIPromptVersion

valid {
    input.Body.clientToken == STRING
    input.Body.modifiedTime == TIMESTAMP
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAssistant

enum_AssistantType := [ "AGENT" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.serverSideEncryptionConfiguration.kmsKeyId == STRING
    input.Body.tags.STRING == STRING
    input.Body.type == enum_AssistantType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAssistantAssociation

enum_AssociationType := [ "KNOWLEDGE_BASE" ]

valid {
    input.Body.association.knowledgeBaseId == STRING
    input.Body.associationType == enum_AssociationType[_]
    input.Body.clientToken == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateContent

valid {
    input.Body.clientToken == STRING
    input.Body.metadata.STRING == STRING
    input.Body.name == STRING
    input.Body.overrideLinkOutUri == STRING
    input.Body.tags.STRING == STRING
    input.Body.title == STRING
    input.Body.uploadId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateContentAssociation

enum_ContentAssociationType := [ "AMAZON_CONNECT_GUIDE" ]

valid {
    input.Body.association.amazonConnectGuideAssociation.flowId == STRING
    input.Body.associationType == enum_ContentAssociationType[_]
    input.Body.clientToken == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateKnowledgeBase

enum_ChunkingStrategy := [ "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC" ]
enum_KnowledgeBaseType := [ "EXTERNAL", "CUSTOM", "QUICK_RESPONSES", "MESSAGE_TEMPLATES", "MANAGED" ]
enum_ParsingStrategy := [ "BEDROCK_FOUNDATION_MODEL" ]
enum_WebScopeType := [ "HOST_ONLY", "SUBDOMAINS" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.knowledgeBaseType == enum_KnowledgeBaseType[_]
    input.Body.name == STRING
    input.Body.renderingConfiguration.templateUri == STRING
    input.Body.serverSideEncryptionConfiguration.kmsKeyId == STRING
    input.Body.sourceConfiguration.appIntegrations.appIntegrationArn == STRING
    input.Body.sourceConfiguration.appIntegrations.objectFields[_] == STRING
    input.Body.sourceConfiguration.managedSourceConfiguration.webCrawlerConfiguration.crawlerLimits.rateLimit == INTEGER
    input.Body.sourceConfiguration.managedSourceConfiguration.webCrawlerConfiguration.exclusionFilters[_] == STRING
    input.Body.sourceConfiguration.managedSourceConfiguration.webCrawlerConfiguration.inclusionFilters[_] == STRING
    input.Body.sourceConfiguration.managedSourceConfiguration.webCrawlerConfiguration.scope == enum_WebScopeType[_]
    input.Body.sourceConfiguration.managedSourceConfiguration.webCrawlerConfiguration.urlConfiguration.seedUrls[_].url == STRING
    input.Body.tags.STRING == STRING
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.chunkingStrategy == enum_ChunkingStrategy[_]
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.fixedSizeChunkingConfiguration.maxTokens == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.fixedSizeChunkingConfiguration.overlapPercentage == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.hierarchicalChunkingConfiguration.levelConfigurations[_].maxTokens == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.hierarchicalChunkingConfiguration.overlapTokens == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.semanticChunkingConfiguration.breakpointPercentileThreshold == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.semanticChunkingConfiguration.bufferSize == INTEGER
    input.Body.vectorIngestionConfiguration.chunkingConfiguration.semanticChunkingConfiguration.maxTokens == INTEGER
    input.Body.vectorIngestionConfiguration.parsingConfiguration.bedrockFoundationModelConfiguration.modelArn == STRING
    input.Body.vectorIngestionConfiguration.parsingConfiguration.bedrockFoundationModelConfiguration.parsingPrompt.parsingPromptText == STRING
    input.Body.vectorIngestionConfiguration.parsingConfiguration.parsingStrategy == enum_ParsingStrategy[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateMessageTemplate

enum_ChannelSubtype := [ "EMAIL", "SMS" ]

valid {
    input.Body.channelSubtype == enum_ChannelSubtype[_]
    input.Body.clientToken == STRING
    input.Body.content.email.body.html.content == STRING
    input.Body.content.email.body.plainText.content == STRING
    input.Body.content.email.headers[_].name == STRING
    input.Body.content.email.headers[_].value == STRING
    input.Body.content.email.subject == STRING
    input.Body.content.sms.body.plainText.content == STRING
    input.Body.defaultAttributes.agentAttributes.firstName == STRING
    input.Body.defaultAttributes.agentAttributes.lastName == STRING
    input.Body.defaultAttributes.customAttributes.STRING == STRING
    input.Body.defaultAttributes.customerProfileAttributes.accountNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.additionalInformation == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.birthDate == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessEmailAddress == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessPhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.city == STRING
    input.Body.defaultAttributes.customerProfileAttributes.country == STRING
    input.Body.defaultAttributes.customerProfileAttributes.county == STRING
    input.Body.defaultAttributes.customerProfileAttributes.custom.STRING == STRING
    input.Body.defaultAttributes.customerProfileAttributes.emailAddress == STRING
    input.Body.defaultAttributes.customerProfileAttributes.firstName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.gender == STRING
    input.Body.defaultAttributes.customerProfileAttributes.homePhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.lastName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.middleName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mobilePhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.partyType == STRING
    input.Body.defaultAttributes.customerProfileAttributes.phoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.postalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.profileARN == STRING
    input.Body.defaultAttributes.customerProfileAttributes.profileId == STRING
    input.Body.defaultAttributes.customerProfileAttributes.province == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.state == STRING
    input.Body.defaultAttributes.systemAttributes.customerEndpoint.address == STRING
    input.Body.defaultAttributes.systemAttributes.name == STRING
    input.Body.defaultAttributes.systemAttributes.systemEndpoint.address == STRING
    input.Body.description == STRING
    input.Body.groupingConfiguration.criteria == STRING
    input.Body.groupingConfiguration.values[_] == STRING
    input.Body.language == STRING
    input.Body.name == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateMessageTemplateAttachment

enum_ContentDisposition := [ "ATTACHMENT" ]

valid {
    input.Body.body == STRING
    input.Body.clientToken == STRING
    input.Body.contentDisposition == enum_ContentDisposition[_]
    input.Body.name == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateMessageTemplateVersion

valid {
    input.Body.messageTemplateContentSha256 == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateQuickResponse

valid {
    input.Body.channels[_] == STRING
    input.Body.clientToken == STRING
    input.Body.content.content == STRING
    input.Body.contentType == STRING
    input.Body.description == STRING
    input.Body.groupingConfiguration.criteria == STRING
    input.Body.groupingConfiguration.values[_] == STRING
    input.Body.isActive == BOOLEAN
    input.Body.language == STRING
    input.Body.name == STRING
    input.Body.shortcutKey == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSession

valid {
    input.Body.aiAgentConfiguration.MANUAL_SEARCH.aiAgentId == STRING
    input.Body.aiAgentConfiguration.ANSWER_RECOMMENDATION.aiAgentId == STRING
    input.Body.aiAgentConfiguration.SELF_SERVICE.aiAgentId == STRING
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.tagFilter.andConditions[_].key == STRING
    input.Body.tagFilter.andConditions[_].value == STRING
    input.Body.tagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.tagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.tagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.tagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.tagFilter.tagCondition.key == STRING
    input.Body.tagFilter.tagCondition.value == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeactivateMessageTemplate

valid {
    input.Body.versionNumber == LONG
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIAgent

valid {
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIAgentVersion

valid {
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ReqMap.versionNumber == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIGuardrail

valid {
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIGuardrailVersion

valid {
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.ReqMap.versionNumber == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIPrompt

valid {
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAIPromptVersion

valid {
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.ReqMap.versionNumber == LONG
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAssistant

valid {
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAssistantAssociation

valid {
    input.ReqMap.assistantAssociationId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteContent

valid {
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteContentAssociation

valid {
    input.ReqMap.contentAssociationId == STRING
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteImportJob

valid {
    input.ReqMap.importJobId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteKnowledgeBase

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteMessageTemplate

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteMessageTemplateAttachment

valid {
    input.ReqMap.attachmentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteQuickResponse

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.quickResponseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAIAgent

valid {
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAIGuardrail

valid {
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAIPrompt

valid {
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAssistant

valid {
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAssistantAssociation

valid {
    input.ReqMap.assistantAssociationId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetContent

valid {
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetContentAssociation

valid {
    input.ReqMap.contentAssociationId == STRING
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetContentSummary

valid {
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetImportJob

valid {
    input.ReqMap.importJobId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetKnowledgeBase

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetMessageTemplate

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNextMessage

valid {
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.Qs.nextMessageToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetQuickResponse

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.quickResponseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetRecommendations

valid {
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.waitTimeSeconds == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSession

valid {
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIAgentVersions

enum_Origin := [ "SYSTEM", "CUSTOMER" ]

valid {
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.origin == enum_Origin[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIAgents

enum_Origin := [ "SYSTEM", "CUSTOMER" ]

valid {
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.origin == enum_Origin[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIGuardrailVersions

valid {
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIGuardrails

valid {
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIPromptVersions

enum_Origin := [ "SYSTEM", "CUSTOMER" ]

valid {
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.origin == enum_Origin[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAIPrompts

enum_Origin := [ "SYSTEM", "CUSTOMER" ]

valid {
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.origin == enum_Origin[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAssistantAssociations

valid {
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAssistants

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListContentAssociations

valid {
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListContents

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListImportJobs

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListKnowledgeBases

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMessageTemplateVersions

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMessageTemplates

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMessages

valid {
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListQuickResponses

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTagsForResource

valid {
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

NotifyRecommendationsReceived

valid {
    input.Body.recommendationIds[_] == STRING
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutFeedback

enum_Relevance := [ "HELPFUL", "NOT_HELPFUL" ]
enum_TargetType := [ "RECOMMENDATION", "RESULT" ]

valid {
    input.Body.contentFeedback.generativeContentFeedbackData.relevance == enum_Relevance[_]
    input.Body.targetId == STRING
    input.Body.targetType == enum_TargetType[_]
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

QueryAssistant

enum_KnowledgeBaseSearchType := [ "HYBRID", "SEMANTIC" ]
enum_QueryConditionComparisonOperator := [ "EQUALS" ]
enum_QueryConditionFieldName := [ "RESULT_TYPE" ]

valid {
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.queryCondition[_].single.comparator == enum_QueryConditionComparisonOperator[_]
    input.Body.queryCondition[_].single.field == enum_QueryConditionFieldName[_]
    input.Body.queryCondition[_].single.value == STRING
    input.Body.queryInputData.intentInputData.intentId == STRING
    input.Body.queryInputData.queryTextInputData.text == STRING
    input.Body.queryText == STRING
    input.Body.sessionId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RemoveAssistantAIAgent

enum_AIAgentType := [ "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE" ]

valid {
    input.ReqMap.assistantId == STRING
    input.Qs.aiAgentType == enum_AIAgentType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RemoveKnowledgeBaseTemplateUri

valid {
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RenderMessageTemplate

valid {
    input.Body.attributes.agentAttributes.firstName == STRING
    input.Body.attributes.agentAttributes.lastName == STRING
    input.Body.attributes.customAttributes.STRING == STRING
    input.Body.attributes.customerProfileAttributes.accountNumber == STRING
    input.Body.attributes.customerProfileAttributes.additionalInformation == STRING
    input.Body.attributes.customerProfileAttributes.address1 == STRING
    input.Body.attributes.customerProfileAttributes.address2 == STRING
    input.Body.attributes.customerProfileAttributes.address3 == STRING
    input.Body.attributes.customerProfileAttributes.address4 == STRING
    input.Body.attributes.customerProfileAttributes.billingAddress1 == STRING
    input.Body.attributes.customerProfileAttributes.billingAddress2 == STRING
    input.Body.attributes.customerProfileAttributes.billingAddress3 == STRING
    input.Body.attributes.customerProfileAttributes.billingAddress4 == STRING
    input.Body.attributes.customerProfileAttributes.billingCity == STRING
    input.Body.attributes.customerProfileAttributes.billingCountry == STRING
    input.Body.attributes.customerProfileAttributes.billingCounty == STRING
    input.Body.attributes.customerProfileAttributes.billingPostalCode == STRING
    input.Body.attributes.customerProfileAttributes.billingProvince == STRING
    input.Body.attributes.customerProfileAttributes.billingState == STRING
    input.Body.attributes.customerProfileAttributes.birthDate == STRING
    input.Body.attributes.customerProfileAttributes.businessEmailAddress == STRING
    input.Body.attributes.customerProfileAttributes.businessName == STRING
    input.Body.attributes.customerProfileAttributes.businessPhoneNumber == STRING
    input.Body.attributes.customerProfileAttributes.city == STRING
    input.Body.attributes.customerProfileAttributes.country == STRING
    input.Body.attributes.customerProfileAttributes.county == STRING
    input.Body.attributes.customerProfileAttributes.custom.STRING == STRING
    input.Body.attributes.customerProfileAttributes.emailAddress == STRING
    input.Body.attributes.customerProfileAttributes.firstName == STRING
    input.Body.attributes.customerProfileAttributes.gender == STRING
    input.Body.attributes.customerProfileAttributes.homePhoneNumber == STRING
    input.Body.attributes.customerProfileAttributes.lastName == STRING
    input.Body.attributes.customerProfileAttributes.mailingAddress1 == STRING
    input.Body.attributes.customerProfileAttributes.mailingAddress2 == STRING
    input.Body.attributes.customerProfileAttributes.mailingAddress3 == STRING
    input.Body.attributes.customerProfileAttributes.mailingAddress4 == STRING
    input.Body.attributes.customerProfileAttributes.mailingCity == STRING
    input.Body.attributes.customerProfileAttributes.mailingCountry == STRING
    input.Body.attributes.customerProfileAttributes.mailingCounty == STRING
    input.Body.attributes.customerProfileAttributes.mailingPostalCode == STRING
    input.Body.attributes.customerProfileAttributes.mailingProvince == STRING
    input.Body.attributes.customerProfileAttributes.mailingState == STRING
    input.Body.attributes.customerProfileAttributes.middleName == STRING
    input.Body.attributes.customerProfileAttributes.mobilePhoneNumber == STRING
    input.Body.attributes.customerProfileAttributes.partyType == STRING
    input.Body.attributes.customerProfileAttributes.phoneNumber == STRING
    input.Body.attributes.customerProfileAttributes.postalCode == STRING
    input.Body.attributes.customerProfileAttributes.profileARN == STRING
    input.Body.attributes.customerProfileAttributes.profileId == STRING
    input.Body.attributes.customerProfileAttributes.province == STRING
    input.Body.attributes.customerProfileAttributes.shippingAddress1 == STRING
    input.Body.attributes.customerProfileAttributes.shippingAddress2 == STRING
    input.Body.attributes.customerProfileAttributes.shippingAddress3 == STRING
    input.Body.attributes.customerProfileAttributes.shippingAddress4 == STRING
    input.Body.attributes.customerProfileAttributes.shippingCity == STRING
    input.Body.attributes.customerProfileAttributes.shippingCountry == STRING
    input.Body.attributes.customerProfileAttributes.shippingCounty == STRING
    input.Body.attributes.customerProfileAttributes.shippingPostalCode == STRING
    input.Body.attributes.customerProfileAttributes.shippingProvince == STRING
    input.Body.attributes.customerProfileAttributes.shippingState == STRING
    input.Body.attributes.customerProfileAttributes.state == STRING
    input.Body.attributes.systemAttributes.customerEndpoint.address == STRING
    input.Body.attributes.systemAttributes.name == STRING
    input.Body.attributes.systemAttributes.systemEndpoint.address == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchContent

enum_FilterField := [ "NAME" ]
enum_FilterOperator := [ "EQUALS" ]

valid {
    input.Body.searchExpression.filters[_].field == enum_FilterField[_]
    input.Body.searchExpression.filters[_].operator == enum_FilterOperator[_]
    input.Body.searchExpression.filters[_].value == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchMessageTemplates

enum_MessageTemplateFilterOperator := [ "EQUALS", "PREFIX" ]
enum_MessageTemplateQueryOperator := [ "CONTAINS", "CONTAINS_AND_PREFIX" ]
enum_Order := [ "ASC", "DESC" ]
enum_Priority := [ "HIGH", "MEDIUM", "LOW" ]

valid {
    input.Body.searchExpression.filters[_].includeNoExistence == BOOLEAN
    input.Body.searchExpression.filters[_].name == STRING
    input.Body.searchExpression.filters[_].operator == enum_MessageTemplateFilterOperator[_]
    input.Body.searchExpression.filters[_].values[_] == STRING
    input.Body.searchExpression.orderOnField.name == STRING
    input.Body.searchExpression.orderOnField.order == enum_Order[_]
    input.Body.searchExpression.queries[_].allowFuzziness == BOOLEAN
    input.Body.searchExpression.queries[_].name == STRING
    input.Body.searchExpression.queries[_].operator == enum_MessageTemplateQueryOperator[_]
    input.Body.searchExpression.queries[_].priority == enum_Priority[_]
    input.Body.searchExpression.queries[_].values[_] == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchQuickResponses

enum_Order := [ "ASC", "DESC" ]
enum_Priority := [ "HIGH", "MEDIUM", "LOW" ]
enum_QuickResponseFilterOperator := [ "EQUALS", "PREFIX" ]
enum_QuickResponseQueryOperator := [ "CONTAINS", "CONTAINS_AND_PREFIX" ]

valid {
    input.Body.attributes.STRING == STRING
    input.Body.searchExpression.filters[_].includeNoExistence == BOOLEAN
    input.Body.searchExpression.filters[_].name == STRING
    input.Body.searchExpression.filters[_].operator == enum_QuickResponseFilterOperator[_]
    input.Body.searchExpression.filters[_].values[_] == STRING
    input.Body.searchExpression.orderOnField.name == STRING
    input.Body.searchExpression.orderOnField.order == enum_Order[_]
    input.Body.searchExpression.queries[_].allowFuzziness == BOOLEAN
    input.Body.searchExpression.queries[_].name == STRING
    input.Body.searchExpression.queries[_].operator == enum_QuickResponseQueryOperator[_]
    input.Body.searchExpression.queries[_].priority == enum_Priority[_]
    input.Body.searchExpression.queries[_].values[_] == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchSessions

enum_FilterField := [ "NAME" ]
enum_FilterOperator := [ "EQUALS" ]

valid {
    input.Body.searchExpression.filters[_].field == enum_FilterField[_]
    input.Body.searchExpression.filters[_].operator == enum_FilterOperator[_]
    input.Body.searchExpression.filters[_].value == STRING
    input.ReqMap.assistantId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SendMessage

enum_MessageType := [ "TEXT" ]

valid {
    input.Body.clientToken == STRING
    input.Body.conversationContext.selfServiceConversationHistory[_].botResponse == STRING
    input.Body.conversationContext.selfServiceConversationHistory[_].inputTranscript == STRING
    input.Body.conversationContext.selfServiceConversationHistory[_].turnNumber == INTEGER
    input.Body.message.value.text.value == STRING
    input.Body.type == enum_MessageType[_]
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartContentUpload

valid {
    input.Body.contentType == STRING
    input.Body.presignedUrlTimeToLive == INTEGER
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartImportJob

enum_ExternalSource := [ "AMAZON_CONNECT" ]
enum_ImportJobType := [ "QUICK_RESPONSES" ]

valid {
    input.Body.clientToken == STRING
    input.Body.externalSourceConfiguration.configuration.connectConfiguration.instanceId == STRING
    input.Body.externalSourceConfiguration.source == enum_ExternalSource[_]
    input.Body.importJobType == enum_ImportJobType[_]
    input.Body.metadata.STRING == STRING
    input.Body.uploadId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UntagResource

valid {
    input.ReqMap.resourceArn == STRING
    input.Qs.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateAIAgent

enum_AIAgentAssociationConfigurationType := [ "KNOWLEDGE_BASE" ]
enum_KnowledgeBaseSearchType := [ "HYBRID", "SEMANTIC" ]
enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.answerGenerationAIGuardrailId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.answerGenerationAIPromptId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.answerRecommendationAIAgentConfiguration.intentLabelingGenerationAIPromptId == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.locale == STRING
    input.Body.configuration.answerRecommendationAIAgentConfiguration.queryReformulationAIPromptId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.answerGenerationAIGuardrailId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.answerGenerationAIPromptId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.manualSearchAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.manualSearchAIAgentConfiguration.locale == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.andConditions[_].value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.key == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.contentTagFilter.tagCondition.value == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.maxResults == INTEGER
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationConfigurationData.knowledgeBaseAssociationConfigurationData.overrideKnowledgeBaseSearchType == enum_KnowledgeBaseSearchType[_]
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.associationConfigurations[_].associationType == enum_AIAgentAssociationConfigurationType[_]
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServiceAIGuardrailId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServiceAnswerGenerationAIPromptId == STRING
    input.Body.configuration.selfServiceAIAgentConfiguration.selfServicePreProcessingAIPromptId == STRING
    input.Body.description == STRING
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.ReqMap.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateAIGuardrail

enum_GuardrailContentFilterType := [ "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK" ]
enum_GuardrailContextualGroundingFilterType := [ "GROUNDING", "RELEVANCE" ]
enum_GuardrailFilterStrength := [ "NONE", "LOW", "MEDIUM", "HIGH" ]
enum_GuardrailManagedWordsType := [ "PROFANITY" ]
enum_GuardrailPiiEntityType := [ "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER" ]
enum_GuardrailSensitiveInformationAction := [ "BLOCK", "ANONYMIZE" ]
enum_GuardrailTopicType := [ "DENY" ]
enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.blockedInputMessaging == STRING
    input.Body.blockedOutputsMessaging == STRING
    input.Body.clientToken == STRING
    input.Body.contentPolicyConfig.filtersConfig[_].inputStrength == enum_GuardrailFilterStrength[_]
    input.Body.contentPolicyConfig.filtersConfig[_].outputStrength == enum_GuardrailFilterStrength[_]
    input.Body.contentPolicyConfig.filtersConfig[_].type == enum_GuardrailContentFilterType[_]
    input.Body.contextualGroundingPolicyConfig.filtersConfig[_].threshold == DOUBLE
    input.Body.contextualGroundingPolicyConfig.filtersConfig[_].type == enum_GuardrailContextualGroundingFilterType[_]
    input.Body.description == STRING
    input.Body.sensitiveInformationPolicyConfig.piiEntitiesConfig[_].action == enum_GuardrailSensitiveInformationAction[_]
    input.Body.sensitiveInformationPolicyConfig.piiEntitiesConfig[_].type == enum_GuardrailPiiEntityType[_]
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].action == enum_GuardrailSensitiveInformationAction[_]
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].description == STRING
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].name == STRING
    input.Body.sensitiveInformationPolicyConfig.regexesConfig[_].pattern == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].definition == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].examples[_] == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].name == STRING
    input.Body.topicPolicyConfig.topicsConfig[_].type == enum_GuardrailTopicType[_]
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.Body.wordPolicyConfig.managedWordListsConfig[_].type == enum_GuardrailManagedWordsType[_]
    input.Body.wordPolicyConfig.wordsConfig[_].text == STRING
    input.ReqMap.aiGuardrailId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateAIPrompt

enum_VisibilityStatus := [ "SAVED", "PUBLISHED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.templateConfiguration.textFullAIPromptEditTemplateConfiguration.text == STRING
    input.Body.visibilityStatus == enum_VisibilityStatus[_]
    input.ReqMap.aiPromptId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateAssistantAIAgent

enum_AIAgentType := [ "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE" ]

valid {
    input.Body.aiAgentType == enum_AIAgentType[_]
    input.Body.configuration.aiAgentId == STRING
    input.ReqMap.assistantId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateContent

valid {
    input.Body.metadata.STRING == STRING
    input.Body.overrideLinkOutUri == STRING
    input.Body.removeOverrideLinkOutUri == BOOLEAN
    input.Body.revisionId == STRING
    input.Body.title == STRING
    input.Body.uploadId == STRING
    input.ReqMap.contentId == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateKnowledgeBaseTemplateUri

valid {
    input.Body.templateUri == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateMessageTemplate

valid {
    input.Body.content.email.body.html.content == STRING
    input.Body.content.email.body.plainText.content == STRING
    input.Body.content.email.headers[_].name == STRING
    input.Body.content.email.headers[_].value == STRING
    input.Body.content.email.subject == STRING
    input.Body.content.sms.body.plainText.content == STRING
    input.Body.defaultAttributes.agentAttributes.firstName == STRING
    input.Body.defaultAttributes.agentAttributes.lastName == STRING
    input.Body.defaultAttributes.customAttributes.STRING == STRING
    input.Body.defaultAttributes.customerProfileAttributes.accountNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.additionalInformation == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.address4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.billingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.birthDate == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessEmailAddress == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.businessPhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.city == STRING
    input.Body.defaultAttributes.customerProfileAttributes.country == STRING
    input.Body.defaultAttributes.customerProfileAttributes.county == STRING
    input.Body.defaultAttributes.customerProfileAttributes.custom.STRING == STRING
    input.Body.defaultAttributes.customerProfileAttributes.emailAddress == STRING
    input.Body.defaultAttributes.customerProfileAttributes.firstName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.gender == STRING
    input.Body.defaultAttributes.customerProfileAttributes.homePhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.lastName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mailingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.middleName == STRING
    input.Body.defaultAttributes.customerProfileAttributes.mobilePhoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.partyType == STRING
    input.Body.defaultAttributes.customerProfileAttributes.phoneNumber == STRING
    input.Body.defaultAttributes.customerProfileAttributes.postalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.profileARN == STRING
    input.Body.defaultAttributes.customerProfileAttributes.profileId == STRING
    input.Body.defaultAttributes.customerProfileAttributes.province == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress1 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress2 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress3 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingAddress4 == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCity == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCountry == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingCounty == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingPostalCode == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingProvince == STRING
    input.Body.defaultAttributes.customerProfileAttributes.shippingState == STRING
    input.Body.defaultAttributes.customerProfileAttributes.state == STRING
    input.Body.defaultAttributes.systemAttributes.customerEndpoint.address == STRING
    input.Body.defaultAttributes.systemAttributes.name == STRING
    input.Body.defaultAttributes.systemAttributes.systemEndpoint.address == STRING
    input.Body.language == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateMessageTemplateMetadata

valid {
    input.Body.description == STRING
    input.Body.groupingConfiguration.criteria == STRING
    input.Body.groupingConfiguration.values[_] == STRING
    input.Body.name == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.messageTemplateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateQuickResponse

valid {
    input.Body.channels[_] == STRING
    input.Body.content.content == STRING
    input.Body.contentType == STRING
    input.Body.description == STRING
    input.Body.groupingConfiguration.criteria == STRING
    input.Body.groupingConfiguration.values[_] == STRING
    input.Body.isActive == BOOLEAN
    input.Body.language == STRING
    input.Body.name == STRING
    input.Body.removeDescription == BOOLEAN
    input.Body.removeGroupingConfiguration == BOOLEAN
    input.Body.removeShortcutKey == BOOLEAN
    input.Body.shortcutKey == STRING
    input.ReqMap.knowledgeBaseId == STRING
    input.ReqMap.quickResponseId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSession

valid {
    input.Body.aiAgentConfiguration.MANUAL_SEARCH.aiAgentId == STRING
    input.Body.aiAgentConfiguration.ANSWER_RECOMMENDATION.aiAgentId == STRING
    input.Body.aiAgentConfiguration.SELF_SERVICE.aiAgentId == STRING
    input.Body.description == STRING
    input.Body.tagFilter.andConditions[_].key == STRING
    input.Body.tagFilter.andConditions[_].value == STRING
    input.Body.tagFilter.orConditions[_].andConditions[_].key == STRING
    input.Body.tagFilter.orConditions[_].andConditions[_].value == STRING
    input.Body.tagFilter.orConditions[_].tagCondition.key == STRING
    input.Body.tagFilter.orConditions[_].tagCondition.value == STRING
    input.Body.tagFilter.tagCondition.key == STRING
    input.Body.tagFilter.tagCondition.value == STRING
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSessionData

enum_SessionDataNamespace := [ "Custom" ]

valid {
    input.Body.data[_].key == STRING
    input.Body.data[_].value.stringValue == STRING
    input.Body.namespace == enum_SessionDataNamespace[_]
    input.ReqMap.assistantId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}