RECOMMENDATIONENGINE

recommendationengine.projects.locations.catalogs.catalogItems.create

enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]

valid {
    input.Body.categoryHierarchies[_].categories[_] == STRING
    input.Body.description == STRING
    input.Body.id == STRING
    input.Body.itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.itemGroupId == STRING
    input.Body.languageCode == STRING
    input.Body.productMetadata.availableQuantity == STRING
    input.Body.productMetadata.canonicalProductUri == STRING
    input.Body.productMetadata.costs.STRING == NUMBER
    input.Body.productMetadata.currencyCode == STRING
    input.Body.productMetadata.exactPrice.displayPrice == NUMBER
    input.Body.productMetadata.exactPrice.originalPrice == NUMBER
    input.Body.productMetadata.images[_].height == INTEGER
    input.Body.productMetadata.images[_].uri == STRING
    input.Body.productMetadata.images[_].width == INTEGER
    input.Body.productMetadata.priceRange.max == NUMBER
    input.Body.productMetadata.priceRange.min == NUMBER
    input.Body.productMetadata.stockState == enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState[_]
    input.Body.tags[_] == STRING
    input.Body.title == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.catalogItems.delete

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

recommendationengine.projects.locations.catalogs.catalogItems.get

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

recommendationengine.projects.locations.catalogs.catalogItems.import

enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource := [ "EVENT_SOURCE_UNSPECIFIED", "AUTOML", "ECOMMERCE", "BATCH_UPLOAD" ]

valid {
    input.Body.errorsConfig.gcsPrefix == STRING
    input.Body.inputConfig.bigQuerySource.dataSchema == STRING
    input.Body.inputConfig.bigQuerySource.datasetId == STRING
    input.Body.inputConfig.bigQuerySource.gcsStagingDir == STRING
    input.Body.inputConfig.bigQuerySource.projectId == STRING
    input.Body.inputConfig.bigQuerySource.tableId == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].categoryHierarchies[_].categories[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].description == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].id == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemGroupId == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].languageCode == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.availableQuantity == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.canonicalProductUri == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.costs.STRING == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.currencyCode == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.exactPrice.displayPrice == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.exactPrice.originalPrice == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].height == INTEGER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].uri == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].width == INTEGER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.priceRange.max == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.priceRange.min == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.stockState == enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState[_]
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].tags[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].title == STRING
    input.Body.inputConfig.gcsSource.inputUris[_] == STRING
    input.Body.inputConfig.gcsSource.jsonSchema == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.eventAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.eventAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.experimentIds[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.pageViewId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.recommendationToken == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.referrerUri == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.uri == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventSource == enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource[_]
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventTime == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventType == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.cartId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.listId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.pageCategories[_].categories[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].availableQuantity == INTEGER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].currencyCode == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].displayPrice == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].id == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].originalPrice == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].quantity == INTEGER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].stockState == enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState[_]
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.costs.STRING == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.currencyCode == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.id == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.revenue == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.taxes.STRING == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.searchQuery == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.directUserRequest == BOOLEAN
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.ipAddress == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.userAgent == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.userId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.visitorId == STRING
    input.Body.requestId == STRING
    input.Body.updateMask == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.catalogItems.list

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

recommendationengine.projects.locations.catalogs.catalogItems.patch

enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]

