Navigation¶
https://{cluster-id}.api.esales.apptus.cloud/api/admin/v4/import/navigation
POST¶
An import of navigation nodes. The navigation tree can be partially modified or fully replaced, either while retaining or deleting nodes created in the app. Elevate will attempt to maintain the relative position of retained nodes if their parent nodes are moved or if siblings are reordered. If a parent node is deleted all child nodes will be deleted implicitly.
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
{
"locale" : "sv-SE",
"market" : "se",
"type" : "FULL",
"addOrUpdate" : [ {
"id" : "/women/shirts",
"title" : "Shirts",
"type" : "PAGE",
"customData" : {
"highlight" : "true",
"viewableFrom" : "2010-10-20 00:00:00"
},
"iconPath" : "/resources/images/navigation/shirts.jpg",
"pageId" : "/se/women/shirts",
"parentId" : "/women",
"url" : "/shipping-and-returns"
} ],
"remove" : [ "remove-me" ]
}
Schema
NavigationContainer¶
Name | Type | Description | Example |
---|---|---|---|
locale Required | string | The locale identifier for where the navigation should apply. Must match the corresponding locale identifier in the data feed. | "sv-SE" |
market Required | string | The market identifier for where the navigation should apply. Must match the corresponding market identifier in the data feed. Min length: 1 . Max length: 20 . | "se" |
type Required | string | Type of import. PARTIAL amends to the existing tree, FULL replaces all nodes that originate from api imports (attempting to retain additions from the apps) while FORCE replaces ALL existing pages. We recommendusing PARTIAL or FULL to allow app users to extend the navigation. Supported values: FORCE , FULL , PARTIAL . | "FULL" |
addOrUpdate | NavigationNode[] | Navigation nodes to add or update. Each node must have an id and a type and may specify the parent it should be placed under in the tree. Nodes on the same level will be inserted in order of appearance in the import. | |
remove | string[] | Navigation nodes to remove, based on ids. Only used in partial imports. | "remove-me" |
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/admin/v4/import/navigation?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 support and attach any information found in the response body. |
Schemas¶
Inner schemas
NavigationNode¶
Name | Type | Description | Example |
---|---|---|---|
id Required | string | An identifier to represent the node. It should be unique within the navigation Min length: 1 . Max length: 200 . Pattern: [a-zA-Z0-9/_-]+ . | "/women/shirts" |
title Required | string | The title of the node Min length: 1 . Max length: 200 . | "Shirts" |
type Required | string | What kind of node this is. Different node types have additional required fields. PAGE nodes have a corresponding page (usually a category) and should make up the tree structure of the navigation while LINK and LABEL nodes can be used to add extra information to leaf nodes. Only PAGE nodes are intended to be navigable in the tree as LINK nodes should take the user elsewhere and LABEL nodes are purely cosmetic. Supported values: PAGE , LABEL , LINK . | "PAGE" |
customData | <string, string> | A key-value mapping of custom data fields. The same mapping will be returned in the result of landing-page and navigation requests. The key order is not guaranteed to be the same. Limited to 1000 characters and 50 keys per node. Allowed characters for keys are alphanumerical, '-' and '_' | {"highlight":"true","viewableFrom":"2010-10-20 00:00:00"} |
iconPath | string | A path to an image to be used as an icon for the node Min length: 1 . Max length: 500 . | "/resources/images/navigation/shirts.jpg" |
pageId | string | Required for page nodes! The pageId of the target page Min length: 1 . Max length: 200 . | "/se/women/shirts" |
parentId | string | The id of the parent node in the navigation hierarchy. Omit or set to null for top level nodes. Only page nodes should be parent nodes! Min length: 1 . Max length: 200 . Pattern: [a-zA-Z0-9/_-]+ . | "/women" |
url | string | Required for link nodes! Either a suffix for the own domain or an entire url for another Min length: 1 . Max length: 200 . | "/shipping-and-returns" |