Navigate to the Segments page on the sidebar and start by creating a new segment.
To get started quickly, we'll start by simply using SQL to create your first segment. Hit "New SQL Query" on the top left, and use a simple query like:
SELECT * FROM users
This will depend on the schema of your database or data warehouse, but this query will return us a list of all our users.
Caveat: For now, every query being synced to destinations must return a unique
id column. If you do not have an
id column, you can alias a column to
id in your SQL query (e.g.
select user_id as id, first_name, last_name).
id 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.
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.
In the next step, we can select which destinations we want to send the query results to.
We can always add multiple destinations, but let's take Hubspot as an example. To set up the connection, we have to map the fields in the query results (from the database / data warehouse) to the fields in Hubspot.
This configuration is specific to each destination that the query results are being sent to. This particular configuration will insert the Hubspot object contacts for each row in the query of users, and map first_name, last_name, email, and location to firstname, lastname, email, and city respectively.
For more information on the configuration of each destination, check out the Destinations section of the documentation.
Lastly, we have to schedule how often the query is run and subsequently synced to your destinations.
Your segment can be synced at per minute, hourly, daily, and weekly intervals.