Integrating with Customer.io
In this guide we're going to show you how to verify email addresses of people and unsubscribe the ones that are not deliverable.
To integrate Emailable with Customer.io you'll need to create a Private API key. Head over to the API Page.
Once you've created your API key you'll be redirected back to the API Page and you should see a table that includes your newly created API key.
In Customer.io you're going to create or edit an existing campaign. The webhook step will be part of the workflow in the campaign.
Now that you've created a webhook you're going to click on it and the sidebar should open. Click the Add Request button.
You should now see a section with three tabs. (Request, Response, and Preview)
Type: POST
URL: https://api.emailable.com/v1/verify?email={{customer.email}}&api_key=YOUR_API_KEY
Make sure to replace YOUR_API_KEY in the URL above with your API Key.
Now click on the Response tab and click the Set up an attribute button.
For our use case we decided to map the following response data to the following fields
emailable_state: {{response.state}}
emailable_reason: {{response.reason}}
emailable_free: {{response.free}}
unsubscribed: {% if response.state == 'deliverable' %}false{% else %}true{% endif %}
emailable_unsubscribed: {% if response.state == 'deliverable' %}false{% else %}true{% endif %}
You can review your attribute mappings and add any others you would like by reviewing the test response. Click the Send test... button in the right corner.
You've now setup Customer.io webhooks to verify email addresses using Emailable. People that have email addresses that are not deliverable will automatically be unsubscribed.
For all campaigns that send email, you'll want to copy this webhook to be the first step in their workflows.
Set up API Key
To integrate Emailable with Customer.io you'll need to create a Private API key. Head over to the API Page.
Once you've created your API key you'll be redirected back to the API Page and you should see a table that includes your newly created API key.
Set up webhook in Customer.io
In Customer.io you're going to create or edit an existing campaign. The webhook step will be part of the workflow in the campaign.
1. Start by adding a webhook to your workflow.
Now that you've created a webhook you're going to click on it and the sidebar should open. Click the Add Request button.
2. Set up the Request
You should now see a section with three tabs. (Request, Response, and Preview)
Type: POST
URL: https://api.emailable.com/v1/verify?email={{customer.email}}&api_key=YOUR_API_KEY
Make sure to replace YOUR_API_KEY in the URL above with your API Key.
3. Set up the Response
Now click on the Response tab and click the Set up an attribute button.
For our use case we decided to map the following response data to the following fields
emailable_state: {{response.state}}
emailable_reason: {{response.reason}}
emailable_free: {{response.free}}
unsubscribed: {% if response.state == 'deliverable' %}false{% else %}true{% endif %}
emailable_unsubscribed: {% if response.state == 'deliverable' %}false{% else %}true{% endif %}
You can review your attribute mappings and add any others you would like by reviewing the test response. Click the Send test... button in the right corner.
Conclusion
You've now setup Customer.io webhooks to verify email addresses using Emailable. People that have email addresses that are not deliverable will automatically be unsubscribed.
For all campaigns that send email, you'll want to copy this webhook to be the first step in their workflows.
Updated on: 06/16/2021
Thank you!