Iterable

Iterable is the AI-powered cross-channel communication platform helping to orchestrate individualized, harmonized, and dynamic customer experiences by closing the activation gap.

Overview

An integration between Extole and Iterable offers you seamless data transfer between your referral and engagement programs and cross-channel marketing campaigns. By leveraging Extole program data, you can create targeted and personalized messaging that resonates with customers, understand the impact of your referral and engagement promotions in Iterable, and grow your marketing list, resulting in deeper insights and optimization of your cross-channel marketing campaigns.

Prerequisites

RequirementDescription
Iterable AccountAn Iterable account is required in order to take advantage of this integration.
Extole AccountAn Extole account is required in order to take advantage of this integration.
Iterable API KeyA server-side API key for making requests to Iterable. You can generate your API key in your Iterable Account.
User IdentityThe unique identifier for a user in Iterable and Extole.

For Email and Hybrid Iterable projects, the identifier will be email — the email address of the user.

For User ID Iterable projects, the identifier will be user_id — your unique identifier of the user.

Learn more about Iterable project types.

Use Cases

  1. Create and update users in Iterable for future marketing. Learn more >
  2. Use Custom Events from your Extole programs in your Iterable Journeys and Campaigns. Learn more >
  3. Include a customers share link or share code in your Iterable campaigns. Learn more >

Integration

Generating an Iterable API Key

  1. Log in to your Iterable account and follow Iterable’s support documentation to create a new API Key.
  2. Save your API key in a safe place. You will need to paste it into your My Extole account.

Setting Up an Extole Integration

Extole supports sending webhooks on any event in a customer Journey to connect with third-party products. To do so, you will first need to generate an JavaScript API key within Iterable:

  1. Log in to your Extole account and navigate to Tech Center > Outbound Webhooks.
  2. Hit the + New Integration button.
  3. Enter a name for the Key (this is how the key will be referenced within Extole).
  4. Select Webhook as the Key Type.
  5. Set the Algorithm to Password.
  6. Paste your Iterable REST API key into the key field
  7. Click Create Key.

Use Case 1: Create and Update Users in Iterable for Future Marketing

Whenever new or existing customers interact with your Extole-powered programs, they have the option to opt-in to receive further email marketing communications from you. Any time a customer checks this box and submits the form, Extole will track their opt-in status and can forward that status to an Iterable list. Alternatively, if customers decide not to opt-in to marketing emails in your Extole-powered campaigns, Extole can still create profiles for them in Iterable for future push or in-app messaging communication.

Complete the following steps to send users from Extole to an Iterable list:

  1. Create your static lists in Iterable. Extole strongly recommends creating separate lists by audience (advocate/friend) and marketing opt-in status (opted-in to email vs. not opted-in to email).
  2. Copy the list ID from your newly created list (you’ll need to paste it into your My Extole account).
  3. Log in to your My Extole account and navigate to the Tech Center > Outbound Webhooks.
  4. Click + New Webhook and fill out the necessary fields.
  5. Leave the Type as Generic.
  6. Open the Client Key dropdown and select the key you created in the Setting Up an Extole Integration in Extole section of this guide.
  7. Paste in the API URL for Iterable’s List Subscribe API: https://api.iterable.com/api/lists/subscribe.
The outbound webhook creation screen in My Extole
  1. Work with your Extole CSM to create the request body. Here is where you will need to supply the list ID for the Iterable list you would like to send opt-ins to.
  2. Repeat Steps 4–8 for each list.
  3. Done! You can now set up Journeys in Iterable to subscribe opted-in participants to marketing communications or to trigger transactional messages.

A typical request body will look something like the following:

{
    "listId": <LIST_ID_FROM_STEP_2>,
    "subscribers": [
        {
            "mergeNestedObjects": true,
            "dataFields": {
              "share_link": "https://share.example.com/test10",
            },
            "userId": "",
            "preferUserId": true,
            "email": "[email protected]"
        }
    ]
}

Use Case 2: Use Custom Events from your Extole programs in your Iterable Journeys and Campaigns

