Site Search
Better product hunt with Search V3 and TermSuggestions V1
✨ Introduction
Navigating through a website is just the beginning of the shopping experience. Search V3 and Term Suggestions V1 go beyond traditional search functionality, and provide users an efficient way to discover products effortlessly. By incorporating our intuitive site search and term suggestions, you not only lay the foundation for continued engagement but also encourage customers to embark on new shopping journeys and make additional purchases. Explore the details below to see what you can achieve with Search V3 and Term Suggestions V1.


🎨 Tailor Search V3
⚙️ Passing in what customer is searching for
The most important information you have to specify in the request URL is what your customer is searching for. Specify customer's text input with the query parameter text, such as text=dresses or text=running shoes. Please note that you're allowed to have a maximum of 50 keywords (composed of two terms) in a single API request. Input string will be deprecated over 1000 characters.
⚙️ Determine the price range
One of the key attributes for searching is product price. You can specify the price range for the search result by setting query parameter priceRange, such as priceRange=1-1000. Split two numeric values by "-".
⚙️ Specify pagination and limit
With query parameters page and limit, you specify the number of search results presented on each search result page and their resulting order. For example, limit=10 means that there will be 10 results presented on a single search result page. Further combining it with page=2 in the request URL means that you're showing the 11th~20th result on the current page. The default values for page and limit are 1 and 20 respectively, with a minimum of 1 for both. Please noted that page times limit must less than 5000.
⚙️ Sort the retrieved products
Decide the sorting method to sort the retrieved products, by specifying the parameter sort. Please note that the availability of a sorting method depends on whether the required information exists in the datafeed. The default sorting method is sort=19, which implies "order by availability." Check the table below to see all possible sorting methods:
Value | Sorting Method | Value | Sorting Method |
---|---|---|---|
1 | Order by final price, ASC. | 14 | Order by update time, DESC. |
2 | Order by final price, DESC. | 19 | Order by availability |
21 | Order by product create time, DESC. |
When it comes to "order by availability"When the sorting method "order by availability" (sort=19) is specified, the sorting order will be "In stock" > "Preorder" > "Backorder" > "Out of stock". Check awoo Datafeed Specification to properly format your product info.
⚙️ Retrieve attribute to filter
Consider a situation where a customer searches for "clothes," and would like to further narrow down the result by attributes, such as color and texture. To tackle this kind of problem, you can specify additionalColumn[]=filter in the request URL to retrieve an attribute summary of all the products listed on the current search result page. You can use the retrieved summary to implement filter options for your customers right on the spot! Use the comment to navigate the example below:
{
"errcode": "0",
"errmsg": "ACK",
"result": {
"items": [
{
"productId": ,
"productName": ,
"url": ,
"productImageUrl": ,
"productPrice": ,
"productPriceCurrency": ,
"productSalePrice": ,
"productSalePriceCurrency": ,
"productAvailability": ,
"productBrand": ,
"attributes": [ // attribute of the product will be summarized below
"category:3|13|63|57",
"gender:female",
"color:black|white"
]
},
{
"productId": ,
"productName": ,
"url": ,
"productImageUrl": ,
"productPrice": ,
"productPriceCurrency": ,
"productSalePrice": ,
"productSalePriceCurrency": ,
"productAvailability": ,
"productBrand": ,
"attributes": [ // attribute of the product will be summarized below
"category:3|13|63|57",
"gender:male",
"color:red"
]
}
],
"paging": {
"totalCount": ,
"limit": ,
"currentPage": ,
"totalPages": ,
"first": ,
"previous": ,
"next": ,
"last":
},
"filter": { // summary of all attributes you can use to filter
"category": [
"3",
"13",
"57",
"63"
],
"color": [
"white",
"red",
"black"
],
"gender": [
"male",
"female"
]
}, // end of summary
"sorting": {
"currentType": ,
"availableTypes": []
}
}
}
Please also note that attributes must be specified in the datafeed, to be summarized and returned in the Search V3 API response. We highly suggest that you specify detailed attributes in the datafeed for a better search experience!
⚙️ Filter result by attribute
Once your customer clicks on any attribute to further narrow down the result, query parameter attributes and its value are added to the request URL and lead to refined search results. You can set multiple attribute filters such as attributes=gender:female,color:red based on the product attributes you get from the previous API response. You can also preset attributes in the initial API call to nudge your customer at your will.
Make Site Search a Treasure Hunt!Incorporate Search V3 into your website for better searching experience.
🌟 More on Search V3
You may not notice, but since our Search V3 API does go beyond traditional site search, there are more functionalities for you to explore! Here's the introduction for all the advanced searching methods provided by Search V3. Please contact your awoo agent to enable the functionality.
💡 Brand Filter
At the premise of having brand name column specified in the datafeed, you can make sure customers get the resulting products with brands that match his/her search input. Consider a situation where your customer searches for "Nike sneakers" with the intention of searching for any Nike sneakers listed on the website. With Brand Filter on, our algorithm will make sure that only sneakers with brand="Nike" will appear in the result, and no appearance of sneakers from other brands to avoid confusion. If your customers usually type brand names in their search input, then the functionality is for you.
💡 Search with SKU
At the premise of having SKU (stock keeping unit) recorded in the datafeed (either in the name, description, attribute, or pid column,) you can let customers search with SKU. With Search with SKU switching on, you can additionally specify the query parameter skuSearch=true in the request URL to utilize this functionality.
Further noted that there are two modes of Search with SKU. "exact" mode is for those who specify SKU in the pid or attribute, and requires customers' search input to exactly match the SKU value specified in the datafeed. On the other hand, the "fuzzy" mode is for those who specify SKU in the name or description column, which will lead to less accurate results since customers' search input doesn't have to exactly match the SKU value. Contact your awoo agent to see which mode suits you.
💡 Search with Literal & Term
When we're talking about literal and term, what we're referring to is the tagging result of our AI system. To take a mild example, the tagging result of "milk" (a product) may contain literal=goods&term=milk, literal=feature&term=sweet, and literal=brand_realm&term=USA. This literal and term information majorly contributes to how keywords are generated.
To better understand how you can benefit from Search with Literal & Term, consider there's another "milk cookie" (a product) with literal=goods&term=cookie and literal=feature&term=crispy. When a customer searches for "milk" in the search bar, he/she may receive both "milk" and "milk cookie" as a result, which might not be a satisfying one since "milk cookie" probably doesn't match his/her intention. To tackle this problem, you can have Search with Literal & Term on for literal=goods, to retrieve products with terms that exactly match the search input (for the above example, the customer will only receive "milk" as the search result.) Contact your awoo agent to check out which literal you can utilize to improve your search scenario.
💡 Exclude datafeed column from search
You can switch off search functionality for a particular column of your datafeed, such as excluding column "brand name" or "description". Contact your awoo agent to enable the setting.
💡 Typo Correction
Our Typo Correction automatically corrects typos for your customer, simply as that! However, there are several nuances you have to notice before enabling this functionality. Within the context of Chinese usage, a vocabulary containing all keywords' terms is constructed to be referred to as the correct words. Words from search input (typo) will be compared to terms recorded in the vocabulary (correction.) The typo has to be at least 66% phonetic similarity and one character difference with any "correct" term in the vocabulary, to be counted as a "typo." There is a chance that a typo isn't being corrected since the intended correction doesn't exist in the vocabulary or has more than one character difference with the correction.
Also, notice that our search algorithm prioritizes what customers type in their search bar. If a typo still leads the way to a handful of results, then the typo will not be corrected. Contact your awoo agent to give Typo Correction a try!
More Functionalities to Come!Contact your awoo agent right away for advanced Search V3.
🎨 Tailor TermSuggestions V1
⚙️ Passing in what customer is currently typing
The only value you have to pass in is what your customer is currently typing. Specify the customer's text input with query parameter keyword in the request URL, such as keyword=sh or keyword=sneaker, to retrieve autocomplete suggestions. Maximum 100-character length in a single API call. Based on the text input, Term Suggestions V1 will return terms or keywords for you to show on the page as an autocompletion.
Achieve Effortless Search Experience!Land on desired search input faster with Term Suggestions V1.
Edited by: Justin Sung
Updated about 2 months ago