Navigation tree¶
Navigation tree requests are used to retrieve the navigation structure for the site, suitable to use for mobile navigation or top navigation on the site. The navigation content and structure returned in the request is set up and managed in the Experience App.
Info
It is recommended that all navigation functionality is handled in the same system. This means if the navigation configuration is planned to be handled in a separate system, you are also recommended to use that system for retrieving the navigation structure.
Request¶
Request method¶
GET
Request URL¶
https://{cluster-id}.api.esales.apptus.cloud/api/v2/queries/navigation-tree
Request parameters¶
Name | Description | Example |
---|---|---|
market | string | The visitor market identifier. Must match the corresponding market identifier in the data feed. Required |
touchpoint | string | The visitor's touchpoint. Valid values are DESKTOP and MOBILE . Required |
customerKey | string | A key that uniquely identifies the current visitor. Using UUIDs as keys are recommended. Required |
sessionKey | string | A unique key, identifying the session. Using UUIDs as keys are recommended. Required |
priceId | string | A custom price identifier. Must match supplied custom price identifiers in the data feed. |
notify | boolean | A boolean that can be used to disable notifications and behavioural registration for the query. |
Request headers¶
All request headers are optional, but recommended when eligible.
Content-Type
-application/json
. To prevent automatic browser preflight requests,text/plain
is also supported.Accept-Encoding
-gzip
. Allows responses to be compressed using Gzip.User-Agent
- User agent. Enables internal tracking.
Request example¶
A navigation tree query example is demonstrated using cURL below.
#!/bin/bash
curl -i \
-H "Accept-Encoding: gzip" \
-H "User-Agent: {client user agent}" \
"https://{cluster-id}.api.esales.apptus.cloud/api/v2/queries/navigation-tree?market=EU&sessionKey=4b116e34-0a7a-ce5d-5591-75c62f231967&customerKey=4b116e34-0a7a-ce5d-5591-75c62f231967&touchpoint=MOBILE"
Response¶
Response headers¶
X-Response-Time
Response content-type¶
application/json
Response codes¶
Response | Description |
---|---|
200 | Query accepted, content flattened and serialised to JSON, see Response objects. |
400 | Invalid or missing arguments for this query. |
404 | End point is not valid. |
503 | Service unavailable, no products found in the cluster. |
5xx | Server error such as cluster unavailable or busy. The response body may contain more information about the error. |
Response objects¶
JSON
{
"tree": {
"type": "PRODUCT",
"path": "/",
"label": "All",
"count": 595,
"children": [
{
"type": "PRODUCT",
"path": "/women",
"label": "Women",
"count": 183,
"children": [
{
"type": "PRODUCT",
"path": "/women/tops",
"label": "Tops",
"count": 70,
"children": [
{
"type": "PRODUCT",
"path": "/women/tops/shirts",
"label": "Shirts",
"count": 30,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/tops/tank-top",
"label": "Tank top",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/tops/t-shirts",
"label": "T-shirts",
"count": 11,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/women/dresses",
"label": "Dresses",
"count": 11,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/skirts",
"label": "Skirts",
"count": 7,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/shorts",
"label": "Shorts",
"count": 6,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/trousers",
"label": "Trousers",
"count": 31,
"children": [
{
"type": "PRODUCT",
"path": "/women/trousers/jeans",
"label": "Jeans",
"count": 14,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/trousers/chinos",
"label": "Chinos",
"count": 4,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/trousers/slacks",
"label": "Slacks",
"count": 13,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/women/outerwear",
"label": "Outerwear",
"count": 10,
"children": [
{
"type": "PRODUCT",
"path": "/women/outerwear/coats",
"label": "Coats",
"count": 4,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/outerwear/jackets",
"label": "Jackets",
"count": 6,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/women/shoes",
"label": "Shoes",
"count": 8,
"children": [
{
"type": "PRODUCT",
"path": "/women/shoes/loafers",
"label": "Loafers",
"count": 4,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/shoes/sandals",
"label": "Sandals",
"count": 4,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/women/blazers",
"label": "Blazers",
"count": 4,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/swimwear",
"label": "Swimwear",
"count": 6,
"children": [
{
"type": "PRODUCT",
"path": "/women/swimwear/swimsuits",
"label": "Swimsuits",
"count": 2,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/swimwear/bikinis",
"label": "Bikinis",
"count": 4,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/women/accessories",
"label": "Accessories",
"count": 30,
"children": [
{
"type": "PRODUCT",
"path": "/women/accessories/headwear",
"label": "Headwear",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/accessories/bags",
"label": "Bags",
"count": 6,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/accessories/belts",
"label": "Belts",
"count": 18,
"children": []
},
{
"type": "PRODUCT",
"path": "/women/accessories/scarves",
"label": "Scarves",
"count": 3,
"children": []
}
]
}
]
},
{
"type": "PRODUCT",
"path": "/men",
"label": "Men",
"count": 412,
"children": [
{
"type": "PRODUCT",
"path": "/men/tops",
"label": "Tops",
"count": 185,
"children": [
{
"type": "PRODUCT",
"path": "/men/tops/shirts",
"label": "Shirts",
"count": 90,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/tops/t-shirts",
"label": "T-shirts",
"count": 20,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/tops/piques",
"label": "Piqués",
"count": 20,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/tops/cardigans",
"label": "Cardigans",
"count": 7,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/tops/slipovers",
"label": "Slipovers",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/tops/sweaters",
"label": "Sweaters",
"count": 45,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/men/shorts",
"label": "Shorts",
"count": 25,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/trousers",
"label": "Trousers",
"count": 54,
"children": [
{
"type": "PRODUCT",
"path": "/men/trousers/jeans",
"label": "Jeans",
"count": 20,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/trousers/chinos",
"label": "Chinos",
"count": 5,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/trousers/suit-trousers",
"label": "Suit Trousers",
"count": 13,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/trousers/slacks",
"label": "Slacks",
"count": 16,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/men/outerwear",
"label": "Outerwear",
"count": 19,
"children": [
{
"type": "PRODUCT",
"path": "/men/outerwear/jackets",
"label": "Jackets",
"count": 14,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/outerwear/vests",
"label": "Vests",
"count": 5,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/men/shoes",
"label": "Shoes",
"count": 4,
"children": [
{
"type": "PRODUCT",
"path": "/men/shoes/loafers",
"label": "Loafers",
"count": 4,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/men/blazers",
"label": "Blazers",
"count": 40,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/suits",
"label": "Suits",
"count": 5,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/swimwear",
"label": "Swimwear",
"count": 9,
"children": [
{
"type": "PRODUCT",
"path": "/men/swimwear/swim-trunks",
"label": "Swim trunks",
"count": 9,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/men/accessories",
"label": "Accessories",
"count": 71,
"children": [
{
"type": "PRODUCT",
"path": "/men/accessories/caps",
"label": "Caps",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/ties",
"label": "Ties",
"count": 10,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/bow-ties",
"label": "Bow ties",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/bags",
"label": "Bags",
"count": 7,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/belts",
"label": "Belts",
"count": 17,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/scarves",
"label": "Scarves",
"count": 10,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/bracelets",
"label": "Bracelets",
"count": 2,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/socks",
"label": "Socks",
"count": 6,
"children": []
},
{
"type": "PRODUCT",
"path": "/men/accessories/sunglasses",
"label": "Sunglasses",
"count": 13,
"children": []
}
]
}
]
},
{
"type": "PRODUCT",
"path": "/sale",
"label": "Sale",
"count": 17,
"children": [
{
"type": "PRODUCT",
"path": "/sale/women",
"label": "Women",
"count": 2,
"children": []
},
{
"type": "PRODUCT",
"path": "/sale/men",
"label": "Men",
"count": 15,
"children": [
{
"type": "PRODUCT",
"path": "/sale/men/tops",
"label": "Tops",
"count": 10,
"children": [
{
"type": "PRODUCT",
"path": "/sale/men/tops/shirts",
"label": "Shirts",
"count": 9,
"children": []
},
{
"type": "PRODUCT",
"path": "/sale/men/tops/t-shirts",
"label": "T-shirts",
"count": 1,
"children": []
}
]
},
{
"type": "PRODUCT",
"path": "/sale/men/shorts",
"label": "Shorts",
"count": 3,
"children": []
},
{
"type": "PRODUCT",
"path": "/sale/men/trousers",
"label": "Trousers",
"count": 1,
"children": [
{
"type": "PRODUCT",
"path": "/sale/men/trousers/slacks",
"label": "Slacks",
"count": 1,
"children": []
}
]
}
]
}
]
}
]
}
}
Name | Type | Description |
---|---|---|
navigation | NavigationTreeNode | The root node of the navigation structure. |