Links

Customer.io

This page describes how to use Census with Customer.io.

🏃‍♀️ Getting Started

In this guide, we will show you how to connect Customer.io to Census and create your first sync.

Prerequisites

1. Collecting Customer.io API Credentials

To connect Census to your Customer.io, you'll need to provide Census with a few credentials so that we can talk to it directly.

2. Go to your API Credentials page

In the top right, click on your name, and select Account Settings
Then select API Credentials

3. Create a new set of Tracking API & App API credentials for Census

Click the Create New API Credentials button in the top right.
It's important to note that there are two types of API keys here: Track API Keys and App API Keys. Track API Keys are used to send behavioral tracking activity. App API Keys are used for triggering messages and broadcasts, as well as retrieving data from your workspace. For a more in-depth explanation, check out Customer.io's docs here. \
Tracking API Keys
\
App API Keys
Then, give the new credentials a name. It can be whatever you like, but give it something memorable so you know this key is used by Census. If you're using Customer.io's workspaces feature, you'll want to specify which workspace to use. If you want to connect Census to multiple workspaces, you'll need to create credentials for each one.
When you hit save, you'll return to the list of credentials. Make a note of the Site ID and API Key. You'll need to provide them to Census.

4. Create a new Customer.io connection in Census

  • Visit the Connections tab in Census
  • Then select Customer.io from the Add Service menu
Finally, provide the Site ID and both API Keys you just created on Customer.io. You can name the connection something memorable. This is particularly useful if you're going to create multiple connections, one for each Customer.io workspace. In that case, include the Customer.io workspace name here.
Customer.io will now appear as a new destination for Census syncs. 🎉

🏎 Sync Speed

Customer.io is a destination with a fast API that can burst all the way to 600 api calls per second but usually we set a conservative 150 calls per second.
Service
Public API rate limit
Records sync / Minute
Customer.io
150 / sec
7,000

🗄️ Supported Objects

We currently support all objects of Customer.io's core API.
Object Name
Supported?
Create Fields?
Person
Device
Event
Collections
Make sure you know what identifiers are used in your Customer.io Workspace!
Customer.io strongly prefers the ID field to be used as the identifier for a Person record and recommends using your internal ID when possible. If you plan to use the email field, make sure your workspace has enabled Using email as an identifier. You can read more about Customer.io's identifier guidelines here.

🔄 Supported Sync Behaviors

Learn more about all of our sync behaviors on our Core Concept page.
Behaviors
Supported?
Objects
Update or Create
Person, Event, Device
Update Only
Person
Append
Event
Mirror
Collections
🔋Contact us if you want Census to support more Sync Behaviors for this destination

💡 Things to know about Customer.io

There are a few unique features available when syncing to a Customer.io instance.
  • Events are unique (literally!). Census will only send new database rows to Customer.io and so Events only support the Append Only behavior for syncs. In order to make sure an event is only ever published once, each row in your events source needs a globally unique ID.
  • All objects support arbitrary custom fields.
    • If you are creating a sync for the first time:
      • Go to the Which properties should be updated? section and click Add Mapping at the bottom, and then click Create new field. Then, type in the name of the custom field as it appears in your Customer.io instance and hit Save. After that, you can select the field from your source that you want to send into that the Customer.io custom field.
    • If you are editing an existing sync's mapping:
      • Go to the sync's Configuration tab and in the Mapped Fields section, click Edit, click Add Mapping at the bottom, and then click Create new field. Then, type in the name of the custom field as it appears in your Customer.io instance and hit Save. After that, you can select the field from your source that you want to send into that the Customer.io custom field.

🚑 Need help connecting to Customer.io?

Contact us via [email protected] or start a conversation with us via the in-app chat.