Skip to main content

Navigational Queries

It is possible to use our search engine to power category and landing pages on your website.

To achieve this, you can use the search endpoint and a special format within the query parameter to indicate you are requesting products from a certain category, brand, etc.

Category Navigation

For category navigation, your query should always start with _# followed by the path to the leaf category. For example, to return the products found in a "Smartphones" category with the following path Consumer Electronics > Mobile Phones > Smartphones, the query would be:

_#Consumer Electronics#Mobile Phones#Smartphones

If your category name contains "#" please escape it with a backslash. For example, if the category name is Catalog #1 the query needs to be _#Catalog \#1

If you prefer to use concept identifiers, please use _## followed by the conceptIdName as the query, e.g., _##conceptid12345

When using concept identifiers, the query should contain the conceptIdName for the desired leaf category, not the full category path.

You can find conceptIdNames when you open an attribute in the Data Platform or using the Get concepts API endpoint.

Landing Pages

For landing pages, your query should be _# to indicate this is not a normal search query. However, instead of providing a category path, you should now set filters to ensure you are only retrieving the products you want to display on your landing page. For example, you might set a filter for a specific brand or product line.

For this purpose, there is a special filter parameter called preSetFilters. This should only be used to set filters before search results are loaded to your customers.

An example request body for a brand landing page would be:

 {
"query": "_#",
"preSetFilters": [
{
"name": "Brand",
"type": "products",
"values": [
{
"name": "BrandABC"
}
]
}
]
}