Skip to main content

Indexable Fields

Indexable Fields allow you to extend the search schema by adding custom product attributes to the search index. By default, the search index includes standard product fields like name, description, SKU, and categories. Indexable Fields let you add additional fields from your product extensions to enable searching, filtering, faceting, and sorting on custom attributes.

When to Use Indexable Fields

Use Indexable Fields when you want to:

  • Search custom attributes: Enable full-text search on custom product fields like brand, material, or specifications
  • Filter by custom attributes: Allow shoppers to filter products by custom fields like color, size, or rating
  • Facet on custom attributes: Display aggregated counts for custom field values in your navigation
  • Sort by custom attributes: Order search results by custom numeric fields like rating or popularity

How Indexable Fields Work

  1. Create indexable fields: Define which product extension fields should be indexed, specifying field name, data type, and options (facetable, sortable, locale)
  2. Reindex catalogs: After creating or modifying indexable fields, reindex your catalog releases to include the new fields
  3. Use in searches: One reindexed, you can reference the indexed fields in your search queries for filtering, faceting, and sorting

Field Configuration

Each indexable field has the following configuration options:

OptionDescription
nameThe field path in product extensions, e.g., extensions.products(Details).brand
facetableWhen true, the field can be used for faceting to show aggregated value counts
sortableWhen true, the field can be used for sorting results
localeLanguage code for text tokenization, defaults to en for English

Field Naming Convention

Indexable field names must follow the pattern extensions.products(<template_slug>).<field_name>, where:

  • <template_slug> is the slug of your product extension template
  • <field_name> is the name of the field within that template

Example: For a product extension template with slug Details containing a field brand, the indexable field name would be extensions.products(Details).brand.

Reindexing Requirement

Changes to indexable fields require reindexing your catalog releases. The system detects when indexes are out of sync and you can use the reindex endpoint to update them. See Jobs for reindexing operations.

Ask External AI