Customer.io
Connecting Customer.io to Poplar
To integrate Customer.io to Poplar you can refer to their Webhook docs or the step by step guide below.
  1. 1.
    Log in to customer.io and click the Campaign tab on the left. You'll want to either Create a new campaign or edit an existing campaign workflow.
  2. 2.
    If creating a new campaign, give a name for your campaign, then click "Create Campaign"
  3. 3.
    On the Trigger Step, set the triggering event criteria, i.e. a user makes a purchase or abandons cart etc... Then when ready click "Next"
  4. 4.
    On the Workflow Step, you'll want to drag a new Webhook to your workflow.
5. Click the newly added webhook, to then name it and add content.
6. Set the URL to: https://api.heypoplar.com/v1/mailing/
7. Log into Poplar and setup a new test API Key for Customer.io. You can get the key at https://app.heypoplar.com/credentials. Copy the key and head back to the webhook configuration in customer.io
We strongly recommend you use a test API key to start. Once your workflow is set up successfully and running in test mode, go back into the webhook and swap it out for a production API key to begin mailing.
8. Add a HTTP Header and configure an Authorization key and set the Bearer <Your API Key> (make sure to also replace the <>)
9. Configure the webhook contents. If you're doing address enrichment you just need to pass the email and any other variable data. If mailing existing customer addresses, you'll pass in the full address. Note the double brackets surrounding the variable data being passed.
For an email append: the customer attribute names you have in your account may differ and need to be modified.
1
{
2
"recipient": {
3
"email": "{{customer.email}}"
4
},
5
"campaign_id": "******-REPLACE WITH YOUR CAMPAIGN ID-******-****"
6
}
Copied!
For a full address mailing:
1
{
2
"recipient": {
3
"full_name" : "{{customer.full_name}}",
4
"address_1": "{{customer.address_1}}",
5
"address_2": "{{customer.address_2}}",
6
"city": "{{customer.city}}",
7
"state": "{{customer.state}}",
8
"postal_code": "{{customer.postal_code}}"
9
},
10
"campaign_id": "******-REPLACE WITH YOUR CAMPAIGN ID-******-****"
11
}
Copied!
key
value
campaign_id
copy from the right side of the campaign page on Poplar
full_name
Optional, you can also replace with a fixed string like `Current Resident` for use on the address block
first_name
When using first & last name instead of full name in your webhook you must use BOTH or it will error out.
last_name
address_1
address_2
city
state
postal_code
email
You can also add merge tags with your own variable data at the end. When using first & last name options instead of full name you need to include both or it will error.
10. Test your webhook by sending a test, then checking the history tab of the campaign in poplar to see if it appeared.
11. We recommend leaving the webhook live with your test key for a period of time to get a sense for your volume. Once it looks like it's working well, go back in and replace the API key with a production key to begin mailing.

Exceptions/Troubleshooting

You may see an exception when you don't have a a name or address_2 or other metadata you are referencing on every recipient record. It's easy to solve this using an if statement in the webhook.
1
{% if customer.address_2 != blank %}
2
{{ customer.address_2 }}
3
{% else %}
4
5
{% endif %}
Copied!
Last modified 6mo ago
Copy link