This preview of pull request 1639 is meant for internal use only.

Promoter Destination

Promoter.io quick info

Promoter.io accepts Track, and Identify calls. If you reference it in the Integrations object, call it “Promoter.io”.

Promoter.io accepts cloud-mode data from all Segment source types. It does not offer device-mode connections.

Getting Started

Once the Segment library is integrated with your service, add your Promoter API Key and enable Promoter in your Segment destinations page. You can find your API key in Promoter.io under Accounts Settings > Segment Destination.


Promoter supports the identify and track methods from Segment and will allow you to:

  • Add a contact to a list
  • Send a survey to a contact

Both identify and track will need to be called in order to use the full power of Promoter.

Identify

By calling identify, you will effectively be creating a new contact for your organization.

Within the identify event, Promoter requires a userId and email, while firstName and lastName are optional. However, it is encouraged that you pass in as many attributes that are meaningful to your organization around the context of NPS. You will be able to filter your score by every single attribute or combination of attributes provided.

Here’s an example:

{
  "userId": "12345",
  "action": "identify",
  "traits": {
    "email": "ted@mosbiusdesigns.com",
    "firstName": "Ted",
    "lastName": "Mosby",
    "plan": "Premium"
  }
}

Track

By creating a track event you will effectively trigger a survey to be sent to your contact.

The track event should have an associated userId sent with it. That userId needs to match the userId sent with the identify event. This is the only way we know which contact you would like to associate this event to. We will send a survey to that contact using the campaign that’s associated to Segment within Promoter.

Note: if you are using our client-side javascript library (Analytics.js) and already called identify we will automatically include the userId with every track call.

Here’s an example:

{
  "userId": "12345",
  "action": "identify",
  "traits": {
    "email": "ted@mosbiusdesigns.com",
    "firstName": "Ted",
    "lastName": "Mosby",
    "plan": "Premium"
  }
}

Order Completed

When you track an event with the name Order Completed using the e-commerce tracking API, we will send the event and data to Promoter as a custom event with the data stored with Promoter for future use.

Personas

You can send computed traits and audiences generated using Segment Personas to this destination as a user property. To learn more about Personas, contact us for a demo.

For user-property destinations, an identify call is sent to the destination for each user being added and removed. The property name is the snake_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Personas sends an Identify call with the property order_completed_last_30days: true. When the user no longer satisfies this condition (for example, it’s been more than 30 days since their last order), Personas sets that value to false.

When you first create an audience, Personas sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

Supported Sources and Connection Modes

Before you start, make sure Promoter.io supports the source type and connection mode you’ve chosen to implement. You can learn more about connection modes here.

Web Mobile Server
📱 Device-mode ⬜️ ⬜️ ⬜️
☁️ Cloud-mode

Segment offers an optional Device-based Connection Mode for Mobile data going to Promoter.io, so that you can use Promoter.io features that collect data directly from the mobile device. To do this, you must package the Segment-Promoter.io mobile SDK with the Segment mobile library.

Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

API Key

You can find your API key in Promoter.io under your accounts settings > Segment Integration

This page was last modified: 20 Oct 2020



Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
or
Create free account