Search documentation...

ChangelogBook a demoSign up


Sync data to Cordial through Contacts API

Supported syncing

Sync TypeDescriptionSupported Sync ModesAPI documentation
ContactsSync data from any source to Cordial as contactsUpsert, Update, InsertContacts
SupplementsSync data from any source to Cordial's supplemental data setsUpsert, Update, InsertSupplements

For more information about sync modes, refer to the sync modes docs.

Connect to Cordial

Go to the Destinations overview page and click the Add destination button. Select Cordial and click Continue.

Enter your API key from your Cordial account. If you don't have an API key, follow the instructions on Cordial to create API keys. Ensure the API key has write access for the object you are syncing.

Based on the sync object, ensure your API key has access to the following API endpoints:

ObjectRequired API endpoints
  • GET /accountcontactattributes
  • GET/POST/PUT /contacts
  • GET /supplements
  • GET/POST/PUT /supplements/<supplement key>/records

Next, select which Cordial domain your account uses. This will either be or You can determine which one your account uses by navigating to your Cordial dashboard and checking the website URL.

Sync configuration

Once you've set up your Cordial destination and have a model to pull data from, you can set up your sync configuration to begin syncing data. Go to the Syncs overview page and click the Add sync button to begin. Then, select the relevant model and the Cordial destination you want to sync to.

Select which object you'd like to sync.

Sync mode

  • Upsert: pushes new objects to Cordial and updates mapped fields that change in your source.
  • Update: updates mapped fields on existing objects in Cordial. New objects are not added.
  • Insert: pushes new objects to Cordial. Existing objects are not updated.

Field mapping


Cordial has the following contact attribute types:

  • string
  • number
  • date (ISO 8601 standard)
  • geo
  • array

Hightouch supports syncing with all of these types. You may use Hightouch's object inline mapping to construct Cordial's object values from your source.

You must create a contact attribute on Cordial before syncing to that field. Follow the instructions on Cordial either via UI or API to create contact attributes.


Start syncing supplements by creating a supplement collection on Cordial. Indexes on supplement collections are required mapping fields on Hightouch.

If a field you'd like to map to is not available in the mapping dropdown, you can enter the field name manually:

Record matching


In Upsert and Update mode, records must be matched by either Cordial ID or Email. Records without unique IDs will fail to sync.

In Insert mode, records must have an email field to successfully be added to Cordial. Records without an email identifier will fail to sync.


Since Cordial does not create ID fields for supplements, id is required in Insert mode. In Upsert and Update mode, id is also required to match records. Records without unique IDs will fail to sync.

Cordial does not allow 24 character hex strings as ID values for supplements.

Tips and troubleshooting

Common errors

If you encounter an error or question not listed below and need assistance, don't hesitate to . We're here to help.

Live debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Jan 30, 2024

On this page

Supported syncingConnect to CordialSync configurationSync modeField mappingRecord matchingTips and troubleshootingCommon errorsLive debuggerSync alerts

Was this page helpful?