Landing Page¶
https://{cluster-id}.api.esales.apptus.cloud/api/storefront/v3/queries/landing-page
GET¶
Category pages and generic landing pages are requested through the same end point, called landing-page. This end point caters for any page with faceted product listings, recommendation listings, or a combination of the two. It is suitable for the start page and intermediate category pages, as well as category pages, brand pages, and for example collection pages.
Inclusion of a primary product listing with facets, and which recommendation listings to include is configurable.
Request¶
Header parameters¶
Name | Description | Example |
---|---|---|
Accept-Encoding | Allows responses to be compressed using Gzip. | gzip |
Query parameters¶
Name | Description | Example |
---|---|---|
customerKey Required | A key that uniquely identifies the current visitor. Using UUIDs as keys are recommended. | 0b05119e-eeb8-418a-bbfb-defa0dde417e |
locale Required | The visitor locale. Must match an available locale identifier on the current market in the data feed. | |
market Required | The visitor market identifier. Must match the corresponding market identifier in the data feed. | UK |
pageReference Required | A reference to the page, either Page ID or the localized path, uniquely identifying this page. For more information about page references, see Page IDs. | /women/shoes/loafers |
sessionKey Required | A unique key, identifying the session. Using UUIDs as keys are recommended. | 0b05119e-eeb8-418a-bbfb-defa0dde417e |
touchpoint Required | The visitor's touchpoint. Supported values: DESKTOP , MOBILE . | DESKTOP |
channels | Which channels to use. Valid values are ONLINE and STORE . Multiple values are provided with a pipe, | , as a separator. channels will default to ONLINE|STORE if nothing is provided. If STORE is explicitly provided then stores cannot be empty. Supported values: ONLINE , STORE . | ONLINE|STORE |
f.[id] | An example parameter of a value or checkbox attribute. Value attributes can be a | pipe-separated list of strings, while a checkbox attributes only can be true or false. Detailed information is available at Facet selections. | Bosch|Dewalt or true/false |
f.[id].max | An example parameter of a range attribute. | 1000 |
f.[id].min | The applied Facet selection in the search result/primary product listing. Each facet attribute is prefixed with f. | 0 |
includeNavigation | Whether or not the response should include a navigation object (including breadcrumbs), i.e. when navigation is handled through Elevate. Defaults to false if omitted. | false |
limit | The number of product hits to list. For each product hit in the list, its product group is returned in full to facilitate rendering of colour swatches and more. Defaults to 60 if omitted in the query, the min value is 1 and the max value is 600 . | 10 |
notify | A boolean that can be used to disable notifications and behavioural registration for the query. | false |
presentCustom | A pipe-separated list of custom attributes or custom typed attributes to include in all listings. Prefix with variant. to request custom variant attributes. Prefix with number. or length. to request custom typed attributes | season|variant.number.item_count|variant.weight |
presentPrices | A pipe-separated list of custom price ids to include in all listings. Each id must match a supplied custom price id in the data feed. | VIP|member |
priceId | A custom price identifier. Must match supplied custom price identifiers in the data feed. | VIP |
q | A search phrase used to further refine the result | green |
skip | The number of product groups to skip. Used for pagination, defaults to 0 if omitted in the query. The min value is 0 and the max value is 10000 . | 10 |
sort | The applied sort order on the landing page. Only include this after explicit visitor interaction. Defaults to 'RELEVANCE' or overridden default value set in Apps. Supported values: RELEVANCE , NEWEST_FIRST , PRICE_ASCENDING , PRICE_DESCENDING , DISCOUNT , RATING , NAME , LENGTH_INCREASING , LENGTH_DECREASING , WIDTH_INCREASING , WIDTH_DECREASING , HEIGHT_INCREASING , HEIGHT_DECREASING , DEPTH_INCREASING , DEPTH_DECREASING , VOLUME_INCREASING , VOLUME_DECREASING , WEIGHT_INCREASING , WEIGHT_DECREASING , TITLE . | NEWEST_FIRST |
stores | Which stores to use. Will impact which stock is displayed and which stock is used for filtering/ranking together with channel. Multiple values are provided with a pipe, | , as a separator. Each store must match a supplied store key in the data feed. | 240|100 |
templateId | The id of a response template to apply to all product lists returned. Templates can be imported via the template API. | template1 |
viewId | A parameter that is used to show the page in either production or preview mode. Can be production or preview . Defaults to production if omitted in the query. For more information, see App Integration. Supported values: PRODUCTION , PREVIEW . | production |
curl -i \
-X GET \
-H 'Accept-Encoding: gzip' \
"https://{cluster-id}.api.esales.apptus.cloud/api/storefront/v3/queries/landing-page?customerKey=0b05119e-eeb8-418a-bbfb-defa0dde417e&locale=locale&market=UK&pageReference=%2Fwomen%2Fshoes%2Floafers&sessionKey=0b05119e-eeb8-418a-bbfb-defa0dde417e&touchpoint=DESKTOP&channels=ONLINE%7CSTORE&f.%5Bid%5D=Bosch%7CDewalt+or+true%2Ffalse&f.%5Bid%5D.max=1000&f.%5Bid%5D.min=0&includeNavigation=false&limit=10¬ify=false&presentCustom=season%7Cvariant.number.item_count%7Cvariant.weight&presentPrices=VIP%7Cmember&priceId=VIP&q=green&skip=10&sort=NEWEST_FIRST&stores=240%7C100&templateId=template1&viewId=production"
Response¶
Response codes¶
Status | Description |
---|---|
200 | Query accepted, content flattened and serialised to JSON. |
400 | Invalid or missing required arguments. |
404 | Endpoint is not valid. |
503 | Service unavailable, no products found in the cluster. |
500 | Server error such as cluster unavailable or busy. The response body may contain more information about the error. |
Response headers¶
Name | Type | Description | Example |
---|---|---|---|
X-Response-Time | integer | Response time in milliseconds (ms) | 65 |
Response body¶
Example
{
"contentLists" : [ {
"id" : "content-hits",
"items" : [ {
"custom" : {
"tags" : [ {
"id" : "78",
"label" : "Guide"
}, {
"id" : "223",
"label" : "Jeans"
} ]
},
"description" : "To wash or not to wash? And how?! Those are questions jeans shoppers are asking.",
"image" : {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
},
"key" : "wash_care",
"link" : "/wash-guide",
"releaseDate" : "2021-10-01T00:00:00Z",
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "How to wash jeans",
"type" : "article"
} ],
"totalHits" : 10
} ],
"customData" : {
"preamble" : "A carefully curated selection of products...",
"bannerImage" : "/assets/banners/sale_01.jpg"
},
"navigation" : {
"breadcrumbs" : [ {
"label" : "Women's shoes",
"path" : "womens/shoes/"
} ],
"tree" : {
"children" : [ null ],
"count" : 5,
"customData" : {
"highlight" : "true",
"viewableFrom" : "2010-10-20 00:00:00"
},
"expandable" : true,
"iconPath" : "/resources/images/navigation/spring_node.jpg",
"label" : "All products",
"link" : "/springselections",
"path" : "/",
"selected" : false,
"type" : "PAGE_LINK"
}
},
"primaryList" : {
"facets" : [ {
"id" : "size",
"label" : "size",
"type" : "RANGE"
} ],
"productGroups" : [ {
"key" : "PRODGROUP060194",
"products" : [ {
"badges" : {
"primary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ],
"secondary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ]
},
"brand" : "Versace",
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"description" : "Super elastic fit.",
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"imageInfo" : {
"effect" : "NONE",
"images" : [ {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
} ],
"thumbnail" : "https://cdn.example.com/thumbs/j12_prod.jpg"
},
"inStock" : true,
"key" : "p1000-101",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "men/jeans/country-fit-cowboy-jeans",
"listPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"name" : "Romeo",
"rating" : 4.5,
"remainingVariants" : 0,
"sellingPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"series" : "Billy",
"swatch" : {
"colors" : [ "#FF0000" ],
"type" : "COLORS"
},
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "Country Fit Cowboy Jeans",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"variants" : [ {
"availability" : [ {
"channel" : "STORE",
"key" : "boardwalk",
"stockNumber" : 5
} ],
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"inStock" : true,
"key" : "1000-101_RED",
"label" : "XL",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "women/pants/khaki/101-v3-red",
"listPrice" : 15.0,
"prices" : [ {
"id" : "VIP_EUR",
"listPrice" : 12.99,
"sellingPrice" : 9.99
} ],
"sellingPrice" : 24.0,
"stockNumber" : 5,
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"remaining" : 2
} ],
"sliceRanges" : [ {
"from" : 0,
"id" : null,
"to" : 1
} ],
"sort" : {
"options" : [ {
"id" : "RELEVANCE",
"label" : "Relevance"
} ],
"selected" : "RELEVANCE"
},
"totalHits" : 0
},
"published" : true,
"recommendationLists" : [ {
"id" : "PDP-1",
"label" : "The presentation text of the list.",
"productGroups" : [ {
"key" : "PRODGROUP060194",
"products" : [ {
"badges" : {
"primary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ],
"secondary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ]
},
"brand" : "Versace",
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"description" : "Super elastic fit.",
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"imageInfo" : {
"effect" : "NONE",
"images" : [ {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
} ],
"thumbnail" : "https://cdn.example.com/thumbs/j12_prod.jpg"
},
"inStock" : true,
"key" : "p1000-101",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "men/jeans/country-fit-cowboy-jeans",
"listPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"name" : "Romeo",
"rating" : 4.5,
"remainingVariants" : 0,
"sellingPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"series" : "Billy",
"swatch" : {
"colors" : [ "#FF0000" ],
"type" : "COLORS"
},
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "Country Fit Cowboy Jeans",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"variants" : [ {
"availability" : [ {
"channel" : "STORE",
"key" : "boardwalk",
"stockNumber" : 5
} ],
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"inStock" : true,
"key" : "1000-101_RED",
"label" : "XL",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "women/pants/khaki/101-v3-red",
"listPrice" : 15.0,
"prices" : [ {
"id" : "VIP_EUR",
"listPrice" : 12.99,
"sellingPrice" : 9.99
} ],
"sellingPrice" : 24.0,
"stockNumber" : 5,
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"remaining" : 2
} ],
"showMoreLink" : "https://example.com/prods/jeans/levis",
"visible" : true,
"visualization" : "CAROUSEL"
} ],
"seo" : {
"metaDescription" : "Exclusive loafers for everyday use",
"pageHeading" : "OUR LOAFERS",
"pageTitle" : "Loafers",
"preamble" : "Exclusive loafers for everyday use"
}
}
Schema
LandingPageResult¶
The object representation of the landing page result.
Name | Type | Description | Example |
---|---|---|---|
contentLists | ContentList[] | A list of content lists to be included in the response. Amount of content items per list defaults to 10. | |
customData | <string, string> | A key-value mapping of custom data associated with this page as defined in the page import. | {"preamble":"A carefully curated selection of products...","bannerImage":"/assets/banners/sale_01.jpg"} |
navigation | NavigationResult | An object with navigation options. Defaults to include: false. Set to include: true to return the navigation object (including breadcrumbs), i.e. when navigation is handled through Elevate. | |
primaryList | PrimaryList | A primary listing to be included in the response, additionally supporting filter restrictions of the listing. I.e. a typical category product listing. | |
published | boolean | Is true if the returned page's settings were overridden from the apps | |
recommendationLists | RecommendationProductList[] | A list of recommendation lists to be included in the response. | |
seo | Seo | SEO information in accordance to the Page settings for the current page in the Category and Landing Pages tab of the Experience app. |
POST¶
Category pages and generic landing pages are requested through the same end point, called landing-page. This end point caters for any page with faceted product listings, recommendation listings, or a combination of the two. It is suitable for the start page and intermediate category pages, as well as category pages, brand pages, and for example collection pages. Inclusion of a primary product listing with facets, and which recommendation listings to include is configurable.
Request¶
Header parameters¶
Name | Description | Example |
---|---|---|
Accept-Encoding | Allows responses to be compressed using Gzip. | gzip |
Query parameters¶
Name | Description | Example |
---|---|---|
customerKey Required | A key that uniquely identifies the current visitor. Using UUIDs as keys are recommended. | 0b05119e-eeb8-418a-bbfb-defa0dde417e |
locale Required | The visitor locale. Must match an available locale identifier on the current market in the data feed. | |
market Required | The visitor market identifier. Must match the corresponding market identifier in the data feed. | UK |
pageReference Required | A reference to the page, either Page ID or the localized path, uniquely identifying this page. For more information about page references, see Page IDs. | /women/shoes/loafers |
sessionKey Required | A unique key, identifying the session. Using UUIDs as keys are recommended. | 0b05119e-eeb8-418a-bbfb-defa0dde417e |
touchpoint Required | The visitor's touchpoint. Supported values: DESKTOP , MOBILE . | DESKTOP |
channels | Which channels to use. Valid values are ONLINE and STORE . Multiple values are provided with a pipe, | , as a separator. channels will default to ONLINE|STORE if nothing is provided. If STORE is explicitly provided then stores cannot be empty. Supported values: ONLINE , STORE . | ONLINE|STORE |
f.[id] | An example parameter of a value or checkbox attribute. Value attributes can be a | pipe-separated list of strings, while a checkbox attributes only can be true or false. Detailed information is available at Facet selections. | Bosch|Dewalt or true/false |
f.[id].max | An example parameter of a range attribute. | 1000 |
f.[id].min | The applied Facet selection in the search result/primary product listing. Each facet attribute is prefixed with f. | 0 |
limit | The number of product hits to list. For each product hit in the list, its product group is returned in full to facilitate rendering of colour swatches and more. Defaults to 60 if omitted in the query, the min value is 1 and the max value is 600 . | 10 |
notify | A boolean that can be used to disable notifications and behavioural registration for the query. | false |
presentCustom | A pipe-separated list of custom attributes or custom typed attributes to include in all listings. Prefix with variant. to request custom variant attributes. Prefix with number. or length. to request custom typed attributes | season|variant.number.item_count|variant.weight |
presentPrices | A pipe-separated list of custom price ids to include in all listings. Each id must match a supplied custom price id in the data feed. | VIP|member |
priceId | A custom price identifier. Must match supplied custom price identifiers in the data feed. | VIP |
q | A search phrase used to further refine the result | green |
skip | The number of product groups to skip. Used for pagination, defaults to 0 if omitted in the query. The min value is 0 and the max value is 10000 . | 10 |
sort | The applied sort order on the landing page. Only include this after explicit visitor interaction. Defaults to 'RELEVANCE' or overridden default value set in Apps. Supported values: RELEVANCE , NEWEST_FIRST , PRICE_ASCENDING , PRICE_DESCENDING , DISCOUNT , RATING , NAME , LENGTH_INCREASING , LENGTH_DECREASING , WIDTH_INCREASING , WIDTH_DECREASING , HEIGHT_INCREASING , HEIGHT_DECREASING , DEPTH_INCREASING , DEPTH_DECREASING , VOLUME_INCREASING , VOLUME_DECREASING , WEIGHT_INCREASING , WEIGHT_DECREASING , TITLE . | NEWEST_FIRST |
stores | Which stores to use. Will impact which stock is displayed and which stock is used for filtering/ranking together with channel. Multiple values are provided with a pipe, | , as a separator. Each store must match a supplied store key in the data feed. | 240|100 |
templateId | The id of a response template to apply to all product lists returned. Templates can be imported via the template API. | template1 |
viewId | A parameter that is used to show the page in either production or preview mode. Can be production or preview . Defaults to production if omitted in the query. For more information, see App Integration. Supported values: PRODUCTION , PREVIEW . | production |
Supported Content-Type¶
application/json;charset=utf-8
text/plain;charset=utf-8
Request body¶
Example
{
"contentLists" : [ {
"algorithm" : "TOP_CONTENT",
"contentFilter" : {
"content_key" : [ "a1", "d2" ],
"custom.ATTRIBUTE" : "abc123",
"type" : [ "article", "designer" ]
},
"id" : "cl1",
"limit" : 1
} ],
"navigation" : {
"include" : true
},
"primaryList" : {
"include" : true,
"productRules" : "rule incl product_key { \"ABC123\" \"DEF456\" \"GHJ789\" } rule incl custom.material { \"leather\" } excl price [ -infinity, 100 ] rule incl newness 10d rule incl brand { \"Birkenstock\" } excl custom.isActive { \"false\" } "
},
"recommendationLists" : [ {
"id" : "RECS1",
"algorithm" : "CART",
"label" : "Recommended for you",
"limit" : 10,
"params" : {
"cart" : [ "v1_1" ],
"productKey" : "<PRODUCT_KEY_FROM_YOUR_FEED>"
},
"productRules" : "rule incl product_key { \"ABC123\" \"DEF456\" \"GHJ789\" } rule incl custom.material { \"leather\" } excl price [ -infinity, 100 ] rule incl newness 10d rule incl brand { \"Birkenstock\" } excl custom.isActive { \"false\" } ",
"showMoreLink" : "/holiday/sale",
"visualization" : "CAROUSEL"
} ]
}
Schema
LandingPageRequestSettings¶
A configuration object representing the request to the category or landing page endpoint.
Name | Type | Description | Example |
---|---|---|---|
contentLists | ContentListSettingsLandingPage[] | Min items: 0 . Max items: 10 . | |
navigation | NavigationSettings | ||
primaryList | PrimaryListSettings | ||
recommendationLists | RecListRequestSettings[] | Min items: 0 . Max items: 10 . |
curl -i \
-X POST \
-H 'Accept-Encoding: gzip' \
-H 'Content-Type: application/json;charset=utf-8' \
"https://{cluster-id}.api.esales.apptus.cloud/api/storefront/v3/queries/landing-page?customerKey=0b05119e-eeb8-418a-bbfb-defa0dde417e&locale=locale&market=UK&pageReference=%2Fwomen%2Fshoes%2Floafers&sessionKey=0b05119e-eeb8-418a-bbfb-defa0dde417e&touchpoint=DESKTOP&channels=ONLINE%7CSTORE&f.%5Bid%5D=Bosch%7CDewalt+or+true%2Ffalse&f.%5Bid%5D.max=1000&f.%5Bid%5D.min=0&limit=10¬ify=false&presentCustom=season%7Cvariant.number.item_count%7Cvariant.weight&presentPrices=VIP%7Cmember&priceId=VIP&q=green&skip=10&sort=NEWEST_FIRST&stores=240%7C100&templateId=template1&viewId=production" \
-T request-body.file
Response¶
Response codes¶
Status | Description |
---|---|
200 | Query accepted, content flattened and serialised to JSON. |
400 | Invalid or missing required arguments. |
404 | Endpoint is not valid. |
503 | Service unavailable, no products found in the cluster. |
500 | Server error such as cluster unavailable or busy. The response body may contain more information about the error. |
Response headers¶
Name | Type | Description | Example |
---|---|---|---|
X-Response-Time | integer | Response time in milliseconds (ms) | 65 |
Response body¶
Example
{
"contentLists" : [ {
"id" : "content-hits",
"items" : [ {
"custom" : {
"tags" : [ {
"id" : "78",
"label" : "Guide"
}, {
"id" : "223",
"label" : "Jeans"
} ]
},
"description" : "To wash or not to wash? And how?! Those are questions jeans shoppers are asking.",
"image" : {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
},
"key" : "wash_care",
"link" : "/wash-guide",
"releaseDate" : "2021-10-01T00:00:00Z",
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "How to wash jeans",
"type" : "article"
} ],
"totalHits" : 10
} ],
"customData" : {
"preamble" : "A carefully curated selection of products...",
"bannerImage" : "/assets/banners/sale_01.jpg"
},
"navigation" : {
"breadcrumbs" : [ {
"label" : "Women's shoes",
"path" : "womens/shoes/"
} ],
"tree" : {
"children" : [ null ],
"count" : 5,
"customData" : {
"highlight" : "true",
"viewableFrom" : "2010-10-20 00:00:00"
},
"expandable" : true,
"iconPath" : "/resources/images/navigation/spring_node.jpg",
"label" : "All products",
"link" : "/springselections",
"path" : "/",
"selected" : false,
"type" : "PAGE_LINK"
}
},
"primaryList" : {
"facets" : [ {
"id" : "size",
"label" : "size",
"type" : "RANGE"
} ],
"productGroups" : [ {
"key" : "PRODGROUP060194",
"products" : [ {
"badges" : {
"primary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ],
"secondary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ]
},
"brand" : "Versace",
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"description" : "Super elastic fit.",
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"imageInfo" : {
"effect" : "NONE",
"images" : [ {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
} ],
"thumbnail" : "https://cdn.example.com/thumbs/j12_prod.jpg"
},
"inStock" : true,
"key" : "p1000-101",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "men/jeans/country-fit-cowboy-jeans",
"listPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"name" : "Romeo",
"rating" : 4.5,
"remainingVariants" : 0,
"sellingPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"series" : "Billy",
"swatch" : {
"colors" : [ "#FF0000" ],
"type" : "COLORS"
},
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "Country Fit Cowboy Jeans",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"variants" : [ {
"availability" : [ {
"channel" : "STORE",
"key" : "boardwalk",
"stockNumber" : 5
} ],
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"inStock" : true,
"key" : "1000-101_RED",
"label" : "XL",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "women/pants/khaki/101-v3-red",
"listPrice" : 15.0,
"prices" : [ {
"id" : "VIP_EUR",
"listPrice" : 12.99,
"sellingPrice" : 9.99
} ],
"sellingPrice" : 24.0,
"stockNumber" : 5,
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"remaining" : 2
} ],
"sliceRanges" : [ {
"from" : 0,
"id" : null,
"to" : 1
} ],
"sort" : {
"options" : [ {
"id" : "RELEVANCE",
"label" : "Relevance"
} ],
"selected" : "RELEVANCE"
},
"totalHits" : 0
},
"published" : true,
"recommendationLists" : [ {
"id" : "PDP-1",
"label" : "The presentation text of the list.",
"productGroups" : [ {
"key" : "PRODGROUP060194",
"products" : [ {
"badges" : {
"primary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ],
"secondary" : [ {
"attribute" : "is_new",
"label" : "Latest!",
"theme" : "NEW"
} ]
},
"brand" : "Versace",
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"description" : "Super elastic fit.",
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"imageInfo" : {
"effect" : "NONE",
"images" : [ {
"alt" : "A woman wearing a white t-shirt",
"caption" : "The model is 176 cm tall and is wearing size S",
"custom" : { },
"sources" : [ {
"url" : "https://cdn.example.com/img/j12_prod.jpg",
"height" : 820,
"width" : 420
} ]
} ],
"thumbnail" : "https://cdn.example.com/thumbs/j12_prod.jpg"
},
"inStock" : true,
"key" : "p1000-101",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "men/jeans/country-fit-cowboy-jeans",
"listPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"name" : "Romeo",
"rating" : 4.5,
"remainingVariants" : 0,
"sellingPrice" : {
"max" : 4500.0,
"min" : 190.5
},
"series" : "Billy",
"swatch" : {
"colors" : [ "#FF0000" ],
"type" : "COLORS"
},
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"title" : "Country Fit Cowboy Jeans",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"variants" : [ {
"availability" : [ {
"channel" : "STORE",
"key" : "boardwalk",
"stockNumber" : 5
} ],
"custom" : { },
"depth" : {
"amount" : 25.0,
"unit" : "cm"
},
"height" : {
"amount" : 25.0,
"unit" : "cm"
},
"inStock" : true,
"key" : "1000-101_RED",
"label" : "XL",
"length" : {
"amount" : 25.0,
"unit" : "cm"
},
"link" : "women/pants/khaki/101-v3-red",
"listPrice" : 15.0,
"prices" : [ {
"id" : "VIP_EUR",
"listPrice" : 12.99,
"sellingPrice" : 9.99
} ],
"sellingPrice" : 24.0,
"stockNumber" : 5,
"ticket" : "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7",
"typedCustom" : {
"json" : { },
"lengths" : { },
"numbers" : { }
},
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"volume" : {
"amount" : 25.0,
"unit" : "cm"
},
"weight" : {
"amount" : 25.0,
"unit" : "cm"
},
"width" : {
"amount" : 25.0,
"unit" : "cm"
}
} ],
"remaining" : 2
} ],
"showMoreLink" : "https://example.com/prods/jeans/levis",
"visible" : true,
"visualization" : "CAROUSEL"
} ],
"seo" : {
"metaDescription" : "Exclusive loafers for everyday use",
"pageHeading" : "OUR LOAFERS",
"pageTitle" : "Loafers",
"preamble" : "Exclusive loafers for everyday use"
}
}
Schema
LandingPageResult¶
The object representation of the landing page result.
Name | Type | Description | Example |
---|---|---|---|
contentLists | ContentList[] | A list of content lists to be included in the response. Amount of content items per list defaults to 10. | |
customData | <string, string> | A key-value mapping of custom data associated with this page as defined in the page import. | {"preamble":"A carefully curated selection of products...","bannerImage":"/assets/banners/sale_01.jpg"} |
navigation | NavigationResult | An object with navigation options. Defaults to include: false. Set to include: true to return the navigation object (including breadcrumbs), i.e. when navigation is handled through Elevate. | |
primaryList | PrimaryList | A primary listing to be included in the response, additionally supporting filter restrictions of the listing. I.e. a typical category product listing. | |
published | boolean | Is true if the returned page's settings were overridden from the apps | |
recommendationLists | RecommendationProductList[] | A list of recommendation lists to be included in the response. | |
seo | Seo | SEO information in accordance to the Page settings for the current page in the Category and Landing Pages tab of the Experience app. |
Schemas¶
Inner schemas
Badges¶
Name | Type | Description | Example |
---|---|---|---|
primary | ProductBadge[] | Badges in the primary area | |
secondary | ProductBadge[] | Badges in the secondary area |
Breadcrumb¶
The breadcrumb navigation object.
Name | Type | Description | Example |
---|---|---|---|
label | string | Breadcrumb label | "Women's shoes" |
path | string | Breadcrumb path | "womens/shoes/" |
CheckboxFacetResult¶
A facet designed to be rendered as a checkbox.
Name | Type | Description | Example |
---|---|---|---|
count | integer | For checkbox facets: the number of products that match the criteria. Only available when selected is true | 10 |
id | string | The identifier for the facet. Should be used when creating a facet query-parameter in combination with a facet value. | "size" |
label | string | The presentation text for the facet. | "size" |
selected | boolean | For checkbox facets: identifies the checkbox as selected. | true |
type | string | The type of facet. Supported values: SIZE , RANGE , TEXT , COLOR , EMPTY , CHECKBOX . | "RANGE" |
ColorFacetResult¶
A facet containing color values.
Name | Type | Description | Example |
---|---|---|---|
id | string | The identifier for the facet. Should be used when creating a facet query-parameter in combination with a facet value. | "size" |
label | string | The presentation text for the facet. | "size" |
selectedCount | integer | The number of selected facet values. | |
type | string | The type of facet. Supported values: SIZE , RANGE , TEXT , COLOR , EMPTY , CHECKBOX . | "RANGE" |
values | ColorResult[] | The values of the facet. |
ColorResult¶
Name | Type | Description | Example |
---|---|---|---|
color | string | A CSS-color code for this color facet. | |
count | integer | The number of values that matches the criteria. | |
id | string | The identifier for the facet value, used by Elevate to determine which facet value has been selected. Should only be used when creating facet query-parameters. | |
label | string | The presentation text for the facet value. | |
selected | boolean | Identifies the value as selected. |
ContentFilter¶
Content filters can be applied to most content listings and are included in the request body for the target listing. Applying a filter will restrict the set of returned content and can only be string value filters e.g. not numeric. Listing multiple attributes to filter on will restrict the content to all conditions (logical AND). When listing values within one attribute, content with any of the listed properties apply (logical OR). In addition, any custom attribute can be used as a value filter, through prefixing the attribute to be filtered with custom., for example custom.season. The following example filters on content having both a specific designer and one or both seasons listed: {"custom.designer": "Langdon","type": "article", "custom.season": ["Winter", "Spring"]}
Here is a brief description of the filters available:
Name | Type | Description | Example |
---|---|---|---|
content_key | string[] | The key(s) of the content items you wish to filter. | ["a1","d2"] |
custom.ATTRIBUTE | string | The custom attribute as the name and then the values you wish to filter on. Note that ATTRIBUTE should be replaced with a custom attribute in the data feed. | "abc123" |
type | string[] | The type(s) of the content items you wish to filter. | ["article","designer"] |
ContentItem¶
Object representation of the content item.
Name | Type | Description | Example |
---|---|---|---|
custom | <string, CustomAttributeResult[]> | Custom attributes of the content item, represented as key-value pairs. | {"tags":[{"id":"78","label":"Guide"},{"id":"223","label":"Jeans"}]} |
description | string | Description of the content item. Undefined if omitted during import. | "To wash or not to wash? And how?! Those are questions jeans shoppers are asking." |
image | Image | Image information. Undefined if omitted during import. | |
key | string | Content identifier | "wash_care" |
link | string | Link to the page representing this content item. | "/wash-guide" |
releaseDate | string | Release date of the content item. Undefined if omitted during import. | "2021-10-01T00:00:00Z" |
ticket | string | Used in notification calls to register visitor interaction. | "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7" |
title | string | Title of the content item. | "How to wash jeans" |
type | string | Type of the content item. | "article" |
ContentList¶
The object representation of the content list. Content lists are supported by the Search-page, autocomplete and landing-page. To include content lists in a page response, the request body must include a content list configuration.
Name | Type | Description | Example |
---|---|---|---|
id | string | List identifier. | "content-hits" |
items | ContentItem[] | The content items. | |
totalHits | integer | The total number of content that matches the filter and query if applicable. | 10 |
ContentListSettingsLandingPage¶
The object representing the landing page content list settings.
Name | Type | Description | Example |
---|---|---|---|
algorithm | string | How to prioritize which content to include Supported values: TOP_CONTENT , NEWEST_CONTENT . | "TOP_CONTENT" |
contentFilter | ContentFilter | {"custom.designer":"Langdon","type":"article","custom.season":["Winter","Spring"]} | |
id | string | The id of this content list Min length: 1 . Max length: 20 . Pattern: ^[A-Za-z0-9_-]*$ . | "cl1" |
limit | integer | How many items to include in the response Min length: 1 . Max length: 200 . Min: 1 . Max: 200 . |
CustomAttributeResult¶
Name | Type | Description | Example |
---|---|---|---|
id | string | Id of the attribute (the actual value). | "summer" |
label | string | The label of the attribute (the name attribute in the feed - currently not available for content items). | "Summer" |
FacetResult¶
A collection of facets. Depending on the type they may have additional fields.
One of: CheckboxFacetResult or ColorFacetResult or RangeFacetResult or SizeFacetResult or TextFacetResult
FormatResult¶
Name | Type | Description | Example |
---|---|---|---|
format | string | The format, e.g. SML or custom.EU. Empty if size cleaning is enabled in the experience app. | |
values | SizeResult[] | The size values for the format. |
Image¶
The object representation of an image.
Name | Type | Description | Example |
---|---|---|---|
alt | string | Element of image specifying the alt text of an image. The alt text should describe the image. Always returned along with the image. | "A woman wearing a white t-shirt" |
caption | string | Element of image specifying the caption for the image, only returned on the product page (or content information for content). | "The model is 176 cm tall and is wearing size S" |
custom | <string, string> | Custom attributes of the image. | |
sources | Source[] |
ImageInfo¶
The object representation of image information.
Name | Type | Description | Example |
---|---|---|---|
effect | string | The interaction effects of the product images. Merchandiser option. Defaults to NONE if there are fewer than two valid images for that product. Supported values: NONE , SWAP , GALLERY . | "NONE" |
images | Image[] | The product images to display. | |
thumbnail | string | The url of the thumbnail for the product. Undefined if images is empty. | "https://cdn.example.com/thumbs/j12_prod.jpg" |
MeasurementResult¶
Name | Type | Description | Example |
---|---|---|---|
amount | number | The amount of the measurement as provided in the import. | 25 |
unit | string | The unit of the measurement as provided in the import. | "cm" |
NavigationResult¶
The object representation of a navigation result.
Name | Type | Description | Example |
---|---|---|---|
breadcrumbs | Breadcrumb[] | List of breadcrumbs | |
tree | NavigationTreeNode | Tree of navigation nodes |
NavigationSettings¶
The object representation of the navigation configuration.
Name | Type | Description | Example |
---|---|---|---|
include | boolean | Set to true to return the navigation object (including breadcrumbs), i.e. when navigation is handled through Elevate. Default: false . | true |
NavigationTreeNode¶
The object representation of the navigation node.
Name | Type | Description | Example |
---|---|---|---|
children | NavigationTreeNode[] | A list of NavigationNode children of the current node. | |
count | integer | The number of product groups in the node. | 5 |
customData | <string, string> | A key-value mapping of custom data associated with this page as defined in the navigation import. | {"highlight":"true","viewableFrom":"2010-10-20 00:00:00"} |
expandable | boolean | Indicates that this node can be expanded, e.g. a request with this node as selected will return children under this node. | true |
iconPath | string | The path to the image used as this node's icon, if any. | "/resources/images/navigation/spring_node.jpg" |
label | string | The presentation text for the node. | "All products" |
link | string | Link to page, will only by populated if type is PAGE_LINK | "/springselections" |
path | string | The path to the node. | "/" |
selected | boolean | Identifies the node as selected in the tree. | false |
type | string | The type of node, used for separating visuals of different node types. Supported values: PRODUCT , LABEL , PAGE_LINK , SPACER . | "PAGE_LINK" |
Price¶
Name | Type | Description | Example |
---|---|---|---|
max | number | 4500.0 | |
min | number | 190.5 |
PriceResult¶
Name | Type | Description | Example |
---|---|---|---|
id | string | The id identifying the custom price. | "VIP_EUR" |
listPrice | number | The price displayed in the shop as the standard price. | 12.99 |
sellingPrice | number | The price that the customer pays. | 9.99 |
PrimaryList¶
The object representation of the primary list
Name | Type | Description | Example |
---|---|---|---|
facets | FacetResult[] | Collection of facets. | |
productGroups | ProductGroupResult[] | A list of products, represented as groups containing a main product and its sibling products within its product group. Each element in this list should correspond to its own product card. | |
sliceRanges | SliceRangeResult[] | A list of ranges for slices, which describe when a slice starts and when it ends. | |
sort | SortOrderResult | How the product groups are sorted. | |
totalHits | integer | The total number of product group hits. |
PrimaryListSettings¶
A configuration object allowing filter restrictions of the primary listing, i.e. the search results.
Name | Type | Description | Example |
---|---|---|---|
include | boolean | Specifies if the primary list should be included or not in the response. Always included in search page requests. Default: true . | true |
productFilter | ProductFilter | ||
productRules | string | A logical expression used by Voyado Elevate 4 to restrict the data set to a Product Selection. The rules can go from easy, such as to only include a product by its key or items that are in stock, to more complex expressions with multiple attributes for products at the same time. If no rules are provided, the entire data set will be used. Please note that when used in Landing Pages, the "Handpicked" rule must be the first rule, and must contain a set of product keys as its only condition. At most 100 product keys can be handpicked in a single request, and at most 200 attribute values can be supplied for each attribute. | "rule incl product_key { "ABC123" "DEF456" "GHJ789" } rule incl custom.material { "leather" } excl price [ -infinity, 100 ] rule incl newness 10d rule incl brand { "Birkenstock" } excl custom.isActive { "false" } " |
ProductBadge¶
Name | Type | Description | Example |
---|---|---|---|
attribute | string | The attribute in the data feed that the badge is based on. | "is_new" |
label | string | The presentation text of the badge. | "Latest!" |
theme | string | The type of badge style used. Supported values: NONE , SALE , DISCOUNT , NEW , THEME_1 , THEME_2 , THEME_3 . | "NEW" |
ProductFilter¶
Deprecated
This feature will most likely be removed in new versions.
A product filter restricting which products that the listing may contain. Supports single values, lists, and (for numerical attributes) ranges. Listing multiple attributes to filter on will restrict the products to all conditions (logical AND). When listing values within one attribute, products with any of the listed properties apply (logical OR). In addition to built-in attributes, it is also possible to filter on custom facets, through prefixing the attribute to be filtered with custom., for example "custom.season": ["Winter", "Spring"]. At most 200 attribute values can be supplied per attribute and at most 100 product keys can be picked at once.
Name | Type | Description | Example |
---|---|---|---|
price | RangeAttribute | An example parameter of a range attribute. |
ProductGroupResult¶
The object representation of the product group result.
Name | Type | Description | Example |
---|---|---|---|
key | string | Product group identifier. | "PRODGROUP060194" |
products | ProductResult[] | Products in the Product group. The first element corresponds to the main product. The remaining elements are the other products in the group, to be shown as thumbnails or color swatches, etc. | |
remaining | integer | The number of products within this group not included in the response. E.g. if Elevate has been set to include the first five products in the response and this group has seven, there will be two remaining. | 2 |
ProductResult¶
The object representation of a product.
Name | Type | Description | Example |
---|---|---|---|
badges | Badges | Product badges, split per area. | |
brand | string | Brand of the product. | "Versace" |
custom | <string, CustomAttributeResult[]> | Custom attributes of the product. Only available on the product-page productGroup and when using the query parameter 'presentCustom'. | |
depth | MeasurementResult | Depth of the product. Undefined if omitted during import. | |
description | string | Description of the product. Only available on the product-page productGroup, unless specified in a template. Undefined if omitted during import. | "Super elastic fit." |
height | MeasurementResult | Height of the product. Undefined if omitted during import. | |
imageInfo | ImageInfo | Product image information. | |
inStock | boolean | True if any variant is in stock. | true |
key | string | Product identifier. | "p1000-101" |
length | MeasurementResult | Length of the product. Undefined if omitted during import. | |
link | string | Link to the product page. | "men/jeans/country-fit-cowboy-jeans" |
listPrice | Price | Min and max price | |
name | string | Name of the product. | "Romeo" |
rating | number | Current rating value. Undefined when ratings are disabled. | 4.5 |
remainingVariants | integer | The number of variants not included in the response. Only included if the number of variants have been limited through a template. Does not include variants hidden for being out of stock. | |
sellingPrice | Price | Min and max price | |
series | string | Series that this product belongs to. | "Billy" |
swatch | Swatch | Swatch information. | |
ticket | string | The ticket is a unique string for an object generated by Elevate. | "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7" |
title | string | Title of the product. | "Country Fit Cowboy Jeans" |
typedCustom | TypedCustomResult | Typed custom attributes of the product. Only available on the product-page productGroup and when using the query parameter 'presentCustom'. | |
variants | VariantResult[] | List of variants. Empty if all variants are out of stock and the setting Display out of stock sizes in product card is disabled. | |
volume | MeasurementResult | Volume of the product. Undefined if omitted during import. | |
weight | MeasurementResult | Weight of the product. Undefined if omitted during import. | |
width | MeasurementResult | Width of the product. Undefined if omitted during import. |
RangeAttribute¶
Deprecated
This feature will most likely be removed in new versions.
A min and max range value object for a specific attribute.
Name | Type | Description | Example |
---|---|---|---|
max | integer | Defaults to the maximum eligible value if omitted. | 1000 |
min | integer | Defaults to 0 if omitted. | 0 |
RangeFacetResult¶
A facet containing range values.
Name | Type | Description | Example |
---|---|---|---|
id | string | The identifier for the facet. Should be used when creating a facet query-parameter in combination with a facet value. | "size" |
label | string | The presentation text for the facet. | "size" |
max | number | The maximum inclusive value of the range. Undefined if no products in selection. | |
maxSelected | number | The selected maximum value. Undefined if not selected. | |
min | number | The minimum inclusive value of the range. Undefined if no products in selection. | |
minSelected | number | The selected minimum value. Undefined if not selected. | |
type | string | The type of facet. Supported values: SIZE , RANGE , TEXT , COLOR , EMPTY , CHECKBOX . | "RANGE" |
unit | string | The unit of the value. Only applicable for measurements | "cm" |
RecListRequestSettings¶
A configuration object for the recommendation list request. Most page types support recommendation lists. To include recommendation lists in a page response, the request body must include the recommendation configuration. Be aware that having many lists with complex rules/algorithms on a page may affect response times.
Name | Type | Description | Example |
---|---|---|---|
id Required | string | An identifier for the recommendation listing area. Multiple pages using the same template can share identifiers, but one identifier may not appear twice within a page. E.g. all product pages should use the same identifier for their alternative recommendation areas. Min length: 1 . Max length: 20 . Pattern: ^[A-Za-z0-9_-]*$ . | "RECS1" |
algorithm | string | The algorithm to apply on the recommendation listing. Defaults to TOP_PRODUCTS. Note that some algorithms may require additional parameters see here for more information. Supported values: TOP_PRODUCTS , PERSONAL , CART , FAVORITES , UPSELL , STYLE_WITH , ALTERNATIVES , NEWEST_PRODUCTS , MORE_FROM_SERIES , RECENTLY_VIEWED , ADD_TO_CART_RECS . | "CART" |
label | string | The presentation text of the list. Min length: 1 . Max length: 200 . Pattern: (?:|.[^s].) . | "Recommended for you" |
limit | integer | The number of product groups to list. Min: 1 . Max: 200 . Default: 4 . | 10 |
params | RequestParams | Any parameters required by the applied algorithm. Conditionally required. | |
productFilter | ProductFilter | A Json expression restricting the products that the recommendation listing may contain. | |
productRules | string | A product rule expression restricting the products that the recommendation listing may contain. | "rule incl product_key { "ABC123" "DEF456" "GHJ789" } rule incl custom.material { "leather" } excl price [ -infinity, 100 ] rule incl newness 10d rule incl brand { "Birkenstock" } excl custom.isActive { "false" } " |
showMoreLink | string | A URL to see a large selection. Undefined if not specified in Elevate Apps. Merchandiser option. Min length: 1 . Max length: 1000 . Pattern: ^(//|/|https?://).* . | "/holiday/sale" |
visualization | string | How the list should be presented. Merchandiser option. Supported values: CAROUSEL , GRID . | "CAROUSEL" |
RecommendationProductList¶
The object representation of a recommendation product list.
Name | Type | Description | Example |
---|---|---|---|
id | string | The identifier of the list. | "PDP-1" |
label | string | The identifier of the list. | "The presentation text of the list." |
productGroups | ProductGroupResult[] | Products that match the selected algorithm. Each group contains a main product and its sibling products within its product group. Each group should correspond to one product card. | |
showMoreLink | string | A URL to see a large selection. Undefined if not specified in eSales Apps. Merchandiser option. | "https://example.com/prods/jeans/levis" |
visible | boolean | Whether the recommendation list is visible or has been hidden in the apps | |
visualization | string | How the list should be presented. Merchandiser option. Supported values: CAROUSEL , GRID . | "CAROUSEL" |
RequestParams¶
Name | Type | Description | Example |
---|---|---|---|
cart | string[] | A list of product and/or variant keys depicting the cart content. Must match keys of variants or products in the data feed. Always use the variant key when possible. Defaults to the provided cart parameter for cart-page requests. Min items: 0 . Max items: 250 . | "v1_1" |
productKey | string | The base product for the ALTERNATIVES, STYLE_WITH, and UPSELL recommendation algorithms. Defaults to the provided product key parameter for product-page requests. | "<PRODUCT_KEY_FROM_YOUR_FEED>" |
Seo¶
Name | Type | Description | Example |
---|---|---|---|
metaDescription | string | Description for the current category, use with: Undefined if not configured for the current page. | "Exclusive loafers for everyday use" |
pageHeading | string | The heading for the page | "OUR LOAFERS" |
pageTitle | string | Title for the current category, use with: | "Loafers" |
preamble | string | Preamble text for the current category. Undefined if not configured for the current page. | "Exclusive loafers for everyday use" |
SizeFacetResult¶
A facet containing size values.
Name | Type | Description | Example |
---|---|---|---|
id | string | The identifier for the facet. Should be used when creating a facet query-parameter in combination with a facet value. | "size" |
label | string | The presentation text for the facet. | "size" |
selectedCount | integer | The number of selected facet values. | |
sizeTypes | SizeTypeResult[] | The defined SizeTypes. | |
type | string | The type of facet. Supported values: SIZE , RANGE , TEXT , COLOR , EMPTY , CHECKBOX . | "RANGE" |
SizeResult¶
Name | Type | Description | Example |
---|---|---|---|
count | integer | The number of values that matches the criteria. | |
id | string | The identifier for the facet value, used by Elevate to determine which facet value has been selected. Should only be used when creating facet query-parameters. | |
label | string | The presentation text for the facet value. | |
selected | boolean | Identifies the value as selected. |
SizeTypeResult¶
Name | Type | Description | Example |
---|---|---|---|
formats | FormatResult[] | The size formats for the size type. | |
label | string | The size type, e.g. shoe or clothes sizes. Empty if size type is disabled in the experience app. |
SliceRangeResult¶
Object representing the range of a slice.
Name | Type | Description | Example |
---|---|---|---|
from | integer | Start index in the PrimaryList for this slice, inclusive. | 0 |
id | string | Id of the slice | |
to | integer | End index in the PrimaryList for this slice, exclusive. | 1 |
SortOption¶
Name | Type | Description | Example |
---|---|---|---|
id | string | Identifier for the SortOption. Supported values: RELEVANCE , NEWEST_FIRST , PRICE_ASCENDING , PRICE_DESCENDING , DISCOUNT , RATING , NAME , LENGTH_INCREASING , LENGTH_DECREASING , WIDTH_INCREASING , WIDTH_DECREASING , HEIGHT_INCREASING , HEIGHT_DECREASING , DEPTH_INCREASING , DEPTH_DECREASING , VOLUME_INCREASING , VOLUME_DECREASING , WEIGHT_INCREASING , WEIGHT_DECREASING , TITLE . | "RELEVANCE" |
label | string | The presentation text for the SortOption. | "Relevance" |
SortOrderResult¶
The object representation of the sort order result.
Name | Type | Description | Example |
---|---|---|---|
options | SortOption[] | Which sort types to choose from. | |
selected | string | Which sort type is currently selected. Supported values: RELEVANCE , NEWEST_FIRST , PRICE_ASCENDING , PRICE_DESCENDING , DISCOUNT , RATING , NAME , LENGTH_INCREASING , LENGTH_DECREASING , WIDTH_INCREASING , WIDTH_DECREASING , HEIGHT_INCREASING , HEIGHT_DECREASING , DEPTH_INCREASING , DEPTH_DECREASING , VOLUME_INCREASING , VOLUME_DECREASING , WEIGHT_INCREASING , WEIGHT_DECREASING , TITLE . | "RELEVANCE" |
Source¶
Name | Type | Description | Example |
---|---|---|---|
url Required | string | The URL of the image source. | "https://cdn.example.com/img/j12_prod.jpg" |
height | integer | The height of the image. Undefined if height was not specified. | 820 |
width | integer | The width of the image. Undefined if width was not specified and hasn't yet been assessed by the image service. | 420 |
Swatch¶
Swatch information is used to generate swatches for different products. The type COLORS is the most common returned type and is accompanied by the actual colours as CSS colour codes. Special colour properties, supported in the data feed such as GOLD, SILVER, or MULTI are other possible return types. These are to be used to generate swatches matching these specific properties.
Name | Type | Description | Example |
---|---|---|---|
colors | string[] | An array with 1 - 3 CSS colour codes for SwatchType COLORS. Empty for other types. | "#FF0000" |
type | string | Type of colour swatch for the product. Supported values: MISSING_COLORS , COLORS , SILVER , GOLD , MULTI . | "COLORS" |
TextFacetResult¶
A facet containing text values.
Name | Type | Description | Example |
---|---|---|---|
id | string | The identifier for the facet. Should be used when creating a facet query-parameter in combination with a facet value. | "size" |
label | string | The presentation text for the facet. | "size" |
selectedCount | integer | The number of selected facet values. | |
sort | string | How the facet values are sorted. Supported values: RELEVANCE , ALPHABETICAL , NATURAL . | |
type | string | The type of facet. Supported values: SIZE , RANGE , TEXT , COLOR , EMPTY , CHECKBOX . | "RANGE" |
values | TextValueResult[] | The values of the facet. |
TextValueResult¶
Name | Type | Description | Example |
---|---|---|---|
count | integer | The number of values that matches the criteria. | |
id | string | The identifier for the facet value, used by Elevate to determine which facet value has been selected. Should only be used when creating facet query-parameters. | |
label | string | The presentation text for the facet value. | |
selected | boolean | Identifies the value as selected. |
TypedCustomResult¶
Name | Type | Description | Example |
---|---|---|---|
json | <string, object> | Custom json data of the product matching json attributes requested by the query parameter 'presentCustom'. | |
lengths | <string, MeasurementResult> | Custom lengths of the product matching length attributes requested by the query parameter 'presentCustom'. | |
numbers | <string, number> | Custom numbers of the product matching numbers attributes requested by the query parameter 'presentCustom'. |
VariantAvailabilityInfo¶
Represents availability in one store or online.
Name | Type | Description | Example |
---|---|---|---|
channel | string | The channel either STORE or ONLINE. | "STORE" |
key | string | The key identifying the store. Null if channel = ONLINE. | "boardwalk" |
stockNumber | integer | The number of items of this variant in stock in this channel/key. | 5 |
VariantResult¶
The object representation of a variant.
Name | Type | Description | Example |
---|---|---|---|
availability | VariantAvailabilityInfo[] | List of availability information. Contains an entry for the online channel and one for each relevant store. | |
custom | <string, CustomAttributeResult[]> | Custom attributes of the variant. Only available on the product-page productGroup and when using the query parameter 'presentCustom'. | |
depth | MeasurementResult | Depth of the variant. Undefined if omitted during import. | |
height | MeasurementResult | Height of the variant. Undefined if omitted during import. | |
inStock | boolean | True if the variant is in stock. | true |
key | string | Variant identifier. | "1000-101_RED" |
label | string | The label of the variant. Defaults to size if undefined. Undefined if neither label or size is specified in the import. | "XL" |
length | MeasurementResult | Length of the variant. Undefined if omitted during import. | |
link | string | Link to product page with variant selected. | "women/pants/khaki/101-v3-red" |
listPrice | number | List price of the variant. | 15.0 |
prices | PriceResult[] | Additional prices for presentation. Only available on the product-page productGroup and when using the query parameter 'presentPrices'. | |
sellingPrice | number | Selling price of the variant. | 24.0 |
size | string | A representative size of the variant. Overridden by label if provided. Deprecated, use label instead, | "XL" |
stockNumber | integer | The amount of this variant that is in stock. | 5 |
ticket | string | Unique ticket for the eSales object. | "Oy9mYXNoaW9uL0RFU0tUT1AvQ09OVEVOVF9TRUFSQ0hfUEFHRS9QUklNQVJZX0xJU1Q7Iztjb250ZW50X2tleTtkMDAxOyM7IzsjOyM7" |
typedCustom | TypedCustomResult | Typed custom attributes of the variant. Only available on the product-page productGroup and when using the query parameter 'presentCustom' requesting typed custom attributes. | |
volume | MeasurementResult | Volume of the variant. Undefined if omitted during import. | |
weight | MeasurementResult | Weight of the variant. Undefined if omitted during import. | |
width | MeasurementResult | Width of the variant. Undefined if omitted during import. |