Configuring Query runtime custom configuration

To customize the ZooKeeper node, you can also add a wc-component.json file to override or to add new configuration properties. To know more about component configuration properties refer to Component configuration properties

Endpoint

The endpoint is:
http://data_environment_hostname:30921/search/resources/api/v2/configuration?nodeName=component&envType=auth

Restart the Query service container after the configuration is applied in order for the changes to take effect.

Example

Here is a sample structure for the component configuration.
{
    "valuemappingservice": {
        "valuemapping": [
            {
                "internalName": "CatalogGroupUserDataFieldNameMapping",
                "externalName": "CatalogGroupUserDataFieldNameMapping",
                "valuemap": [
                    {
                        "externalValue": "UserRating",
                        "internalValue": "rating"
                    }
                ]
            },
            {
                "internalName": "CustomData",
                "externalName": "CustomData",
                "valuemap": [
                    {
                        "externalValue": "CustomDataExternal",
                        "internalValue": "CustomDataInternal"
                    }
                ]
            }
        ]
    },
    "extendedconfiguration": {
        "configgrouping": [
            {
                "name": "LoadOnStartup",
                "property": {
                    "name": "com.ibm.commerce.search.internal.runtime.bootstrap.SearchServiceWarmStarter",
                    "value": "FALSE"
                }
            },
            {
                "name": "MultipleContracts",
                "property": {
                    "name": "operation",
                    "value": "OR"
                }
            },
            {
                "name": "TransactionServerSetting",
                "property": [
                    {
                        "name": "TransactionServerSetting/SSLAcceleratorOption",
                        "value": "Enabled"
                    },
                    {
                        "name": "TransactionServerSetting/inSSLPort",
                        "value": "8888"
                    },
                    {
                        "name": "TransactionServerSetting/inSecure",
                        "value": "true"
                    }
                ]
            },
            {
                "name": "CustomGroup1",
                "property": {
                    "name": "customPropName",
                    "value": "customPropValue"
                }
            },
            {
                "name": "CustomGroup2",
                "property": [
                    {
                        "name": "customPropName1",
                        "value": "customPropValue1"
                    },
                    {
                        "name": "customPropName2",
                        "value": "customPropValue2"
                    }
                ]
            }
        ]
    }
}

Managing Configuration and Components

HCL Commerce Search supports managing various configurations such as ingest-config, Component, and STA using a flexible REST API. These configurations are used to customize and control different aspects of search behavior per environment.
/search/resources/api/v2/configuration?nodeName={nodeName}&envType={envType}&locale={locale}
Supported HTTP Methods:
  • POST - Add a new configuration.
  • PATCH - Update or append configurations.
  • PUT - Move configurations from the "auth" node to the "live" node.
  • GET - Retrieve existing configurations.
  1. Use the POST method to create a new configuration from scratch.
  2. Use the PATCH method to modify or append values.
    Note: Do not use POST to update configurations, as it will overwrite existing configurations entirely.
  3. Use the PUT method to move configuration resources from the authoring (auth) environment to the live environment.