Name | Value |
---|---|
Platform | HubSpot |
Auth Type | OAuth |
Direction | Bidirectional |
Tap Repo | https://github.com/hotgluexyz/tap-hubspot-beta |
Target Repo | https://gitlab.com/hotglue/target-hubspot-v2 |
Tap Metrics | Usage: |
Target Metrics | Usage: |
📘 The HubSpot developer account is different from a normal HubSpot account. Make sure to register for a Developer Account or you will not see the Manage App options.To start, create a free HubSpot developer account. This will give you access to create your app, alongside a Hubspot environment to use in your tests. Once logged into the HubSpot developer portal, your home page should show an APPS tab on the top bar. Navigate to the Apps tab or click Manage apps.
https://hotglue.xyz/callback
. Click Create App.
oauth
is required for all integrations.crm.schemas
scopes are required for catalog discovery in hotglue.deal
to another, like a contact
.
In some scenarios, it may be useful to fetch records associated with your selected streams, without fetching the entire associated table.
For example, let’s say you are running an incremental sync on deals. You may want to fetch the contacts and activities associated with the deals in the each sync. You could do this by selecting deals
, contacts
, and activity
-type streams in your field map. Every job would then fetch all incremental updates for all selected streams, and you could reference related records from within your database.
However, if you don’t need to replicate each full stream, you can simplify your integration using fetch_associations
. With fetch_associations
, the tap only fetches relevant records from related tables that you define.
fetch_associations
objectfetch_associations
is an object set in the connector’s config. You can set this via a PATCH to the linkedSource (v1) or linkedConnector (v2) config.
The object contains one or more <ROOT_TABLE>
keys (a stream that must already be selected in the field map), each containing a list of one or more <RELATED_TABLE>
keys (a stream that may or may not be selected in the field map):
fetch_associations
entry for deals. In this case, deals
is the root table selected in our field map, and contacts
and tasks
are the related tables to deals that we want to retrieve:
deals
associations_deals_contacts
associations_deals_tasks
contacts
tasks
deals
contains an incremental sync of deals records. There is no change from normal behavior.
The associations_
tables contain IDs of the deals
from the stream sync, and the IDs of the related contacts
and tasks
records for those deals.
contacts
and tasks
tables contain the related records which are referenced in associations_
tables, with an additional isAssociated
(boolean) column.
<ROOT_TABLE>
keys are explicitly defined in the HubSpot connector:
<RELATED_TABLE>
keys can be any stream key available in Hubspot’s V3 CRM API. This includes custom objects.
contacts
and tasks
are associated with the same root deal
.<ROOT_TABLE>
is not selected in the field map, neither that stream nor the related records will sync. This flag is not a replacement for selecting tables in the field map.fetch_associations
object to a config. You will need to ensure that the <ROOT_TABLE>
and <RELATED_TABLE>
keys are valid, and that your object is formatted as documented.fetch_associations
object. Your PATCH must include the full fetch_associations
object that you expect to sync.Tap Changelog
Version | Notes |
---|---|
v2.9.10 | |
v2.9.9 | |
v2.9.8 | |
v2.9.7 - Fix discover for new scopes | - Updated discover to work if users aren’t granted full schema access to all streams |
v2.9.6 - Add support for companies_properties | Added support for new stream companies_properties based on following HubSpot endpoint: https://legacydocs.hubspot.com/docs/methods/companies/get_company_properties |