🚧

Important Note

Program-related emails will be sent from Extole by default and only participants who have previously opted in to SMS/push notifications will receive Iterable journey messages.

Extole events can provide valuable data for powering your Iterable journeys. For example, you could create a referral reward notification Journey to send an in-app, push, or SMS message when participant earns a reward in your Extole-powered programs.

Additionally, when marketing your referral and engagement programs to customers in Iterable, you can use Extole Events as campaign conversion metrics to understand the number of shares and referrals an Iterable campaign drove.

Complete the following steps to send Extole event data into your Iterable account:

  1. Make sure you have event handling enabled in your Iterable account.
  2. Work with your Extole team to decide which custom events you’d like to send into Iterable, or choose from our standard table below. Your Extole team will then set up a webhook that points to Iterable’s Events API and events will automatically start flowing into Iterable.
EventExample Properties
Extole Advocate Sharedemail (required)
user_id (required for User ID project types)
id (optional)
first_name (optional)
last_name (optional)
share_link (optional)
Extole Friend Signed Upemail (required)
user_id (required for User ID project types)
id (optional)
first_name (optional)
last_name (optional)
Extole Friend Convertedemail (required)
user_id (required for User ID project types)
id (optional)
first_name (optional)
last_name (optional)
Extole Advocate Reward Earnedemail (required)
user_id (required for User ID project types)
id (optional)
first_name (optional)
last_name (optional)
coupon_code (optional)
reward_face_value (optional)
reward_face_value_type (optional)
Extole Friend Reward Earnedemail (required)
user_id (required for User ID project types)
id (optional)
first_name (optional)
last_name (optional)
coupon_code (optional)
reward_face_value (optional)
reward_face_value_type (optional)

A typical request body will look something like the following:

{
  "email": "[email protected]",
  "eventName": "extole_advocate_reward_earned",
  "id": "123456",
  "createdAt": 1682974089,
  "dataFields": {
    "first_name":"test",
    "last_name":"user",
    "coupon_code":"RAF12345"
    "reward_face_value":"30",
    "reward_face_value_type":"USD",
    
  }
}

Use Case 3: Include a Customer's Share Link or Code in Your Iterable Messages

Promoting your program has never been easier. With Extole and Iterable you can turn every customer into an advocate by including their personal share link in all of your Iterable communications. Extole will create the share link for the user and add it as an attribute to their Iterable profile.

Share Links for Existing Users

Complete the following steps to generate and pass Extole share links to existing Iterable users:

  1. To ensure that all current customers in Iterable have a share link, you can export a list of of customers from Iterable and securely upload them to Extole’s Batch Jobs center. Learn more about Extole's file formatting standards and uploading files to Extole.
  2. Your Extole CSM will then help you generate share links for each of the customers in the uploaded file.
  3. Once the share links have been generated, your CSM can either help you run a report in the Extole platform and export the data to then be uploaded into Iterable or they can help you set up a webhook to update Iterable user profiles automatically.

Share Links for New Users

Complete the following steps to generate and pass Extole share links to new Iterable users:

  1. For all new customers, Extole can generate share links for every new customer and send them to Iterable to automatically update or create user profiles. To set this up, work with your Extole team to set up a webhook using Iterable’s Update User API.
    1. Note: This connection identifies users in Extole and Iterable based on their email addresses.
  2. Once the webhook is configured, you will be able to start including share links in your Iterable messages using User Profile Fields!

A typical request body will look something like the following:

{
  "email": "[email protected]",
  "dataFields": {
    "share_link":"https://share.yourcompany.com/test"
  }
}

Customizations

Send Iterable Events to Extole

Leverage any Iterable custom event to personalize the customer experience in your Extole-powered programs. Generate your Extole API key for Extole's Events API and work with your Iterable CSM to set up your webhooks in Iterable.

Using this Integration

Work with your Iterable CSM to start using Extole data in your Iterable campaigns. To debug this integration, you can use Extole’s Webhook Live View to view a live stream of triggered events and API responses.