Product feed reference

❗️

New integrations

As of May 2021, all new integrations are required to use API based catalog feed management to send data and perform index updates.

Fields

Each of your products is represented by fields in your product feed. Together these fields describe the product, price, SKU, and similar inventory data. The quick reference table provides a list of most of the fields that you can include in your feed. Some fields are required in your full feed, and these fields are flagged for you in the quick reference table.

📘

Feed Attribute Sync Time

When you add new attributes/categories to the feed, it takes around 1.5 hours for them to reflect on the dashboard. You can add customisations to the new attributes/categories after this sync time.

Custom fields for Search and Merchandising

You also need to add any custom fields that you want Search and Merchandising to support. Here are some examples:

  • Advertised promotional text
  • Sale or clearance flags
  • Product condition
  • Product SKU to enable searches by SKU

Add a column in your feed for each filter, sort, product flag, promotional text, search method, and anything else that needs to be supported. Your Bloomreach representative can help you.

Custom fields for Insights

You also need to add fields for any business metrics that you want Insights to support. Here are some examples:

  • Margin
  • Inventory
  • On sale
  • On sale percentage
  • Prices (particularly if your site has multiple price updates throughout the day)

Add a column in your feed for each business metric that needs to be supported. Your Bloomreach representative can help you.

Quick Reference

This table provides a list of each product feed field and a brief description. Some fields have more complexity than others; scroll to the end of the table for more detailed information, such as extended descriptions and relationships with other fields.

Help me understand the Required column

An always flag in the Required column indicates that the field is required in your full product feed for all products, regardless of use cases. A use case flag in the Required column indicates that the field is generally optional, but is required for certain use cases. For example, if you have multiple SKUs for a given product in your product catalog, then the skuid field is required for your use case. Your Bloomreach representative can help you determine which fields are required for your specific use cases.

Field Name Required Description Example
age_group use case

The age group that the product or SKU is generally intended for. Use one of the following values:

  • newborn
  • infant
  • toddler
  • kids
  • adult

adult

availability

always

Indicates the current availability of the product. Use the inventory value or one of the following values:

  • in stock
  • pre-order
  • out of stock
  • available for order

in stock

brand

use case

The name of the product's brand or manufacturer.

Rockabilly Grace

catalog_code use case An alternate ID for the product.

Dress-Jr-599201

color use case The color of the SKU item. Use this field if the product has multiple SKUs with different colors. Omit this field if the product has just one SKU.

crimson

color_group use case The color of the SKU item. This field is required if the SKU has a swatch_image.

red

crumbs

always

The category and subcategories of the product. You can have multiple sets of categories and subcategories for this attribute.

Apparel|Women|Dresses

crumbs_id

use case

The category and subcategory IDs of the product. These IDs map to the values in the crumbs attribute. You can have multiple sets of categories and subcategories for this attribute.

To merchandise within the context of a Category, the Category must have an explcit crumbs_id and associated products must be mapped to the crumbs_id in the catalog data feed.

cat00|cat20|cat26 

description

always

The description of the product.

Mid-length red crepe dress with open features in the back. Long sleeves, kicky skirt. 100% rayon, dry clean or hand wash cold, lay flat to dry. 

flag

use case

Any static product flags associated with the product.

digital-only 

gender use case

The gender that the product or SKU is generally intended for. Use one of the following values:

  • female
  • male
  • unisex

female 

keywords

use case

A comma-separated list of keywords or key-value pairs that describe the product.

red,dress,rayon,long-sleeves,mid-length,90s 

large_image

use case

The URL or URLs for images of the product or SKU.

http://www.images.example.com/red-crepe-peek-a-boo-dress-highres

material use case The material, fabric, or substance that the product or SKU item is made from.

rayon 

pattern use case The visible pattern or graphic of the product or SKU item.

solid 

pid

always

The unique product ID. If the product has multiple SKUs, then this value is the ID shared by all of the product's SKUs.

 

Use alphanumeric characters and hyphens only for pidvalues. Don't use special characters like *, ?, or ~.

D599201 

price

always

The list price of the product.

47.88 

promotion

use case

Any dynamic promotion string associated with the product.

special 

reviews

use case

The average review rating for the product.

4.2 

reviews_count

use case

The number of reviews for the product.

337 

sale_price

use case

The sale price of the product if the product is on sale. If the product isn't on sale, then omit this field.  However, if you are passing data using view_id separators, this value cannot be null. To read about using view_id, go to Mutli-view Feed page.

39.88 

