Intercom
Intercom allows you to engage users at the desired place and time by combining apps for messaging customers for sales, marketing, and support purposes all in one place.
To set up the Intercom integration, follow the following steps:
- 1.
- 2.In Intercom, go to your settings page and copy/paste your Workspace ID into the Account ID credentials setting in Freshpaint. The easiest way to find your Workspace ID is to look in your Intercom url for the value right after "apps". Here are more detailed docs on how to find your Workspace ID in Intercom.
That's it! Now Intercom is available as an app destination. In order to send events to Intercom, you can enable the Intercom destination from the event definition.

When you call freshpaint.identify(), Freshpaint creates or updates a User profile in Intercom using their Users API. You may want to pass in a unique userId to your identify call. You can read more about userId and Intercom here. The creation of leads is not supported currently.
When you send an event to Intercom from Freshpaint, Freshpaint will create an event in Intercom associated with a User.
Because Intercom only associates events with known users, an Identify call with a
userId
is required before events are associated properly.You can view events under Settings > <project name> data > Events:

Intercom only allows a total of 120 unique active event names. You can read more about that in Intercom's docs here. If you are sending Freshpaint more than 120 unique event names, Intercom only accepts the first 120 events that their servers receive. Any following events will throw an error. In Intercom, an “Active” event is one which has not been archived. If you archive an event, it makes it inactive and removes it from your 120 active events. If you need to bring your account back under the 120 event limit, archive some events from in the Intercom UI by navigating to Settings > (workspace name) data > Events, then click on the event to archive.

If you send
properties.revenue
and properties.currency
, Freshpaint formats that according to Intercom’s Monetary Amount and sends it as: price: {
amount: revenue * 100, // Intercom requests value in cents
currency: track.currency() // fallsback on 'USD'
}
When a pageview is performed Freshpaint will send a virtual pageview to Intercom. You can view pageviews under the user profile.

You can read more about freshpaint.group() here. Calling this method allows users to be organized into multiple groups, which associate them with multiple companies in Intercom.
Here is an example of a group call:
freshpaint.group("Freshpaint", {
"plan": "enterprise",
"sign-up-date": "01/19/2023"
});
For the example above, you'll now see the desired users grouped together under Contacts > Companies.

Set up transformations to modify your data before it's sent to your destination. Read more about transformations here.

Last modified 15d ago