URL Based Personalization

Background

Roojoom offers the ability to personalize Content Journeys (CJs) by passing personalization information as a URL parameter named 'ped' (Personalized Encoded Data). A customer may generate a personalized CJ link to each of its users by providing the appropriate value for this parameter in the manner described in this document.

Personalization Parameters

Personalization Parameters (PPs) values will be used while running dynamic business logic rules. 

PPs names (<param>) must start with an ASCII alphabet characters and may include ASCII alphabet characters, numeric character and the character underscore (_).

Example of valid PPs are:

"first_name":"Marc"

"customer_id":"2045791"

"subscription_plan":"gold"

"service_1_activated":"true"

"days_since_registration":"21"

Personalization Encoded Data

The value for the 'ped' URL parameter is a base64 JSON dictionary with the keys being the PP names and the values are the corresponding desired personalization values encoded in UTF8.

Assuming that we have a CJ with two PPs used in the dynamic business logic, customer_id and subscription_plan, the corresponding JSON dictionary may look like this:

{ “customer_id ”: “2045791”, “subscription_plan”: “gold” }

After base64 encoding, the value for the 'ped' URL parameter in this example is:

eyJzdWJzY3JpcHRpb25fcGxhbiI6ICJnb2xkIiwgImN1c3RvbWVyX2lkIjogIjIwNDU3OTEiLCAibmFtZSI6ICJPck0ifQ%3D%3D

The final personalized URL for John Doe (after URL encoding) is:
http://tracks.roojoom.com/r/12345?ped=eyJzdWJzY3JpcHRpb25fcGxhbiI6ICJnb2xkIiwgImN1c3RvbWVyX2lkIjogIjIwNDU3OTEiLCAibmFtZSI6ICJPck0ifQ%3D%3D

Using Parameters Inside the Editor

Personalization Parameters (PPs) values may be used within a CJ's title and description. They have the following format where they are allowed:

{[{<param>}]}

where <param> is the name of the PP.

The result will be a dynamic string replace in the CJ's title and description.

Assuming that we have a CJ with two PPs, {[{name}]} and {[{email}]}, the corresponding JSON dictionary may look like this:

{ “name”: “John Doe”, “email”: “john.doe@example.com” }

After base64 encoding, the value for the 'ped' URL parameter in this example is:

eyAnbmFtZSc6ICdKb2huIERvZScsICdlbWFpbCc6ICdqb2huLmRvZUBleGFtcGxlLmNvbScgfQ==

The final personalized URL for John Doe (after URL encoding) is:
http://tracks.roojoom.com/r/12345?ped=eyAnbmFtZSc6ICdKb2huIERvZScsICdlbWFpbCc6ICdqb2huLmRvZUBleGFtcGxlLmNvbScgfQ%3D%3D

Given the above value for the 'ped' URL parameter, the CJ player will read the PPs from the dictionary and replace all occurrences of {[{<param>}]} with their corresponding HTML sanitized version of the values from the dictionary.

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.