Documentation / Product / Features / Content Affinity Engine

Advanced Customization

The Lytics Content Affinity Engine can extract topics from multiple sources and aggregate them into a single topic graph.

Adding New Documents

By default, Lytics observes new URLs in all data streams to identify content with which the user is registering activity. New URLs are enriched as they're observed in incoming data that is, Lytics can crawl a domain, but proactively indexing a domain and looking for new content is not part of the Content Affinity Engine's workflow.

To add new documents to your corpus, you can send new documents to our Content Corpus API. The Corpus API respects three parameters:

  • url: An optional URL for a new document. While most documents are identified with a URL, documents aren't constrained to be web accessible. In the event that you have custom content that is not web accessible, you'll need to supply the content via the text parameter.
  • text: An optional string of content for a document. This is only really necessary in the event that the new document is not web accessible.
  • topics: An optional list of topics relevant to the document. When Lytics tries to enrich the new document, the resulting topics will be appended to this list. In the event that you only want your own custom topics added to a document, you'll need to contact your account representative at Lytics Support to remove all external enrichment settings.

Customizing Document Properties

Adding custom properties to a document allows you to create advanced content collections based on those custom properties. Imagine creating recommendations from a pool of custom categories, promoting pages with custom seasonality components for particular holidays, adding a custom SKU hierarchy to better reflect your product catalog within Lytics, etc.

The Lytics crawler can detect custom document properties from custom meta tags any meta tag with a name property prefixed with lytics: will be ingested and appended onto a document. For example, a meta tag with name lytics:sku will update the sku field on that document.

<meta name="lytics:sku" content="SKU123" />
<meta name="lytics:category" content="electronics" />
<meta name="lytics:genre" content="action" />
<meta name="lytics:subgenre" content="spy fiction" />

When Lytics scrapes new documents, it will append those properties on the newly generated content entity within Lytics. When adding a field that isn't currently represented within the content schema, the content query will need to be updated with the new property.

Customizing Topics

There are a couple of ways to provide custom topics to the Content Affinity Engine.

First, you can modify the markup of your content to include the custom lytics:topics meta tag.

Second, if you're already providing custom content through the Corpus API, you can include custom topics in your API request.

If you add a topic that doesn't exist in Lytics' default content taxonomy which consists of content from common knowledge bases like DBPedia and Wikidata you might see a label in Lytics' Topic UI indicating that it is a custom topic.