Integration overview

Iterable is a cross-channel marketing platform that powers unified customer experiences and empowers you to create, optimize and measure every interaction across the entire customer journey. Automated connections in Iterable, called (Journey) Webhooks, can be set up in minutes with no coding. Webhooks can automate your day-to-day tasks and enable workflows with Lob that otherwise wouldn't be possible.

Each Webhook you create will connect to an HTML template that you have stored in your Lob account. You will map your Iterable data fields to the dynamic Lob merge variables in the HTML template, and trigger mail sends via either an individual user action (such as email unsubscribe, for example) or to a group of users via a batch send.

Getting started with Iterable

To get started with Iterable, you will need to sign up directly with Iterable (see Request Demo) or have your Iterable account enabled by your company.

Getting started with Lob

Sign up for a free Lob account; from there you can jump right in with sending requests for free with your secret Test API key. Instantly begin sending real mail by simply adding a payment method to your account and switching to your Live API key.

Connecting Iterable to Lob

  1. Login to your Iterable Account.

  2. Navigate to "Integrations" -> “Journey Webhooks”

  3. Now click on "New Webhook" near the top of the page.

4. Configure as follows:

a. Endpoint: Make sure the URL matches the resource you want to create (i.e., that you are sending postcard requests to the postcard endpoint). See URLs here.

b. Authentication: None

c. Custom headers: Use the Authorization Header and your Base64 Encoded API key to connect your Lob account

  • We recommend using your Test Lob API Key in order to test and validate your integration. Then switch to your Live API key when you are ready to send mail.

  • You can use a Base64 Encoder tool to encode your (test) API Key.

  • Use the encoded key as the value for the Authorization header and that you are encoding your secret API key with a colon after the key like this Basic {{ 'YOUR_LOB_API_KEY:' | base64_encode

d. Body: select ‘URL-encoded Form’, then add form fields below to map the required Lob parameters to the associated attributes within Iterable. Example:

  • The fields on the left are the required Lob request parameters, and your corresponding data fields are on the right.

  • The right column is where you can dynamically map to Iterable attributes, by using the corresponding Iterable variable for a given attribute.

  • Iterable variables will need to be enclosed like so: {{your_variable}}. For example, if you have a field that maps to “to{name}” in your data and you want the variable first_name to be used as that mapping, you would put {{first_name}} next to the “to{name}” field on this page.

  • Be sure to map to all of the necessary merge variables. For example, if you have a merge variable “name” in your template you need to add a form field of “merge_variables[name]” and set the desired value on the right.

5. Click 'Create Webhook.'

6. Ensure you are mapping all the required templates.

  • Postcards and Self-Mailers will utilize two templates, one each for the front and back of the postcards.

  • Letters have just one template, mapped to the parameter ‘file’ on the left side.

7. Click 'Save' on the right when you are finished.

8. Navigate "Messenging" -> "Journeys" (previously called “Workflows”)

9. Click on the Journey you want to incorporate this webhook into, or create a new Journey.

10. Find the event that will trigger your Lob webhook (for example, a customer is Added to a List, or opened an email), then drag in the “Call Webhook” tile and place it after that event in the Journey.

11. Open up that Webhook, and toggle on ‘Use Preset Journey Webhook’, then select the webhook you have created.

12. After you have successfully set up your Journey, send a test trigger by clicking on ‘Test Journey’. Check to see whether Iterable notes any errors.

13. Assuming no errors were caught, head over to your Lob dashboard and verify the results of the test. (Reach out to your CSM if you need assistance navigating the Lob dashboard.)

Best practices

API Keys

We strongly recommend testing any planned mail sends and webhooks by first using your Test Lob API Keys, and ensuring that the resulting records created in Lob match your expectations. Only then should you proceed to use your Live Lob API Key to actually generate mail.

HTML creatives

To leverage HTML creatives in Lob, you will want to save your HTML as a template within Lob, or host your HTML and generate a corresponding hosting URL. These can be passed to Lob from Iterable, but you are not able to pass a full HTML string directly to Lob from Iterable.

Iterable Journeys

There are 3 common scenarios in which Iterable Journeys trigger Lob mail sends:

  1. Single, triggered mailpieces from individual user actions. For example, someone unsubscribes to an email list, then a message is sent to Lob to trigger a single mailpiece.

  2. A regular job is run, resulting in mail being sent to all users who meet specific criteria.

  3. An audience list is exported from Iterable and uploaded to Lob, and mail is generated for each user in the list.

These scenarios all result in different volumes of mail requests being sent to Lob in a single batch, and there are some best practices for ensuring your integration is seamless for each batch size.

For any send types that will trigger fewer than 500 mailpieces in a single batch, as is typically the case with the first scenario above, you won’t need to take any additional steps to those listed above in this doc. However, for the second and third scenarios, in which single sends will contain more than 500 mailpieces, it is recommended that you connect with your Lob representative to discuss leveraging a Lob solution to manage non-rate-limited requests from Iterable.

Additionally, for the second and third scenarios above, you can take some additional steps to ensure that all requests reach Lob within the rate limit. For example, one possible workflow enhancement for batches typically between 500-3000 mailpieces is to include audience splits in the customer journey, with delays included to stagger the sends to Lob, thus reducing rate limiting errors. For large batches, it is also an option to export the audience list from Iterable and send it via Lob’s Campaign Dashboard, as it is purpose-built to handle batch sizes into the millions, and will ensure that all expected mail is generated.

Either way, if you expect to send batches above 500 mailpieces at a time, it’s beneficial to connect with your Lob representative so that we can walk through the best solution for sending at scale while preserving the automation benefits of connecting through Iterable.

Last updated