Hubspot
This connector captures data from a Hubspot account.
Estuary offers a in-house real time version of this connector. For more information take a look at our HubSpot Real-Time docs.
It is available for use in the Flow web application. For local development or open-source workflows, ghcr.io/estuary/source-hubspot:dev
provides the latest version of the connector as a Docker image. You can also follow the link in your browser to see past image versions.
Supported data resources
By default, each resource associated with your Hubspot account is mapped to a Flow collection through a separate binding.
The following data resources are supported for all subscription levels:
- Campaigns
- Companies
- Contact Lists
- Contacts
- Contacts List Memberships
- Deal Pipelines
- Deals
- Email Events
- Engagements
- Engagements Calls
- Engagements Emails
- Engagements Meetings
- Engagements Notes
- Engagements Tasks
- Forms
- Form Submissions
- Line Items
- Owners
- Products
- Property History
- Quotes
- Subscription Changes
- Tickets
- Ticket Pipelines
The following data resources are supported for pro accounts (set Subscription type to pro
in the configuration):
Prerequisites
There are two ways to authenticate with Hubspot when capturing data: using OAuth2 or with a private app access token. Their prerequisites differ.
OAuth is recommended for simplicity in the Flow web app; the access token method is the only supported method using the command line.
Using OAuth2 to authenticate with Hubspot in the Flow web app
- A Hubspot account
Configuring the connector specification manually
-
A Hubspot account
-
The access token for an appropriately configured private app on the Hubspot account.
Setup
To create a private app in Hubspot and generate its access token, do the following.
-
Ensure that your Hubspot user account has super admin privileges.
-
In Hubspot, create a new private app.
-
Name the app "Estuary Flow," or choose another name that is memorable to you.
-
Grant the new app Read access for all available scopes.
-
Copy the access token for use in the connector configuration.
-
Configuration
You configure connectors either in the Flow web app, or by directly editing the catalog specification file. See connectors to learn more about using connectors. The values and specification sample below provide configuration details specific to the Hubspot source connector.
Properties
Endpoint
The following properties reflect the access token authentication method.
Property | Title | Description | Type | Required/Default |
---|---|---|---|---|
/credentials | Private Application | Authenticate with a private app access token | object | Required |
/credentials/access_token | Access Token | HubSpot Access token. | string | Required |
/credentials/credentials_title | Credentials | Name of the credentials set | string | Required, "Private App Credentials" |
/start_date | Start Date | UTC date and time in the format 2017-01-25T00:00:00Z. Any data before this date will not be replicated. | string | Required |
/subscription_type | Your HubSpot account subscription type | Some streams are only available to certain subscription packages, we use this information to select which streams to pull data from. | string | "starter" |
Bindings
Property | Title | Description | Type | Required/Default |
---|---|---|---|---|
/stream | Data resource | Name of the data resource. | string | Required |
/syncMode | Sync Mode | Connection method | string | Required |
Sample
captures:
${PREFIX}/${CAPTURE_NAME}:
endpoint:
connector:
image: ghcr.io/estuary/source-hubspot:dev
config:
credentials:
credentials_title: Private App Credentials
access_token: <secret>
bindings:
- resource:
stream: companies
syncMode: incremental
target: ${PREFIX}/${COLLECTION_NAME}
Your configuration will have many more bindings representing all supported resources in your Hubspot account.