Some companies integrate with Segment.com for sending events. Segment tracks user actions within a customers system and then aggregates that for reporting. We can take the events tracked with Segment and send them over as Events into ChurnZero. We can do this one of two ways:
Group and Identify
The first (and most common) method to get Events from Segment into ChurnZero is to use the Group and Identify calls on every page load. The Group call determines what Account the action belongs to, while Identify determines the contact. When using this method, ChurnZero is only sent the Segment UserID, which has the pertinent Account and Contact information about the event.
Account and Contact ID on Event
If you can not use Group and Identify, we can still get Event information into ChurnZero if the Account and Contact IDs are listed on the Event level within Segment. This is not a common practice, but it can be done.
In either situation, we can also update Contact and Account Attributes if desired.
Instructions for Implementation
Create a Segment Webhook to the production account in ChurnZero
- The destination for the webhook is: https://app.churnzero.net/api/v1/webhooks/segment
- The Application key for the production account needs to go in the header of the webhook
- AppKey: [Production Application Key found on the "Application Keys" tab in your ChurnZero instance]
Implementation of Events
- Provide the names of the events that you want to send from Segment to ChurnZero on the Events tab of the integration worksheet. We need the names listed exactly as they are in Segment.
- If you would like to institute a "pretty name" for these events, please provide the name you would like to display in ChurnZero in addition to the event name.
- Provide ChurnZero with the following two factors:
- What field identifies the account external ID in your Segment Calls?
- What field identifies the contact external ID in your Segment Calls?
Implementation of Attributes
ChurnZero can also accommodate pulling account and contact attributes from Segment. To do this, you must provide us 2 things:
- The call that the attribute is located on- (i.e track, group, identify, etc)
- The Path to this attribute- this is needed because we receive the message in JSON, so the attribute can be embedded as child fields
Keep in mind because the integration with Segment is a webhook, we only get this information as a push to ChurnZero. So we will only be able to populate these attributes in ChurnZero when an action is taken to trigger the call within Segment. This means that attributes will not be populated in ChurnZero until a contact takes an action within your system.