PureClarity accepts one product data feed format:
- Option 1: A JSON document defined by PureClarity.
You can also send Product Feed Deltas (individual product changes) however this is only supported using the PureClarity JSON format (Option 1). If you want to include account pricing into the feeds please see B2B Account Pricing.
How Products and Variants are handled
Important information about a product (its title, description, image, price, etc.) and product variants are held within PureClarity so they can be analysed and rendered in the search results and recommenders within milliseconds.
It is important to understand that PureClarity will only surface Products in the search results and merchandising zones - it will never surface a product’s variants. However, variant information is used to create the facet attributes within the search results navigation.
The example below gives an illustration of how products and variants are structured in the product data feeds.
In this example, consider a product (P1):
|Description||Description of Product 1|
|Link||<URL to use when the product is chosen>|
Now, this product has 2 variants, a “small” and large”:
|Attribute||Variant 1 Data||Variant 2 Data|
|Title||Small version of product 1. Sized for children||Large version of product 1. Sized for adults|
|Price||5 USD||10 USD|
|Description||Small version of product 1||Large version of product 1|
All this information is sent in the feed to PureClarity. It merges it all together and stores it. This means that if the user on the site searches for “product 1” it will be able to show the correct title, description, image URL and link URL – based on the data sent over in the P1 record.
Now, because it has merged all the variant information together, it will also be able to show the price for P1 (between $5 and $10).
If the user on the site searches for “adult” or “child” it will also be able to surface Product 1 (as one or more of its variants has the search term in its data). The facets in the search results will include “Size” with both “Child” and “Adult” available.
Note that if a product doesn't have any variants, then all the data is sent in a single record for the product without any ParentIds.
Notifying PureClarity of a new feed
There are two ways of notifying PureClarity that a feed is ready to be read:
- Automated schedule to pull the feed into PureClarity
- Notify PureClarity when a new feed is available
Note that on all the options, the feed will not be processed immediately.
Automated Schedule to Pull the Feed into PureClarity
PureClarity can be configured to pull the feed automatically on a schedule. This can be configured in the Admin Console. Make sure the location where the feed will be located is accessible to the appropriate PureClarity endpoint.
We advise you to generate the feed in advance, then notify PureClarity it is available. We do not advise building the feed when PureClarity requests the file for performance reasons.
Notify PureClarity when a new feed is available
Alternatively, the site can make an HTTP GET request, passing the required information to the PureClarity endpoint (live or staging). This is useful if the site wants to be in control over when changes made to the site appear in the search results.
The required parameters are:
Access Key for the application.
Url of where PureClarity can upload the feed. Note that the feed is not consumed immediately, so the feed should be available at this location for the next 24hrs
The type of feed you are uploading.
"pureclarity_json" - PureClarity JSON format. This should be used for product feeds in the PureClarity JSON format, as well as for the Category and Brand feeds.
In the Admin Console you can manually setup a new feed and exam the result for failure. You can find this under the 'Configurations' menu in the console.