Create personalized messaging campaigns for your customers. Attach customer metadata from Freshpaint to the user profiles in your Iterable project.
This integration makes it easy for you to identify your users, track events, and track page views.
Projects in Iterable use a specific field to identify each user. Each project can be set so
userIdcan be selected as the project's unique identifier at the time of creation.
There are 3 types of projects available to identify users:
- Email-based: uses
- UserID-based: uses
userIdas the unique identifier
- Hybrid: Uses
userIDas unique identifiers
- 1.Navigate to Integrations > API Keys.
- 2.Click New API Key.
- 4.Click Create.
- 5.Copy the API key to your clipboard.
- 1.Navigate to Destinations > Apps and find Iterable in the list. Click Configure.
Search for Iterable in the Freshpaint destinations list.
2. Paste your Iterable server-side API key in the API Key box, and click Save.
3. That's it! The integration status should now be active.
When you call freshpaint.identify(), Freshpaint will create or update a User profile in Iterable by hitting Iterable's API identify endpoint at: /api/users/update. Here is an example of an identify call:
- For email-based projects, you must include an
- For userId-based projects, you must include an
- For hybrid projects, you must include an
userIdproperty. If you do include both
userIdat the top level of an identify call, precedence rules apply.
When Freshpaint receives new user property data, it will update the contact properties for the corresponding user profile in Iterable.
In order to send emails to a user in Iterable, you must first send an identify call with the
When you send an event to Iterable from Freshpaint, Freshpaint will create an event and attach it to the matching user's profile. It does so by sending a POST request to Iterable's events API endpoint at: /api/events/track
Users need to first be identified before events can be associated with their user record, as Iterable doesn't support anonymous users. Freshpaint events for anonymous users will not be sent to Iterable.
You can see events associated with each user by searching for the user profile under contact lookup:
If you track an event with the special event name
Order Completed, we will send this as a Purchase event in Iterable by hitting their track purchase API endpoint at: /api/commerce/trackPurchase. You can see those Purchase events populated in your purchase event log of your Iterable account.
There are some things you need to know in order to do this effectively:
- You must include a
campaignIdproperty, which must be the id of the campaign you are associating the purchase with;
- You must include a
templateIdproperty, which is the id of the template of the campaign being associated;
- You must include an
itemsproperty, which is an array of objects that represent the items being purchased;
- You must have a
totalproperty, which is the total price of the purchase event.
If you do not have all of these together, then your purchase event will not be sent to Iterable. You should use Freshpaint's event tester for Iterable to verify that what you want to do in your code will work. You can find more information on Iterable's API documentation.
When Freshpaint receives new page views, it will update the event history for the corresponding user profile in Iterable.
Enable this setting to apply a default set of transformations from Freshpaint User Properties to Iterable Properties when making Identify calls.
Freshpaint User Property
Changing this setting for an existing project may leave Iterable profiles in an inconsistent state with both old and new properties.
You can find this option right below where you save your API key.
Set up transformations to modify your data before it's sent to your destination. Read more about transformations here.
If you are sending in a date field to Iterable, it must be a specific type of string. You may want to send date fields to Iterable in order to aid in segmentation. You can read more about that here. Iterable has a specific date format that must be used to segment a field by date.
Acceptable date formats include:
- yyyy-MM-dd HH:mm:ss ZZ
2000-01-01 00:00:00 -04:00
- yyyy-MM-dd HH:mm:ss