size use case The size of the SKU. Use this field if the product has multiple SKUs with different colors. Omit this field if the product has just one SKU.

medium 

skuid use case

The unique SKU ID.

Required for products with multiple SKUs

The skuid field is required if the product has multiple SKUs. You can omit this field if the product has just one SKU.

DBC-DR-MID-MED-WH 

swatch_image use case The URL for an image of the SKU's color swatch. A typical size for a swatch is 25x25 pixels.

http://www.images.example.com/red/crimson

thumb_image 

always

The URL for a thumbnail image of the product or SKU.

http://www.images.example.com/red-crepe-peek-a-boo-dress-thumbnail

title

always

The title or name of the product.

Red Crepe Peek-a-Boo Dress 

url

always

Canonical url of the product page.

http://www.example.com/dresses/juniors/red-crepe-peek-a-boo.html

📘

Do you have additional attributes?

If you have additional fields that aren't in this table, then contact your Bloomreach representative to provide information about them. We need to know the names of your additional fields, a brief description of their contents or values, and a description of their role in your product catalog. Example values are helpful.

SKU fields

Some products have variants, such as different colors and sizes. Each variant of a product has a different SKU from the encompassing product's SKU. Each of these SKUs has its own set of fields. This table has a list of fields that you might need for these SKUs. Use the quick reference table for descriptions and examples.

📘

Tip

Some SKU fields also apply to products.

SKU fieldRequired for each SKU?Available for products?
age_group
availability
color
color_group
gender
material
pattern
price
sale_price
size
skuid
swatch_image
url

Field details

Most of the information that you need for product feed fields is in the quick reference table. Some fields have more complexity than others; these fields have more detailed information, such as extended descriptions and relationships with other fields.

availability field

The availability field indicates whether or not the product is currently available for sale. You can use an enumerated value or you can use the product's inventory value.

The inventory value is the number of items currently in stock. This number can change frequently.

If you don't want to use the product's inventory for your availability field, then here are the enumerated values:

  • in stock
  • pre-order
  • out of stock
  • available for order

Your Bloomreach representative can help you decide between the inventory value or an enumerated value.

thumb_image and large_image fields

The thumb_image field is the URL for a thumbnail image of the product or SKU. The large_image field is the URL or URLs for additional images of the product or SKU. You can have multiple values for the large_image field.

If you have two sizes of the image, then map the smaller size to thumb_image and the larger size to large_image. You can have only one image for thumb_image. Your product must have a thumb_image value, but it doesn't have to have a large_image value.

To specify multiple URL values for large_image, separate each URL with an ASCII character. A pipe (|) character is a common separator. Here's an example:

http://www.images.example.com/red-crepe-peek-a-boo-dress-highres|http://www.images.example.com/red-crepe-peek-a-boo-dress-back-detail|http://www.images.example.com/red-crepe-peek-a-boo-dress-front

crumbs and crumbs_id fields

You must have a crumbs field for each product in your feed. You can also specify a crumbs_id field that maps to the appropriate crumbs field value.

🚧

Category Pages and crumbs_ids

To merchandise within the context of a Category, the Category must have an explcit crumbs_id and associated products must be mapped to the crumbs_id in the catalog data feed.

A breadcrumb trail is the series of category and subcategories in a product's taxonomy. Your product feed specifies this trail in the crumbs or crumbs_id attribute. The difference between these fields is crumbs specifies the trail by category name and crumbs_id specifies the trail by category ID.

Both fields accept multiple breadcrumb trails.

To specify a single value, separate each category and subcategory with an ASCII character. A pipe (|) character is a common separator. To specify multiple values, use a different separator. An angle bracket (< or >) character is a common second separator.

🚧

Don't use / or & or ; as separators

Don't use forward slash ( / ) or ampersand ( & ) characters because these are reserved characters. Using these reserved characters causes API requests to return a 502 error.

We also recommend against using semicolon ( ; ) as a separator as it may conflict with our internal feed-config language.

1401

Here are some examples:

FieldSingle valueMultiple values
crumbsApparel|Women|DressesApparel|Women|Dresses>Apparel|Clearance|Women
crumbs_idcat00|cat20|cat26cat00|cat20|cat26>cat00|cap90|cat92

Bloomreach reads the category names from the crumbs field and maps them to the corresponding category ID in the crumbs_id field. Here's how the mapping works in the crumbs_id example:

  • cat00 maps to Apparel
  • cat20 maps to Women
  • cat06 maps to Dresses

Each category ID in the crumbs_id field can map to only one category in the crumbs field. For example, cat20 must map only to Women, not to both Women and Dresses.