Search documentation...

ChangelogBook a demoSign up



With Hightouch's HubDB integration, you no longer need to rely on others to build and maintain databases. Push and store data to tables that you can embed within websites and landing pages. Integrated into HubSpot, data is easily accessible, editable and shareable across multiple tables. You can even publish table updates in one sync.

Supported syncing

Sync TypeDescriptionSupported Sync Modes
TablesSync data to create or update tables in a HubDB.Upsert, Update

Connect to HubDB

You must have one of the following HubSpot account types to use the Hightouch integration:

  • CMS Hub Professional
  • Enterprise
  • Marketing Hub Professional
  • Enterprise with Website Add-on

Go to the Destinations overview page and click the Add destination button. Select HubDB. You can then authenticate Hightouch to HubDB via OAuth.

Authenticate with OAuth

Click Log in to HubDB and log into your HubSpot account.

Once successful, you will be redirected back to Hightouch to enter a descriptive name for your destination and complete setup.

Sync configuration

Once you've set up your HubDB 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 HubDB destination you want to sync to.

In the HubDB sync configuration form, select the HubDB table you want to sync to.

Record matching

Hightouch requires choosing one column to define how rows in your source should be matched to records in HubDB. The field to match should be unique and the data type of the field should match the data type of the corresponding column in your model.

Field mapping

You can choose which specific fields you want to sync to your HubDB table. Only the fields that you map will be exported. All other columns from your results are ignored. If you don't have a HubDB field to sync data to, you can add a new field to the table directly within HubDB. Then, refresh the HubDB fields and the new field should be available to map.

Field mapping in the Hightouch UI

Delete behavior

You can choose how to handle data points in HubDB when the corresponding rows are deleted in your source.

Do nothingKeep the data in HubDB
Clear FieldsClear the mapped fields but keep the record in the HubDB table
Delete Destination RecordDelete the record from the HubDB table completely

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.

400 - the value for column date was of type STRING, but we're expecting NUMERIC

The full error message looks something like this:

    "message":"Error when batch creating datatable rows in table 6058806 for portal 2661677: the value {type=string, value=2021/03/20 13:30} for column date was of type STRING, but we're expecting NUMERIC",

One possible cause for this error is sending incorrectly formatted date values to HubDB.

HubDB's date data type must be a millisecond timestamp set to midnight UTC. A millisecond timestamp is numerical value with 13 digits, for example 1620170285617, as compared to a traditional Unix timestamp which has ten.

A convenient way to convert your date values to Unix millisecond timestamps is to use the to_unix function in the template mapper.

Field mapping in the Hightouch UI

The to_unix function throws an error if the input row's value is null. To avoid this, you can enter this Liquid into the template mapper:

{%- if row['column_name'] == null -%} {{null}} {%- else -%} {{row['column_name'] | to_unix}} {%- endif -%}

Be sure to replace column_name with the name of your model column.

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: May 9, 2023

On this page

OverviewSupported syncingConnect to HubDBAuthenticate with OAuthSync configurationTips and troubleshootingCommon errorsLive debuggerSync alerts

Was this page helpful?