CONNECTCASES

BatchGetField

valid {
    input.Body.fields[_].id == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

BatchPutFieldOptions

valid {
    input.Body.options[_].active == BOOLEAN
    input.Body.options[_].name == STRING
    input.Body.options[_].value == STRING
    input.ReqMap.domainId == STRING
    input.ReqMap.fieldId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateCase

valid {
    input.Body.clientToken == STRING
    input.Body.fields[_].id == STRING
    input.Body.fields[_].value.booleanValue == BOOLEAN
    input.Body.fields[_].value.doubleValue == DOUBLE
    input.Body.fields[_].value.emptyValue == {}
    input.Body.fields[_].value.stringValue == STRING
    input.Body.fields[_].value.userArnValue == STRING
    input.Body.performedBy.userArn == STRING
    input.Body.templateId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDomain

valid {
    input.Body.name == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateField

enum_FieldType := [ "Text", "Number", "Boolean", "DateTime", "SingleSelect", "Url", "User" ]

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.type == enum_FieldType[_]
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateLayout

valid {
    input.Body.content.basic.moreInfo.sections[_].fieldGroup.fields[_].id == STRING
    input.Body.content.basic.moreInfo.sections[_].fieldGroup.name == STRING
    input.Body.content.basic.topPanel.sections[_].fieldGroup.fields[_].id == STRING
    input.Body.content.basic.topPanel.sections[_].fieldGroup.name == STRING
    input.Body.name == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateRelatedItem

enum_CommentBodyTextType := [ "Text/Plain" ]
enum_RelatedItemType := [ "Contact", "Comment" ]

valid {
    input.Body.content.comment.body == STRING
    input.Body.content.comment.contentType == enum_CommentBodyTextType[_]
    input.Body.content.contact.contactArn == STRING
    input.Body.performedBy.userArn == STRING
    input.Body.type == enum_RelatedItemType[_]
    input.ReqMap.caseId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateTemplate

enum_TemplateStatus := [ "Active", "Inactive" ]

valid {
    input.Body.description == STRING
    input.Body.layoutConfiguration.defaultLayout == STRING
    input.Body.name == STRING
    input.Body.requiredFields[_].fieldId == STRING
    input.Body.status == enum_TemplateStatus[_]
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteDomain

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

GetCase

valid {
    input.Body.fields[_].id == STRING
    input.Body.nextToken == STRING
    input.ReqMap.caseId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetCaseAuditEvents

valid {
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.ReqMap.caseId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetCaseEventConfiguration

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

GetDomain

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

GetLayout

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

GetTemplate

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

ListCasesForContact

valid {
    input.Body.contactArn == STRING
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListDomains

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

ListFieldOptions

valid {
    input.ReqMap.domainId == STRING
    input.ReqMap.fieldId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.values[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListFields

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

ListLayouts

valid {
    input.ReqMap.domainId == 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.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTemplates

enum_TemplateStatus := [ "Active", "Inactive" ]

valid {
    input.ReqMap.domainId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.status[_] == enum_TemplateStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutCaseEventConfiguration

valid {
    input.Body.eventBridge.enabled == BOOLEAN
    input.Body.eventBridge.includedData.caseData.fields[_].id == STRING
    input.Body.eventBridge.includedData.relatedItemData.includeContent == BOOLEAN
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchCases

enum_Order := [ "Asc", "Desc" ]

valid {
    input.Body.fields[_].id == STRING
    input.Body.filter.andAll[_] == NESTED
    input.Body.filter.field.contains.id == STRING
    input.Body.filter.field.contains.value.booleanValue == BOOLEAN
    input.Body.filter.field.contains.value.doubleValue == DOUBLE
    input.Body.filter.field.contains.value.emptyValue == {}
    input.Body.filter.field.contains.value.stringValue == STRING
    input.Body.filter.field.contains.value.userArnValue == STRING
    input.Body.filter.field.equalTo.id == STRING
    input.Body.filter.field.equalTo.value.booleanValue == BOOLEAN
    input.Body.filter.field.equalTo.value.doubleValue == DOUBLE
    input.Body.filter.field.equalTo.value.emptyValue == {}
    input.Body.filter.field.equalTo.value.stringValue == STRING
    input.Body.filter.field.equalTo.value.userArnValue == STRING
    input.Body.filter.field.greaterThan.id == STRING
    input.Body.filter.field.greaterThan.value.booleanValue == BOOLEAN
    input.Body.filter.field.greaterThan.value.doubleValue == DOUBLE
    input.Body.filter.field.greaterThan.value.emptyValue == {}
    input.Body.filter.field.greaterThan.value.stringValue == STRING
    input.Body.filter.field.greaterThan.value.userArnValue == STRING
    input.Body.filter.field.greaterThanOrEqualTo.id == STRING
    input.Body.filter.field.greaterThanOrEqualTo.value.booleanValue == BOOLEAN
    input.Body.filter.field.greaterThanOrEqualTo.value.doubleValue == DOUBLE
    input.Body.filter.field.greaterThanOrEqualTo.value.emptyValue == {}
    input.Body.filter.field.greaterThanOrEqualTo.value.stringValue == STRING
    input.Body.filter.field.greaterThanOrEqualTo.value.userArnValue == STRING
    input.Body.filter.field.lessThan.id == STRING
    input.Body.filter.field.lessThan.value.booleanValue == BOOLEAN
    input.Body.filter.field.lessThan.value.doubleValue == DOUBLE
    input.Body.filter.field.lessThan.value.emptyValue == {}
    input.Body.filter.field.lessThan.value.stringValue == STRING
    input.Body.filter.field.lessThan.value.userArnValue == STRING
    input.Body.filter.field.lessThanOrEqualTo.id == STRING
    input.Body.filter.field.lessThanOrEqualTo.value.booleanValue == BOOLEAN
    input.Body.filter.field.lessThanOrEqualTo.value.doubleValue == DOUBLE
    input.Body.filter.field.lessThanOrEqualTo.value.emptyValue == {}
    input.Body.filter.field.lessThanOrEqualTo.value.stringValue == STRING
    input.Body.filter.field.lessThanOrEqualTo.value.userArnValue == STRING
    input.Body.filter.not == NESTED
    input.Body.filter.orAll[_] == NESTED
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.searchTerm == STRING
    input.Body.sorts[_].fieldId == STRING
    input.Body.sorts[_].sortOrder == enum_Order[_]
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchRelatedItems

valid {
    input.Body.filters[_].comment == {}
    input.Body.filters[_].contact.channel[_] == STRING
    input.Body.filters[_].contact.contactArn == STRING
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.ReqMap.caseId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

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

UntagResource

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

UpdateCase

valid {
    input.Body.fields[_].id == STRING
    input.Body.fields[_].value.booleanValue == BOOLEAN
    input.Body.fields[_].value.doubleValue == DOUBLE
    input.Body.fields[_].value.emptyValue == {}
    input.Body.fields[_].value.stringValue == STRING
    input.Body.fields[_].value.userArnValue == STRING
    input.Body.performedBy.userArn == STRING
    input.ReqMap.caseId == STRING
    input.ReqMap.domainId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateField

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.ReqMap.domainId == STRING
    input.ReqMap.fieldId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateLayout

valid {
    input.Body.content.basic.moreInfo.sections[_].fieldGroup.fields[_].id == STRING
    input.Body.content.basic.moreInfo.sections[_].fieldGroup.name == STRING
    input.Body.content.basic.topPanel.sections[_].fieldGroup.fields[_].id == STRING
    input.Body.content.basic.topPanel.sections[_].fieldGroup.name == STRING
    input.Body.name == STRING
    input.ReqMap.domainId == STRING
    input.ReqMap.layoutId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateTemplate

enum_TemplateStatus := [ "Active", "Inactive" ]

valid {
    input.Body.description == STRING
    input.Body.layoutConfiguration.defaultLayout == STRING
    input.Body.name == STRING
    input.Body.requiredFields[_].fieldId == STRING
    input.Body.status == enum_TemplateStatus[_]
    input.ReqMap.domainId == STRING
    input.ReqMap.templateId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}