The Iterable (Actions) destination is the newest version of Iterable's integration with Segment. This destination lets you define your own mappings of Segment events.
NOTE
This doc describes the Iterable (Actions) destination in Segment, which is the newest version of the Segment + Iterable integration (and recommended for most use cases). For information on the classic integration, see Segment + Iterable Integration (Sending Data from Iterable to Segment).
Setup instructions
In Iterable
Create a server-side API key
- Go to Integrations > API Keys.
- Click New API Key.
- Give your API key a name (for example, "Segment (Actions) Integration") and select Server-side.
- Click Create.
- Copy the API key to your clipboard — you'll use it a later step.
WARNING
- Create a new API key for Segment — don't reuse an existing one. (This makes it it possible to delete the key in the future without needing to worry about it being in use in multiple places.)
- Never bundle a server-side API key in client-side code (JavaScript, mobile application code, etc.).
- Store this API key in a secure location. After you close the setup menu, Iterable can only display the key’s last 8 characters. If you lose the full API key, you’ll have to create a new one.
Create a sandbox project
When configuring Segment to send data to Iterable, it's a good idea to test your configuration with an Iterable sandbox project (a test project that doesn't contain production data). Because Iterable separates user data by project, sandbox projects provide a convenient way to test new ideas and integrations without having to worry about making unintended changes to production data.
TIP
To learn how to set up a project, see Projects Overview.
In Segment
Go to the Catalog tab, and search for “Iterable.”
Select the Iterable (Actions) destination.
Choose the sources from which you'd like to send data to Iterable.
In the Settings tab, enter a name (for example, "Iterable (Actions)").
Enter the Iterable API key you created earlier, and click Save Changes.
To turn on the integration, switch the Enable Destination toggle on.
Available presets in Segment
The Iterable (Actions) destination has the following presets:
Preset Name in Segment | Default Action in Iterable |
---|---|
Track Calls | Custom Event |
Update Cart Calls | Cart Updates |
Order Completed Calls | Track Purchase |
Identify Calls | Update User Data |
Available actions in Segment
The Iterable (Actions) destination allows you to build your own mappings by combining triggers with Iterable-supported actions. To learn more about mappings, see the following Segment support docs:
Creating or updating users with the integration
In email-based projects
In email-based projects, you'll need to include an email
field in order to
create a new user in Iterable. Once both the email
and userId
fields have
have been set for a user, you can use userId
to make any future updates to a
user's profile.
userId
-based projects
In For userId
-based projects, you'll need to provide a unique userId
to create
a new user in Iterable. It's optional to add an email
field to a userId
-based
user profile — however, it's not possible to use the email
field to make
updates to a userId
-based user profile. All subsequent user updates must be
made with the user's userId
.
In hybrid projects
In hybrid projects, you have the flexibility to choose between using a unique
email
or a userId
to create a new user in Iterable.
Important differences from the classic Iterable destination
Commerce events
In the classic Iterable destination, cart updates were associated with Segment’s
Product Added
and Product Removed
events. However, in the Iterable (Action)
destination, the default mappings have been updated. Now, custom events titled
Cart Updated
are routed to Iterable’s POST /api/commerce/updateCart
API endpoint.
Segment's context fields
With the classic Iterable destination, when making an Identify call in Segment, certain context fields were automatically mapped to Iterable user profiles. However, this behavior has been changed. Please note that the following context fields are no longer automatically mapped to Iterable user profiles during Identify calls:
app
device
ip
locale
page
timezone
To include these fields in Iterable user profiles, pass them as traits with an Identify call. This change offers more control and customization options for managing user data within Iterable.
Learn more
For more information about this integration, see Segment's support docs: