Guidelines for developers to customize search for the Storefront browse and search API

There are several considerations if you plan to customize your Search solution on the storefront.

To customize search for your storefront, you must plan for the following:
  • The data that you want your searches to return.
  • Use cases that may require you to extend the default REST API.
  • Your data life-cycle.

Data for the Search

Step Description Related information
1 Identify where data relevant to your search comes from.
2 Identify the location of your data in the database. HCL Commerce database schema
3 Prepare and upload your data for search indexing. Overview of the Data Load utility

Administering the Catalog Upload feature

Use cases

Based on the business usage of the data at the storefront, determine if you can reuse the existing Storefront REST APIs.

If you do not want to use the existing APIs, you can add to the existing index and also create your own REST handler and add it to the Query service.

Step Description Related information
Option 1 Determine which Storefront API to use and complete the following tasks to implement your extensions. Storefront REST API
1 Index custom data into the existing Search Index using NiFi.
2 After indexing is completed, determine how the data will be returned.
2a Determine which search profile to extend and then override that search profile. Alterrnatively, extend the search profile with your own settings. Setting up your custom search profile
2b Attach your custom data to an existing Storefront API. Creating and customizing REST services
2c Add processing logic if required.

Configuring Query xC custom extension

Note: These additional Java assets must be deployed separately to a designated location from the Query service external mount.
Option 2 If you do not want to use the existing APIs, fit your custom data structure in the existing Search index schema. Query service configuration
1 Add to existing index or create your own index
1a Index custom data into the existing Search Index by using NiFi.
1b Create your own Search index.
2 Create your own REST handler and add to the Query service. Adding custom handler section - need info
Note: These additional Java assets must be deployed separately to a designated location from the Query service external mount.

Data Life-cycle

After the initial data upload and indexing, you must keep the snapshot of your data source current. Your business requirements determine the frequency of the data updates and in turn determine the implementation of the NiFi indexing pipeline to the search index. The default indexing pipelines in NiFi for use with each individual index update lifecycle is as follows:
Step Description Related information
1 Determine which of the indexing pipelines that are available in NiFi must be use with each individual index update life-cycle.
1a Full re-indexing pipeline – involves Store, Catalog, Attribute, Category, Product, URL, Price, Inventory, STA.
1b Delta indexing pipeline for bulk loading (such as dataload) – Category, Product.
1c Near real-time index update with CMC – Attribute, Category, Product, URL, STA, Price, Inventory.
2 Determine if your data update affects the existing cache and causes it to be invalidated.