Skip to content

Pages

https://{cluster-id}.api.esales.apptus.cloud/api/v2/import/pages

POST

An import of pages to specify categories and landing pages.

Request

Header parameters

Name Description Example
Api-Key
Required
Api-key that was supplied during on-boarding pkA123456789AB1BE..
Accept-Encoding Allows responses to be compressed using Gzip. gzip
Content-Encoding Defines which encoding was used to compress the data. gzip
Content-Type application/json application/json

Query parameters

Name Description Example
name A name to identify the import in logs

Supported Content-Type

application/json

Request body

Example
application/json
{
  "market" : "string",
  "type" : "FULL",
  "addOrUpdate" : [ {
    "id" : "/women/shoes",
    "heading" : "Shoes",
    "primaryList" : {
      "blocked" : [ "<PRODUCT_KEY_FROM_YOUR_FEED>" ],
      "facetsOverride" : {
        "enabled" : true,
        "facets" : [ {
          "attribute" : "brand",
          "sortOrder" : "RELEVANCE"
        } ]
      },
      "keywords" : {
        "additional" : [ "holiday" ],
        "enabled" : true,
        "headingAsKeyword" : true
      },
      "pinned" : [ "<PRODUCT_KEY_FROM_YOUR_FEED>" ],
      "restrictChildRules" : false,
      "rules" : "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\" } ",
      "sortOrderOverride" : {
        "enabled" : true,
        "sortOrders" : [ "PRICE_DECREASING" ]
      }
    },
    "recLists" : [ {
      "id" : "PDP-1",
      "algorithm" : "TOP_PRODUCTS",
      "blocked" : [ "<PRODUCT_KEY_FROM_YOUR_FEED>" ],
      "limit" : 8,
      "pinned" : [ "<PRODUCT_KEY_FROM_YOUR_FEED>" ],
      "rules" : "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\" } "
    } ]
  } ],
  "remove" : [ "string" ]
}
Schema

PageContainer

Name Type Description Example
market
Required
string The market identifier to add pages to. Must match the corresponding market identifier in the data feed.
type
Required
string Type of import. Partial amends to the existing page collection, while full replaces the existing pages. Supported values: FULL, PARTIAL.
addOrUpdate Page[] Pages to add or update.
remove string[] Pages to remove, based on ids.
curl -i \
-X POST \
-H 'Api-Key: pkA123456789AB1BE..' \
-H 'Accept-Encoding: gzip' \
-H 'Content-Encoding: gzip' \
-H 'Content-Type: application/json' \
"https://{cluster-id}.api.esales.apptus.cloud/api/v2/import/pages?name=name" \
-T request-body.file.gz

Response

Response codes

Status Description
204 The import file was valid.
403 Incorrect cluster credentials.
404 Cluster not found.
409 An import is currently in progress.
500 Server error such as cluster unavailable or busy. If 5xx errors persist, contact Apptus Support and attach any information found in the response body.

Schemas

Inner schemas

FacetSetting

Facet settings can be used to manually specify the facets of a primaryList on a page.

Name Type Description Example
attribute
Required
string The name of the attribute, custom attributes should be prefixed with custom, e.g. brand and custom.attribute. brand
sortOrder string The sort order for the values of a facet. Certain attributes like, newness, does not require a sort order. Supported values: RELEVANCE, ALPHABETIC. RELEVANCE

FacetsOverride

Facets override can be used to define which facets are going to be shown on a page.

Name Type Description Example
enabled boolean Specify if the override should be used or not. true
facets FacetSetting[] The selected facets.

Keywords

Keywords can be used to increase the findability of products originating in the page.

Name Type Description Example
additional string[] Specify additional keywords to be used for the products on the page. holiday
enabled boolean Specify if the override should be used or not. true
headingAsKeyword boolean Specify if the heading of primaryList should be used as a keyword. true

Page

Landing or category page to create.

Name Type Description Example
id
Required
string Id of page, if a page with the same id already exists it'll be amended to unless it's a full import. /women/shoes
heading string Heading of page, normally the name of the navigation node or category Shoes
primaryList PagePrimaryList
recLists PageRecList[] Recommendation lists to include. Be aware that having many lists with complex rules/algorithms on a page may affect response times.

PagePrimaryList

Settings for the primaryList on a landing or category page.

Name Type Description Example
blocked string[] The products to be excluded from the list. <PRODUCT_KEY_FROM_YOUR_FEED>
facetsOverride FacetsOverride
keywords Keywords
pinned string[] The products to be pinned at the start of the list. <PRODUCT_KEY_FROM_YOUR_FEED>
restrictChildRules boolean Specify if child pages should inherit product rules. Only applicable if page id is a path, e.g. /women, and other pages have ids' like /women/shoes.The products on /women/shoes page would already be limited to the rules specified on /women. false
rules string A logical expression used by Apptus eSales 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" }
sortOrderOverride SortOrderOverride

PageRecList

Recommendation list of a page.

Name Type Description Example
id
Required
string Per page unique identifier of a list. PDP-1
algorithm string The algorithms that are available to recommendation lists on landing and category pages. Supported values: TOP_PRODUCTS, PERSONAL, NEWEST_PRODUCTS, FAVORITES. TOP_PRODUCTS
blocked string[] The products to be excluded from the list. <PRODUCT_KEY_FROM_YOUR_FEED>
limit integer The maximum number of product groups to receive on a recommendation list. 8
pinned string[] The products to be pinned at the start of the list. <PRODUCT_KEY_FROM_YOUR_FEED>
rules string A logical expression used by Apptus eSales 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" }

SortOrderOverride

The sort order override can be used to select which sort orders will be available to a primaryLists on page.

Name Type Description Example
enabled boolean Specify if the override should be used or not. true
sortOrders string[] The selected sort orders for the primaryList. PRICE_DECREASING
×
Copyright

This online publication is intellectual property of Voyado Lund AB. Its contents can be duplicated in part or whole, provided that a copyright label is visibly located on each copy and the copy is used in conjunction with the product described within this document.

All information found in these documents has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither Voyado Lund AB nor the authors shall be held liable for possible errors or the consequences thereof.

Software and hardware descriptions cited in these documents might be registered trademarks. All trade names are subject to copyright restrictions and may be registered trademarks. Voyado Lund AB essentially adheres to the manufacturer’s spelling. Names of products and trademarks appearing in this document, with or without specific notation, are likewise subject to trademark and trade protection laws and may thus fall under copyright restrictions.

CLOSE