valid {
    input.Body.categoryHierarchies[_].categories[_] == STRING
    input.Body.description == STRING
    input.Body.id == STRING
    input.Body.itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.itemGroupId == STRING
    input.Body.languageCode == STRING
    input.Body.productMetadata.availableQuantity == STRING
    input.Body.productMetadata.canonicalProductUri == STRING
    input.Body.productMetadata.costs.STRING == NUMBER
    input.Body.productMetadata.currencyCode == STRING
    input.Body.productMetadata.exactPrice.displayPrice == NUMBER
    input.Body.productMetadata.exactPrice.originalPrice == NUMBER
    input.Body.productMetadata.images[_].height == INTEGER
    input.Body.productMetadata.images[_].uri == STRING
    input.Body.productMetadata.images[_].width == INTEGER
    input.Body.productMetadata.priceRange.max == NUMBER
    input.Body.productMetadata.priceRange.min == NUMBER
    input.Body.productMetadata.stockState == enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState[_]
    input.Body.tags[_] == STRING
    input.Body.title == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.eventStores.operations.get

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

recommendationengine.projects.locations.catalogs.eventStores.operations.list

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

recommendationengine.projects.locations.catalogs.eventStores.placements.predict

enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource := [ "EVENT_SOURCE_UNSPECIFIED", "AUTOML", "ECOMMERCE", "BATCH_UPLOAD" ]

valid {
    input.Body.dryRun == BOOLEAN
    input.Body.filter == STRING
    input.Body.labels.STRING == STRING
    input.Body.pageSize == INTEGER
    input.Body.pageToken == STRING
    input.Body.params.STRING == ANY
    input.Body.userEvent.eventDetail.eventAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.userEvent.eventDetail.eventAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.userEvent.eventDetail.experimentIds[_] == STRING
    input.Body.userEvent.eventDetail.pageViewId == STRING
    input.Body.userEvent.eventDetail.recommendationToken == STRING
    input.Body.userEvent.eventDetail.referrerUri == STRING
    input.Body.userEvent.eventDetail.uri == STRING
    input.Body.userEvent.eventSource == enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource[_]
    input.Body.userEvent.eventTime == STRING
    input.Body.userEvent.eventType == STRING
    input.Body.userEvent.productEventDetail.cartId == STRING
    input.Body.userEvent.productEventDetail.listId == STRING
    input.Body.userEvent.productEventDetail.pageCategories[_].categories[_] == STRING
    input.Body.userEvent.productEventDetail.productDetails[_].availableQuantity == INTEGER
    input.Body.userEvent.productEventDetail.productDetails[_].currencyCode == STRING
    input.Body.userEvent.productEventDetail.productDetails[_].displayPrice == NUMBER
    input.Body.userEvent.productEventDetail.productDetails[_].id == STRING
    input.Body.userEvent.productEventDetail.productDetails[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.userEvent.productEventDetail.productDetails[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.userEvent.productEventDetail.productDetails[_].originalPrice == NUMBER
    input.Body.userEvent.productEventDetail.productDetails[_].quantity == INTEGER
    input.Body.userEvent.productEventDetail.productDetails[_].stockState == enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState[_]
    input.Body.userEvent.productEventDetail.purchaseTransaction.costs.STRING == NUMBER
    input.Body.userEvent.productEventDetail.purchaseTransaction.currencyCode == STRING
    input.Body.userEvent.productEventDetail.purchaseTransaction.id == STRING
    input.Body.userEvent.productEventDetail.purchaseTransaction.revenue == NUMBER
    input.Body.userEvent.productEventDetail.purchaseTransaction.taxes.STRING == NUMBER
    input.Body.userEvent.productEventDetail.searchQuery == STRING
    input.Body.userEvent.userInfo.directUserRequest == BOOLEAN
    input.Body.userEvent.userInfo.ipAddress == STRING
    input.Body.userEvent.userInfo.userAgent == STRING
    input.Body.userEvent.userInfo.userId == STRING
    input.Body.userEvent.userInfo.visitorId == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.eventStores.predictionApiKeyRegistrations.create

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

recommendationengine.projects.locations.catalogs.eventStores.predictionApiKeyRegistrations.delete

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

recommendationengine.projects.locations.catalogs.eventStores.predictionApiKeyRegistrations.list

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

recommendationengine.projects.locations.catalogs.eventStores.userEvents.collect

valid {
    input.ReqMap.parent == STRING
    input.Qs.ets == STRING
    input.Qs.uri == STRING
    input.Qs.userEvent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.eventStores.userEvents.import

enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource := [ "EVENT_SOURCE_UNSPECIFIED", "AUTOML", "ECOMMERCE", "BATCH_UPLOAD" ]

valid {
    input.Body.errorsConfig.gcsPrefix == STRING
    input.Body.inputConfig.bigQuerySource.dataSchema == STRING
    input.Body.inputConfig.bigQuerySource.datasetId == STRING
    input.Body.inputConfig.bigQuerySource.gcsStagingDir == STRING
    input.Body.inputConfig.bigQuerySource.projectId == STRING
    input.Body.inputConfig.bigQuerySource.tableId == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].categoryHierarchies[_].categories[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].description == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].id == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].itemGroupId == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].languageCode == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.availableQuantity == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.canonicalProductUri == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.costs.STRING == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.currencyCode == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.exactPrice.displayPrice == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.exactPrice.originalPrice == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].height == INTEGER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].uri == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.images[_].width == INTEGER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.priceRange.max == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.priceRange.min == NUMBER
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].productMetadata.stockState == enum_GoogleCloudRecommendationengineV1beta1ProductCatalogItemStockState[_]
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].tags[_] == STRING
    input.Body.inputConfig.catalogInlineSource.catalogItems[_].title == STRING
    input.Body.inputConfig.gcsSource.inputUris[_] == STRING
    input.Body.inputConfig.gcsSource.jsonSchema == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.eventAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.eventAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.experimentIds[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.pageViewId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.recommendationToken == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.referrerUri == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventDetail.uri == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventSource == enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource[_]
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventTime == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].eventType == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.cartId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.listId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.pageCategories[_].categories[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].availableQuantity == INTEGER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].currencyCode == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].displayPrice == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].id == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].originalPrice == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].quantity == INTEGER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.productDetails[_].stockState == enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState[_]
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.costs.STRING == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.currencyCode == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.id == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.revenue == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.purchaseTransaction.taxes.STRING == NUMBER
    input.Body.inputConfig.userEventInlineSource.userEvents[_].productEventDetail.searchQuery == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.directUserRequest == BOOLEAN
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.ipAddress == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.userAgent == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.userId == STRING
    input.Body.inputConfig.userEventInlineSource.userEvents[_].userInfo.visitorId == STRING
    input.Body.requestId == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.eventStores.userEvents.list

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

