Freshpaint
Search…
Freshpaint Web SDK Reference

track

The track call can be used to manually send data to your destinations. See the docs on manually tracking events in Freshpaint for more information.
1
freshpaint.track("Purchase", {"price": 500});
Copied!
Argument
Type
Required
Description
Event Name
String
Yes
The name of the event you want to send to Freshpaint.
Properties
Object
No
A JSON object of properties you want to send along with the event.
options
Object
No
This is an advanced feature. Options is a JSON object that can be used to configure what data is sent to what destinations. See the docs on Passing in Options to the Freshpaint SDK.
callback
Function
No
A function that will be called after the track call completes.

identify

The identify call can used to attach user properties the current user. Destinations will then use that data to create a single profile for that user, even if data for that user comes from multiple places. See the identify docs for more information.
1
// Associate all future events sent from
2
// the library with the distinct_id [email protected]
3
freshpaint.identify("[email protected]", {
4
"email": "[email protected]",
5
"name": "Ada Lovelace"
6
});
Copied!
The properties argument is optional. If you want to only attach a unique identifier to the user, you can call identify like so:
1
freshpaint.identify("[email protected]");
Copied!
Likewise, the identifier is also optional. If you only want to attach properties to the user without attaching an identifier, you can perform a call like the following:
1
freshpaint.identify({
2
"email": "[email protected]",
3
"name": "Ada Lovelace"
4
});
Copied!
Argument
Type
Required
Description
unique_id
String
No
A string that uniquely identifies a user (such as email address).
properties
Object
No
A JSON object of user properties to send to the destinations.
options
Object
No
This is an advanced feature. Options is a JSON object that can be used to configure what data is sent to what destinations. See the docs on Passing in Options to the Freshpaint SDK.
callback
Function
No
A function that will be called after the identify call completes.

group

The group call can be used to attach group properties to the current user. Destinations will then allow you to analyze different groups of users.
1
freshpaint.group("Google", {
2
"plan": "enterprise",
3
"sign-up-date": "04/01/2019"
4
});
Copied!
Argument
Type
Required
Description
unique_id
String
Yes
A string that uniquely identifies the group this user belongs to (such as a company name).
properties
Object
No
A JSON object of group properties to send to the destinations.
options
Object
No
This is an advanced feature. Options is a JSON object that can be used to configure what data is sent to what destinations. See the docs on Passing in Options to the Freshpaint SDK.
callback
Function
No
A function that will be called after the group call completes.

alias

The alias call can be used to specify one user id as an alias for another user id. This is needed to implement the identify for some destinations, specifically Mixpanel and Kissmetrics.
    Mixpanel has an Organization setting to control identity merging that you can read more about here. If it is disabled, you will need to call alias explicitly.
    Kissmetrics requires an explicit call to alias only in certain circumstances that you can read about here.
1
freshpaint.alias("[email protected]");
Copied!
Argument
Type
Required
Description
new_id
String
Yes
The new id to alias the old id to.
old_id
String
No
The old id to alias to the new id. Defaults to the id of the current user.
options
Object
No
This is an advanced feature. Options is a JSON object that can be used to configure what data is sent to what destinations. See the docs on Passing in Options to the Freshpaint SDK.
callback
Function
No
A function that will be called after the alias call completes.

page

The page call can be used to trigger pageviews in your destinations and attach data to pageviews. Note that there is a call to freshpaint.page() at the end of the Freshpaint Javascript snippet. If you want to call freshpaint.page(), you should remove the call that occurs in the freshpaint snippet.
1
freshpaint.page("marketing site", "homepage", {"ab-test-variant": "a"});
Copied!
Argument
Type
Required
Description
category
String
No
The category this page belongs to (such as a marketing page or product page).
name
string
No
The name of this specific page.
properties
Object
No
A JSON object of properties to send to the destintions.
options
Object
No
This is an advanced feature. Options is a JSON object that can be used to configure what data is sent to what destinations. See the docs on Passing in Options to the Freshpaint SDK.
callback
Function
No
A function that will be called after the page call completes.

ready

The ready call will call the provided callback after the Freshpaint SDK and the SDK for all destinations has finished loading.
1
freshpaint.ready(function() { console.log("The Freshpaint SDK has loaded"); });
Copied!
Argument
Type
Required
Description
callback
Function
Yes
The function to call once the Freshpaint SDK has completely loaded

reset

The reset call clears any local Freshpaint data attached to this user. This does not clear any local data for any of your destinations.
1
freshpaint.reset();
Copied!

addEventProperties

The addEventProperties call can be used to set data layer properties. Once a property is set through addEventProperties all events going forward will contain that property. The call
1
freshpaint.addEventProperties({"pricing plan": "enterprise"});
Copied!
will include the property pricing plan with the value enterprise until either the value is overwritten or you delete the property with removeEventProperty. addEventProperties should be used to set any properties that can change.
Argument
Type
Required
Description
properties
Object
Yes
An object of properties and values to attach to all events going forward.

addPageviewProperties

The addPageviewProperties call creates data layer properties that persist until the user leaves the page. The properties created with addPageviewProperties are automatically removed once the user leaves the current page. The call:
1
freshpaint.addPageviewProperties({"product name": "pair of shoes"});
Copied!
will send the property product name with the value pair of shoes as part of all events that occur on the current page. Once the user leaves the current page, the property will no longer be sent. The addPageviewProperties call should be used to set any properties that are specific to the page the user is currently on.
If you call addPageviewProperties you should call it as part of the Freshpaint snippet. Specifically you should call addPageviewProperties immediately after the freshpaint.init() call and before the call to freshpaint.page(). This ensures any pageview properties you set are attached to the pageview event created by Freshpaint.
Argument
Type
Required
Description
properties
Object
Yes
An object of properties and values to attach to all events that occur on the current page.

addInitialEventProperties

The addInitialEventProperties call works the same way as addEventProperties except if a property is already set, addInitialEventProperties will not override it. This is useful for when you care about the first value of some property. As an example, the call
1
freshpaint.addInitialEventProperties({"initial landing page": "/article"});
Copied!
will set the value of the property initial landing page to /article. Even after calling addInitialEventProperties with a different of initial landing page the value of initial landing page will still be /article. addInitialEventProperties should be used to set properties that you never want to change.
Argument
Type
Required
Description
properties
Object
Yes
An object of properties and values to attach to all events going forward.

removeEventProperty

The removeEventProperty call can be used to remove data layer properties. Once used, freshpaint will no longer send the given property. As an example, the call:
1
freshpaint.removeEventProperty('search term');
Copied!
will delete the current search term property and Freshpaint will stop sending it going forward.
Argument
Type
Required
Description
property
String
Yes
The name of the property to remove.
Last modified 3mo ago