When you upload catalogs, you must include the required fields. There are also recommended fields and custom fields that you can include.

Data format

  • At a minimum, you must include product id, product name, product url (http or https), image url (http or https) and category. However, we also recommend that you include brand, in/out of stock and other custom fields you may want to use in segmentation and messaging.
  • You can set rules in the catalog settings to set a product as out_of_stock or in_stock by mapping the column to the Availability field.
  • Alternatively, for each product, you can set "start_date" and "end_date" fields in the file. The expected format is ISO8601 for these two fields. Ex: "2017-08-08", "2017-08-08T17:42:32Z". Blueshift uses these fields to automatically set a product to out_of_stock if the current_date does not fall within that range.
  • Use true or false (lower case) for boolean values.
  • Use snake case where possible, as it's much easier to use it in the templates.
    Ex: "Release_Year" instead of "Release Year"
  • The value of the product_id field must not have more than 64 characters.
  • The title of the product must not have more than 255 characters.
  • The URL that you provide in the image field must not have more than 500 characters.
  • The URL that you provide in the web_url field must not have more than 500 characters. 

Other considerations

  • Blueshift uses INSERT/UPDATE logic to INSERT new products and UPDATE existing products as identified by SKU/product_ID.
  • If you are uploading using CSV files, ensure that you delete any empty columns.
  • Files must be UTF-8 encoded CSV.
  • Blueshift supports multiple catalogs as along as the product ids are unique within and across all catalogs.

Required fields

Attribute Description Example
product_id Unique identifier of item, should be unique across all your catalog's. 123345_abcd
title Title of the item Iphone 7
web_link URL for item on your website (http or https) http://www.apple.com/iphone-7
image Image Link (http or https) http://www.apple.com/iphone-7.jpg
availability Indicates item status. Used for excluding out of stock products in recommendations. Also used for computing back in stock alerts when a product goes out of stock and comes back in stock "in stock" or "out of stock"
category Logical grouping of items. The grouping can be hierarchical with any number of levels. This is very important field and many of the recommendation schemes use this grouping to compute trending and popular products.  Please ensure that your category attribute is populated correctly Travel > Europe > Italy

Recommended fields

Attribute Description Example
parent_sku Ties all variants or child items together. You can use parent sku to ensure you recommend only one variant in your recommendations.  For example, only one color of the same dress, instead of multiple colors. 12345_abcd
price Selling/Discounted Price. Used for computing price drop alerts 290
msrp MSRP 350
brand Brand of the item Nike
start_date Indicates active/inactive status. Should be in ISO 8601 format. This is used to determine product recency, like recommending new arrivals. 2017-06-09T15:28:33Z
end_date Indicates active/inactive status. Should be in ISO 8601 format. This field is used to recommend ending soon products if present 2017-07-09T15:28:33Z
tags An array of strings denoting grouping of similar products into collections or groups. The array can be used for recommending similar items based on text similarity. ["genre:sci-fi", "cuisine:italian", "keyword1"]
latitude Latitude that denotes location 37.792805

for San Francisco Downtown
longitude Longitude that denotes location -122.401444

for San Francisco Downtown
location_tag Tag to indicate location to its maximum possible detail that is available.

This is a single string.
Points of Interest > USA > NY > New York > Times Square

For more information, see Products and catalogs on our developer portal

Custom fields

You can also upload other relevant attributes you would like to include for segmentation and content personalization.

For example, color, gender, and so on.

Considerations for Category field

The Category field is an important field for computing affinities and popular recommendations at different levels of your product groupings. Consult your Blueshift Success Manager for guidance in selecting the appropriate format.

We recommend that you provide multiple levels (at least 2) for better recommendations. The format is bit different for API and for CSV upload. When uploaded correctly, the category is displayed on the dashboard when you view the individual product details.

Note: The category separator or delimiter denotes multiple levels for categories in the CSV file. Use ">" as the delimiter.

File Upload

When using a CSV file for upload, you can denote multiple levels by using a delimiter and can specify the delimiter when uploading the file.

For example, "Travel > Europe > Italy" where the delimiter is ">".

API Upload

For API upload, you can denote multiple levels using an array of strings.

For example, ["Travel","Travel > Europe","Travel > Europe > Italy"]


Was this article helpful?
1 out of 1 found this helpful



Please sign in to leave a comment.