Client SDK
Personizely exposes some Javascript methods to give you more flexibility in using it.
ply.identifyVisitor(data)
This method returns a Promise.
data - object, containing information about the visitor and custom fields values. The object can have the following properties:
email - string, a valid email address firstName - string, visitor's first name lastName - string, visitor's last name phone - string, visitor's phone number companyName - string, visitor's company name companyTitle- string, visitor's company title marketingConsent- boolean, visitor's marketing consent status privacyConsent- boolean, visitor's privacy consent status address - string, visitor's address bio - string, visitor's bio customFieldValues - object, visitor's custom field's values
The custom field values object is an object where the keys are the custom fields id's which can be found on the Settings page and the values are the values of the respective fields for the current visitor.
For radio and select field types you need to make sure that the choice options are valid ones, so if you have a field named "Gender" with 2 options: Male, Female, you won't be able to save a different value than one of those two values. The checkbox type fields should receive a boolean value. The number type fields should receive a numeric value.
Example:
ply.trackGoal(eventName, value)
This method is used to track custom goals.
eventName - string, the name of the event (this should be the name of an existing goal in your Personizely website settings). value - number, goal value in the currency of your website
For example, to track a purchase worth $100 on your site, you can use the following code on your thank-you page: ply.trackGoal('Purchase', 100)
ply.trackEvent(eventName, value)
This method is used to track custom events.
eventName - string, the name of the event (this can be any arbitrary event name or the name of an existing goal in your Personizely). value - number, event value in the currency of your website (optional)
For example, to track an add to cart event worth $29 on your site, you can use the following code when a visitor adds a product to the cart: ply.trackEvent('Add to cart', 29)
ply.showWidget(id, suppressRules)
This method is used to show up any widget indifferently of the triggers it has assigned to it.
id - integer, the id of the widget suppressRules - boolean, whether to suppress the widget rules
ply.runCampaign(id)
This method is used to run a campaign manually.
id - integer, the id of the campaign
This method is used to set website data. The method can be called in two ways:
1st way:
ply.setData(data)
data - object, an object containing key-value data pairs, the values will be merged with the existing data object.
2nd way:
ply.setData(key, value)
key - string, the name of the key to be written to the data object. value - mixed, the value, can be string, boolean, number, null
For example, to add cart details to your website data you can use: ply.setData('cartSize', 5) to set a single value or:
ply.setData({cartSize: 5, cartValue: 99}) to set multiple values at once.