Disclaimer: This website requires Please enable JavaScript in your browser settings for the best experience.

Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubDev CommunityOptimizely AcademySubmit a ticketLog In
Dev Guide

Implement a third-party search provider

Describes how to implement a third-party search provider and answers frequently asked questions about query types and functions.

📘

Note

Optimizely Configured Commerce lets you integrate third-party search providers. By default, Configured Commerce uses Commerce Search v2 (Elasticsearch version 7.10) as the search provider on customer storefronts. AI-powered Commerce Search v3 (Elasticsearch version 7.10 and Google Cloud Retail Search/Vertex AI Search for Commerce) is also available in Configured Commerce. Both Commerce Search v2 and v3 extend third-party search abstraction, use a shared search pipeline, and improve performance, scalability, resilience, and efficiency. Optimizely recommends upgrading to Commerce Search v3.

Configured Commerce provides a Shared Search abstraction that allows for new providers to be developed. Using the pipelines and handlers provided by Shared Search can decrease the time needed to implement the new search provider. For more information on what search functionality Configured Commerce provides, see Third party search pipelines.

The following questions and answers gives information on query types and how they should function.

  • What is a MultiMatchQuery?
    A Multi-Match Query is used to check for exact matches between the search query and various fields with a limit on how many fields must match for the Search Document to count as a hit.
  • What is a MultiMatchPrefixQuery?
    A Multi-Match Prefix Query is used to find start of matches between the search query and various fields. There is a limit on how many fields must match for the Search Document to count as a hit.
  • What is a MultiMatchFuzzyQuery?
    A Multi-Match Fuzzy Query is used to find loose matches between the search query and various fields. There is a limit to how many fields have to match for the Search Document to count as a hit.
  • What is a FunctionScoreQuery?
    Using SearchScoreFunction and FunctionBoostMode allows a query to be boosted based on a specific field and a specified Boost Mode. Supported FunctionBoostMode types are Multiply, Replace, Sum, Average, Max, or Min.