Reserved Fields are a list of Bloomreach reserved keywords used in feed processing to assign attributes like price, availability, size, etc. using a set terminology. These are consumed by Bloomreach to create a basic understanding of your product catalog and how to process it within the scope of the Bloomreach algorithm. For example, the “price” field is a Reserved Field and must be used to send the details of the price of your product to Bloomreach. If you use a custom field with variations like “my_price” or “product_price” etc. Bloomreach will not treat it as the price of the product.
There are 9 mandatory Reserved Fields that must be sent to Bloomreach during feed processing. The current list of mandatory Reserved Fields are:
Further, Reserved Fields are reserved keywords/attributes/fields that cannot be used externally for any field mapping. For example, the fields "price_range" and "sale_price_range" are used to capture high/low price points of a product having multiple SKUs. In dev studio, mapping an external dynamic attribute to "price_range" does not work.
Using Reserved Fields
While using the reserved fields for building any of the front end components, note details like Data Type, Facetable, to be used correctly as shown in the table below.
For example, the Reserved Field “price_range” is a number and trying to filter it as a string, returns an error in the API response as it is not supported in the API.
Use as intended fq=price_range:[50 TO 100] instead for price_range filtering.
|Reserved Fields||Required||Data Type||Facetable||Include in Search||Field Type (Single/Union)||Returned in API response as|
|pid||Yes||Text||No||Yes||Single||Same as reserved field name|
|skuid||No||Text||No||Yes||Single||Same as reserved field name|
|description||Yes||Text||No||Yes||Single||Same as reserved field name|
|url||Yes||Text||No||Yes||Single||Same as reserved field name|
|brand||No||Text||Yes||Yes||Single||Same as reserved field name|
|title||Yes||Text||No||Yes||Single||Same as reserved field name|
|gender||No||Text||Yes||Yes||Single||Same as reserved field name|
|keywords||No||Text||No||No||Single||Same as reserved field name|
|thumb_image||Yes||Text||Yes||Yes||Single||Same as reserved field name|
|large_image||No||Text||Yes||Yes||Union||Same as reserved field name|
Note: Crumbs are send as category
|price||Yes||Number||Yes||Yes||Single||Same as reserved field name|
|availability||Yes||Boolean||No||No||Single||Not returned in API response|
|leaf_categories||No||Text||No||Multi||Same as reserved field name|
|crumbs||Yes||Text||No||Single||Not returned in API response as crumbs but within category field.|
|google_category||No||No||Same as reserved field name|
|launch_date||No||Text||No||Yes||Single||Same as reserved field name|
|model_name||No||Text||No||No||Single||Same as reserved field name|
|stock_level||No||Text||No||No||Union||Same as reserved field name|
|flag||No||Boolean||No||Same as reserved field name|
|promotion||No||Text||No||Yes||Union||Same as reserved field name|
|height||No||Number||No||No||Single||Same as reserved field name|
|capacity||No||Number||No||No||Single||Same as reserved field name|
|width||No||Number||No||No||Single||Same as reserved field name|
|depth||No||Number||No||No||Single||Same as reserved field name|
|reviews||No||Number||No||No||Single||Same as reserved field name|
|item_no||No||Text||No||No||Union||Same as reserved field name|
|model_no||No||Text||No||No||Union||Same as reserved field name|
|best_seller||No||Number||No||Can be fetched as FL (stored,indexed field)||Single||Same as reserved field name|
|bundle_id||No||Text||No||Unstored, indexed field||Union||Same as reserved field name|
|is_sellable||No||Boolean||No||Indexed, unstored field||Single||Same as reserved field name|
|store_id||No||Text||No||Indexed not stored||Union||Same as reserved field name|