Engage Content Feed

This document should be used in tandem with the Product Feed document.

The Content Feed is how you supply Algonomy with content for use with Engage. It consists of three separate files, included inside the standard compressed Catalog Feed that you send at least once a day. This data does not need to be sent every day: it is only needed if and when there are changes to the content.

This feed can be sent in two ways: on its own, or zipped into the product feed.

Feed Files

Feed File

Details

Filename pattern

Content Feed

A list and description of every piece of content being managed by Algonomy on your site. 

content_full_sitename_YYYY_MM_DD.txt

Content Attribute Feed

The attributes for each piece of content. A piece of content must have at least one attribute assigned to it or else it will not be displayed.

content_attribute_sitename_YYYY_MM_DD.txt

Note: These files can be included in the Flat File Catalog Feed when it is zipped for transfer to Algonomy, or sent on their own. Please decide which method is better for your needs with your Algonomy representative.

File Specifications

See below for the specifications for each file.

The delimiter in the file must be a pipe (|) unless another delimiter is required. If, for some reason, you are not able to use a pipe as delimiter, alert your Algonomy representative who will work with you to accommodate your specific needs.

Content Feed

Filename: content_full_sitename_YYYY_MM_DD.txt required

Note: Content cannot have the same IDs as products. Products and content must have unique IDs.

Name

Type

Required?

Definition

Id

ASCII

Yes

A unique identifier for this piece of content. The IDs for each piece of content must remain consistent across time, i.e. this cannot be randomized.

Note: Forward slashes (/) are not supported in the ContentID field.

name

text

Yes

The name of the content as it will be displayed in recommendations on site and in the Omnichannel Personalization Dashboard. The maximum length for this name is 255 characters.

start_date

date

No

When this content is available for display. If not specified, it will be available for display at any time. The format for this date is YYYY-MM-DD.

end_date

date

No

When this content is set to expire; at which point should we not display it any longer. If not specified, it will be available for display indefinitely. The format for this date is YYYY-MM-DD.

Rating

integer

No

The rating for this content (specified by client). Usually this is generated by collecting the average of customer ratings. This is not often used.

Tags

text

No

A list of tags that describe the piece of content (e.g. baby.stroller.graco). The default list delimiter is the period.

Note: The maximum length for a single tag is 100 characters. If you provide more than 100 characters for one tag, the tag name will be truncated to its first 100 characters. This does not impact the total number of tags. There is no theoretical technical limit to the number of tags, but we recommend no more than twenty tags per content for manageability reasons.

Recommendable

Boolean

No

A flag for Engage content.

Default value is true.

 

Sample

- Regular Content:

Copy
id|name|start_date|end_date|rating|tags
100|Hero Shirts Sale Banner|2017-06-07|2017-07-07|5|shirts.sale.hero
200|Footer Handbag Winter Sale Banner|2017-11-01|2018-02-28||handbags.sale.footer

Content Attribute Feed

Filename: content_attribute_sitename_YYYY_MM_DD.txt required

Attributes values (and multi-valued attributes) can be listed in a column-based format or a row-based format. However, the file must adhere to one or the other; you cannot mix and match within the same file. The system automatically determines the format from the header.

The list must use a delimiter that does not exist in attribute values and should not be a list delimiter used elsewhere in the file. Values that have a period are treated as lists (this is the default behavior). The period delimits each value in the list. However, the list value delimiter may be customized when creating the feed profile.

Content attributes is where you will specify the variables needed to render a content. Things like image URLs and landing page URLs have to be passed in as attributes.

We expect each piece of content to have a minimum of one attribute. Because content is not shown unless whitelisted, this minimum attribute will be used to create the rule necessary to whitelist this content for display. In fact, if a piece of content doesn't have any associated attributes, it will not be stored in our system.

Column-based format

Name

Type

Required?

Definition

content_id

ASCII

Yes

Identifier for the content as defined in the content file

Note: Forward slashes (/) are not supported in the ContentID field.

attribute.[attribute key 1]

text

Yes

First unique attribute key

attribute.[attribute key 2]

text

Yes

Second distinct attribute key

...

 

 

 

attribute.[attribute key N]

text

Yes

Nth distinct attribute

 

Sample

Basic example of the content attribute feed, in column-based format:

Copy
content_id|attribute.size|attribute.image_url|attribute.link_url
100|medium|http://mysite.com/images/100.jpg|http://mysite.com/content100
101|large|http://mysite.com/images/100.jpg|http://mysite.com/content101

Specifying multiple attributes (the list value delimiter defaults to the period but may be changed when creating the feed profile):

Copy
content_id|attribute.size|attribute.color
100|small.large|red.green

Row-based format

Name

Type

Required?

Definition

content_id

ASCII

Yes

Identifier for the content as defined in the content file

Note: Forward slashes (/) are not supported in the ContentID field.

attr_name

text

Yes

Unique attribute key

attr_value

text

Yes

Name of the attribute

 

Samples

Basic example of the content attribute feed, in row-based format:

Copy
content_id|attr_name|attr_value
100|size|medium
200|size|large
100|image_url|http://mysite.com/images/100.jpg
200|image_url|http://mysite.com/images/200.jpg
100|link_url|http://mysite.com/content100
200|link_url|http://mysite.com/content200

Specifying multiple attributes in separate rows:

Copy
content_id|attr_name|attr_value
100|color|red
100|size|small