How to create your own Recommendation

Business Case:

KPI to be measured

Bookmark this resource Follow

Ask a question

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

In this article we are going to illustrate how to create your own personal content recommendation using web services. Before reading this we strongly suggest you to read this article, in order to learn about Predictive Content Recommendation



In order to be able to create your own recommendation, the following conditions must be fulfilled:

  • First of all, you will have to make sure that the THRON Intelligence module has been activated, and that a Predictive Content Recommendation has been installed on any available folder. In addition you must have been granted with administrative role for this specific Recommendation.
  • Then you will have to make sure that content have been published in the folder where the recommendation is operating, and such content have to be properly tagged.
  • Remember that any Recommendation needs a period of time to process data and start suggesting content according to the parameters configured in its management console.


Recommend content via web services

The url of the web service to be invoked in order to recommend content is a POST request, structured as follows: 



  • clientId: it is the domain name used to access THRON, usually your company name.
  • instanceId: the ID of the specific recommendation.

In the body of the recommendation request you will have to provide the following JSON:

  "contactId": "<xcontactId here>"


  • contactId: it is the ID of the contact currently visiting the page, and for which you wish to retrieve content to be recommended. This ID can be retrieved using the method exposed by the THRON Tracking Library: _ta.getContactInformation('<yourClientIdHere>');

In the response of the request, you will find an array of content (recommendedContents), and for each one of them you will get the following information:

  • contentType: the content type (IMAGE, AUDIO, VIDEO, etc.)
  • dynThumbUrl: the url of the content's thumbnail,
  • id: the id of the content,
  • lastUpdate: the timestamp of the latest content's update (yyyy-mm-ddThh:mm:ss)
  • names: the list of content basic information in all the available languages, for each language you will get an object with:
    • lang: the reference language
    • name: the content's title
    • description: the content's description
  • owner: the name of the content's owner,
  • score: the score assigned by the recommendation to the specific content, the higher this number is, the more THRON considers the content relevant to the contact,
  • urls: a list of URLs from which the content has been most visited in the past, for each url you will get:
    • url: the actual url
  • visited: boolean, it is used to mark whether the content has been visited by contact in the last 60 days,


To retrieve the ID of the recommendation app you can invoke an appsList request: in the response of the request you will obtain the ID, but only if the request is performed by an application manager. The url of the request is structured as follows



In the body of the request you can paste the following JSON:

"clientId": "<your clientId>",
"criteria": {
"appType": [
"appSubType": "V2",
"appActive": true,
"onlyMyApps": false


With all the  information returned by the recommendation service you will be able to build your own customer experience. You can do it in many ways:

  1. For example, you can embed THRON player and deliver one of the recommended content by invoking its getContentDetail.
  2. You can create a wall of recommended content by extracting their thumbnails and using the Real-Time Image Editor, as depicted in the following image:

Predictive Content Recommendation


If you want a quick way to embed recommended content in your projects, remember that for each single recommendation, THRON provides two embeddable widgets which are ready to use: an Adaptive Content Wall and an Horizontal Content List.  Their embed codes can be taken directly into the application's management console. Instructions on how to customize such widgets can be found in this article.

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

Have any question?

Open a ticket