recommendationengine.projects.locations.catalogs.eventStores.userEvents.purge

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

recommendationengine.projects.locations.catalogs.eventStores.userEvents.rejoin

enum_GoogleCloudRecommendationengineV1beta1RejoinUserEventsRequestUserEventRejoinScope := [ "USER_EVENT_REJOIN_SCOPE_UNSPECIFIED", "JOINED_EVENTS", "UNJOINED_EVENTS" ]

valid {
    input.Body.userEventRejoinScope == enum_GoogleCloudRecommendationengineV1beta1RejoinUserEventsRequestUserEventRejoinScope[_]
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.eventStores.userEvents.write

enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState := [ "STOCK_STATE_UNSPECIFIED", "IN_STOCK", "OUT_OF_STOCK", "PREORDER", "BACKORDER" ]
enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource := [ "EVENT_SOURCE_UNSPECIFIED", "AUTOML", "ECOMMERCE", "BATCH_UPLOAD" ]

valid {
    input.Body.eventDetail.eventAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.eventDetail.eventAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.eventDetail.experimentIds[_] == STRING
    input.Body.eventDetail.pageViewId == STRING
    input.Body.eventDetail.recommendationToken == STRING
    input.Body.eventDetail.referrerUri == STRING
    input.Body.eventDetail.uri == STRING
    input.Body.eventSource == enum_GoogleCloudRecommendationengineV1beta1UserEventEventSource[_]
    input.Body.eventTime == STRING
    input.Body.eventType == STRING
    input.Body.productEventDetail.cartId == STRING
    input.Body.productEventDetail.listId == STRING
    input.Body.productEventDetail.pageCategories[_].categories[_] == STRING
    input.Body.productEventDetail.productDetails[_].availableQuantity == INTEGER
    input.Body.productEventDetail.productDetails[_].currencyCode == STRING
    input.Body.productEventDetail.productDetails[_].displayPrice == NUMBER
    input.Body.productEventDetail.productDetails[_].id == STRING
    input.Body.productEventDetail.productDetails[_].itemAttributes.categoricalFeatures.STRING.value[_] == STRING
    input.Body.productEventDetail.productDetails[_].itemAttributes.numericalFeatures.STRING.value[_] == NUMBER
    input.Body.productEventDetail.productDetails[_].originalPrice == NUMBER
    input.Body.productEventDetail.productDetails[_].quantity == INTEGER
    input.Body.productEventDetail.productDetails[_].stockState == enum_GoogleCloudRecommendationengineV1beta1ProductDetailStockState[_]
    input.Body.productEventDetail.purchaseTransaction.costs.STRING == NUMBER
    input.Body.productEventDetail.purchaseTransaction.currencyCode == STRING
    input.Body.productEventDetail.purchaseTransaction.id == STRING
    input.Body.productEventDetail.purchaseTransaction.revenue == NUMBER
    input.Body.productEventDetail.purchaseTransaction.taxes.STRING == NUMBER
    input.Body.productEventDetail.searchQuery == STRING
    input.Body.userInfo.directUserRequest == BOOLEAN
    input.Body.userInfo.ipAddress == STRING
    input.Body.userInfo.userAgent == STRING
    input.Body.userInfo.userId == STRING
    input.Body.userInfo.visitorId == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

recommendationengine.projects.locations.catalogs.list

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

recommendationengine.projects.locations.catalogs.operations.get

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

recommendationengine.projects.locations.catalogs.operations.list

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

recommendationengine.projects.locations.catalogs.patch

enum_GoogleCloudRecommendationengineV1beta1CatalogItemLevelConfigEventItemLevel := [ "CATALOG_ITEM_LEVEL_UNSPECIFIED", "VARIANT", "MASTER" ]
enum_GoogleCloudRecommendationengineV1beta1CatalogItemLevelConfigPredictItemLevel := [ "CATALOG_ITEM_LEVEL_UNSPECIFIED", "VARIANT", "MASTER" ]

valid {
    input.Body.catalogItemLevelConfig.eventItemLevel == enum_GoogleCloudRecommendationengineV1beta1CatalogItemLevelConfigEventItemLevel[_]
    input.Body.catalogItemLevelConfig.predictItemLevel == enum_GoogleCloudRecommendationengineV1beta1CatalogItemLevelConfigPredictItemLevel[_]
    input.Body.defaultEventStoreId == STRING
    input.Body.displayName == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}