Package io.constructor.data.model.common

Types

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class Feature(    @Json(name = "feature_name") val featureName: String?,     @Json(name = "display_name") val displayName: String,     @Json(name = "enabled") val min: Boolean?,     @Json(name = "variant") val variant: Map<String, Any>?) : Serializable

Models Features available for a response

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class FilterFacet(    @Json(name = "display_name") val displayName: String?,     @Json(name = "name") val name: String,     @Json(name = "status") val status: Map<String, Any>?,     @Json(name = "min") val min: Double?,     @Json(name = "max") val max: Double?,     @Json(name = "options") val options: List<FilterFacetOption>?,     @Json(name = "type") val type: String?,     @Json(name = "hidden") val hidden: Boolean?,     @Json(name = "data") val data: Map<String, Any?>?) : Serializable

Models facet filters available for a response

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class FilterFacetOption(    @Json(name = "count") val count: Int,     @Json(name = "display_name") val displayName: String?,     @Json(name = "status") val status: String?,     @Json(name = "value") val value: String?,     @Json(name = "data") val data: Map<String, Any?>?) : Serializable

Models facet filter options available for a response

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class FilterGroup(    @Json(name = "children") val children: List<FilterGroup>?,     @Json(name = "parents") val parents: List<FilterGroup>?,     @Json(name = "count") val count: Int?,     @Json(name = "display_name") val displayName: String,     @Json(name = "group_id") val groupId: String,     @Json(name = "data") val data: Map<String, Any?>?) : Serializable

Models group filters available for a response

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class FilterSortOption(    @Json(name = "display_name") val displayName: String,     @Json(name = "sort_by") val sortBy: String,     @Json(name = "sort_order") val sortOrder: String,     @Json(name = "status") val status: String) : Serializable

Models sorting options available for a response

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class RefinedContent(@Json(name = "data") val data: Map<String, Any?>?) : Serializable

Models an individual refined content

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class Result(    @Json(name = "data") val data: ResultData,     @Json(name = "matched_terms") val matchedTerms: List<String>?,     @Json(name = "variations") val variations: List<Result>?,     @Json(name = "variations_map") val variationsMap: Any?,     @Json(name = "value") val value: String,     @Json(name = "is_slotted") val isSlotted: Boolean?,     @Json(name = "labels") val labels: Map<String, Any>?) : Serializable

Models an individual item in a response as well as its variations

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class ResultData(    @Json(name = "description") val description: String?,     @Json(name = "id") val id: String?,     @Json(name = "url") val url: String?,     @Json(name = "image_url") val imageUrl: String?,     @Json(name = "groups") val groups: List<ResultGroup>?,     @Json(name = "facets") val facets: List<ResultFacet>?,     @Json(name = "metadata") var metadata: Map<String, Any?>?) : Serializable

Models item metadata

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class ResultFacet(@Json(name = "name") val name: String, @Json(name = "values") val values: List<String>?) : Serializable

Models facets on an item

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class ResultGroup(    @Json(name = "display_name") var displayName: String?,     @Json(name = "group_id") var groupId: String,     @Json(name = "path") var path: String? = null) : Serializable

Models groups on an item

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class ResultSources(@Json(name = "token_match") val tokenMatch: ResultSourcesData?, @Json(name = "embeddings_match") val embeddingsMatch: ResultSourcesData?) : Serializable

Models result sources

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class ResultSourcesData(@Json(name = "count") val count: Int?) : Serializable

Models result sources data

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class TrackingItem(@Json(name = "item_id") val itemId: String?, @Json(name = "variation_id") val variationId: String?) : Serializable

Models a item to be used in tracking

Link copied to clipboard
@JsonClass(generateAdapter = true)
data class VariationsMap(    @Json(name = "dtype") val dtype: String,     @Json(name = "values") val values: Map<String, Map<String, String>>,     @Json(name = "group_by") val groupBy: List<Map<String, String>>? = null,     @Json(name = "filter_by") var filterBy: String? = null) : Serializable

Models variations map object available for modifying the request