Hubspot
HubSpot is a CRM platform with all the software, integrations, and resources you need to connect your marketing, sales, content management, and customer service.
Authentication methods
Private App
This method uses the Access Token of a private app to authenticate.
To generate an access token, go to:
Settings
Account Setup -> Integrations -> Private Apps
Create a private app, give it any name, logo and description you like (a descriptive name like "Omnata Sync" is best practise)
For the Scopes, check:
crm.import (required for all outbound syncs)
Read and/or Write for each of the objects you're syncing to/from
Inbound Syncs
Hubspot offers direct data sharing to access your data on Snowflake as part of a HubSpot platform add-on called Operations Hub.
If this doesn't suit your budget or use case, Omnata's Hubspot plugin provides inbound syncing to Snowflake via direct API integration.
Supported Sync Strategies
Full Refresh
Incremental
There are two types of incremental sync:
Incremental (standard server-side, where API returns only the data updated or generated since the last sync)
Client-Side Incremental (API returns all available data and connector filters out only new records)
Supported Streams
The following objects are supported:
Campaigns (Client-Side Incremental)
Companies (Incremental)
Contact Lists (Incremental)
Contacts (Incremental)
Deal Pipelines (Client-Side Incremental)
Deals (including Contact associations) (Incremental)
Records that have been deleted (archived) and stored in HubSpot's recycle bin will only be kept for 90 days, see response from HubSpot Team
Deals Archived (including Contact associations) (Incremental)
Email Events (Incremental)
Engagements (Incremental)
Engagements Calls (Incremental)
Engagements Emails (Incremental)
Engagements Meetings (Incremental)
Engagements Notes (Incremental)
Engagements Tasks (Incremental)
Forms (Client-Side Incremental)
Form Submissions (Client-Side Incremental)
Goals (Incremental)
Line Items (Incremental)
Owners (Client-Side Incremental)
Products (Incremental)
Property History (Incremental)
Subscription Changes (Incremental)
Tickets (Incremental)
Ticket Pipelines (Client-Side Incremental)
Workflows (Client-Side Incremental)
Outbound Syncs
Supported Sync Strategies
Create
Upsert
Update
Supported Targets
The following objects are supported:
Contacts
Companies
Deals
Notes
Tickets
Products
Line Items
Quotes
Custom Objects
Associations
Hubspot Associations can be created/updated in a variety of different ways.
When linking to another object, you can use the Hubspot-generated Record ID, or any Alternate ID defined on that object. For example, when uploading Companies, you could link to Contacts via the standard email field or by a custom field which is unique (via the "Require each value for this property to be unique" checkbox).
You can also create a labelled association by providing a mapping for the label.
In each of these cases, you can choose to link to a single object via a numeric/varchar column, or to multiple objects via an array column.
In the below examples, on the association columns are shown for brevity, but they normally accompany the setting of regular field values like first name, last name, email etc.
Same-object unlabelled associations
Examples
CONTACTS source table:
Contact ID | OTHER_CONTACT_IDS |
---|---|
1 | [456,789] |
2 | [100,200,300] |
3 | [111] |
Here, the contacts are being identified via a unique numeric field.
You can mix and match the way you identify them:
Contact ID | OTHER_CONTACT_EMAILS |
---|---|
1 | ['john@gmail.com','susan@outlook.com'] |
2 | null |
3 | ['simon@gmail.com'] |
Same-object labelled associations
CONTACTS source table:
CONTACT_ID | OTHER_CONTACT_ID | OTHER_CONTACT_LABEL |
---|---|---|
39607404151 | 1 | Friend |
39607401002 | 7 | Colleague |
39609321199 | 30 | null |
Here, the associated contacts are being given a label.
If you provide multiple labels, each label will be applied to each association
Different-object unlabelled associations
COMPANIES source table:
COMPANY_DOMAIN | ASSOCIATED_CONTACT_EMAILS |
---|---|
acme.com | ['john@gmail.com','susan@outlook.com'] |
microsoft.com | null |
amazon.com | ['simon@gmail.com'] |
Different-object labelled associations
COMPANIES source table:
COMPANY_DOMAIN | ASSOCIATED_CONTACT_EMAILS | ASSOCIATED_CONTACT_LABEL |
---|---|---|
acme.com | ['john@gmail.com','susan@outlook.com'] | Employee |
microsoft.com | null | null |
amazon.com | ['simon@gmail.com'] | Ex-Employee |
Last updated