Configuration Objects

Variables

The Variables is a simple key -> value pair object used for every search request. The proprties will vary based on your pipeline configuration but the most common implementations will use the following:

Value types can be string | string[] | number | boolean.

NameTypeDefaultDescription

q

string

_

The search query.

q.override

string

_

q.suggestions

string

_

The autocomplete options for the search query.

filter

string

'_id != ""'

Default filter to apply.

resultsPerPage

number

15

How many results to display per page.

page

number

1

Which page to display.

maxSuggestions

number

10

How many autocomplete suggestions per search.

Config

The Config object defines mapping between key/value pair params to be sent with each and every request.

NameTypeDefaultDescription

qParam

string

'q'

The key that includes a search query.

qOverrideParam

string

'q.override'

qSuggestionsParam

string

'q.suggestions'

The key that includes autocomplete options for the search query.

resultsPerPageParam

string

'resultsPerPage'

The key for how many results to display per page.

pageParam

string

'page'

The key for which page to display.

maxSuggestions

number

'maxSuggestions'

The key for how many autocomplete suggestions per search.

FieldDictionary

The FieldDictionary object is used to map fields in your data to the required fields to display in the UI. By default, the fields for a website search collection are used.

NameTypeDefaultDescription

id

string

'_id'

Unique identifier for the record.

url

string

'url'

URL for the record, required for links in results.

title

string

'title'

The main title for the result.

subtitle

string

'url'

The subtitle. Often a brand, category, or the URL.

description

string

'description'

A description to display beneath the title and subtitle.

image

string

'image'

An image, if applicable.

price

string

'price'

A price, if applicable.

originalPrice

string

'originalPrice'

An original price, if applicable. If the value is more than price (or it's index if price & originalPrice are both arrays) then the original price will be displayed (with strikethrough) and the current price highlighted in red.

rating

string

'rating'

A rating, if applicable.

Theme

The Theme object is used to set basic color options for the UI. Currently this is only for the primary actions.

NameTypeDefaultDescription

colors

{primary: {base: string, text: string, active: string}}

_

Set colors for primary actions.

Custom Class Names

The customClassNames property allows for adding CSS class names to components, enabling you to write custom styles to change the look and feel of the layout.

A list of components and available class names is available in the React Documentation.

To add custom classes, pass a configuration object with the class names to the customClassNames property.

<div data-widget="search-input">
  <script type="application/json">
    {
      "account": "1594153711901724220",
      "collection": "bestbuy",
      "pipeline": "query",
      "customClassNames": {
        "results": {
          "container": "custom-container-class",
          "item": "custom-item-class"
        }
      },
    }
  </script>
</div>
<script async src="https://cdn.search.io/embed/1/loader.js"></script>

Last updated