First, navigate to the Sources page and create a new source.
Next, we can input the credentials for the data warehouse (BigQuery, Snowflake, etc.) or database (Postgres) that we want to connect to Hightouch. This will serve as the source for data that we sync into our destinations.
If you are just signing up, you'll also have the option of using our Demo Database.
Make sure to test your source to ensure that the credentials are correct. An
error message will show if Hightouch is unable to connect to the data source.
In this example, we will use the SQL Editor method to create our model, but you can check out our docs to learn more about additional options which include using the Table Selector method, existing dbt models, or existing Looks to build models in Hightouch.
Navigate to the Models page and start by choosing a Source.
Next, create a new query. If you're using the demo database, you can try:
Click Run to see a preview of the data. By default, we limit to the first 100 rows. Then click Continue and give the model a name. You'll also need to pick the unique identifier for this table, usually id.
Each model needs a unique identifier. Hightouch uses this identifier to
compare subsequent runs to only change rows where a value has changed for that
Note: It is not possible to save a model if the query does not return any results. If you need to save a model with a query because you expect there to be results in the future even if there are none now, try adding the following SQL to the end of your query. This SQL will add a row of 'ignore' values which will not match against anything in your destination but will always be present so you can save the query.
UNIONALLselect'ignore', 'ignore', 'ignore'
If you want to learn more about exploring your data warehouse with SQL and with our visual query builder, check out the Exploring your data section of our docs.
Head over to the Destinations page and browse our list of integrations. If you already have an integration in mind, go ahead and use that. If not, the Google Sheets and Slack Integration are very simple to setup.
Alternatively, a Slack destination is also an easy way to get started. Once you've selected the Slack destination and authorized access, you can give your Slack destination a name, and then details on the message to send and where to send it will be finalized in the next step.
This configuration is specific to each destination that the query results are being sent to. This particular configuration will upsert the Hubspot object contacts for each row in the query of users, and map id, name, and email to id, lastname, and email respectively.
Not all fields have to be mapped! If you leave certain mappings empty, the
fields simply wont be synced to the object created in Hubspot.
Lastly, we have to schedule how often the query is run and subsequently synced to your destinations.
Make sure to also pick a unique primary key for your query. The unique primary key column is used by Hightouch to differentiate between new rows and changed rows when diffing results between consecutive runs before sending changes to downstream destinations like Hubspot.
Your data can be synced at per minute, hourly, daily, and weekly intervals.
Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.
Connection issues with your data warehouse?
Confusing API responses from destination systems?
Unsupported destination objects or modes?
Help with complex SQL queries?
If you see something that's missing from our app, let us know and we'll work with you to build it!
We want to hear your suggestions for new sources, destinations, and other features that would help you activate your data.