How to integrate Hubspot using SSIS

Integrate SSIS and Hubspot
Integrate SSIS and Hubspot

Learn how to quickly and efficiently connect Hubspot with SSIS for smooth data access.

Read and write HubSpot data effortlessly. Integrate, manage, and automate contacts, companies, deals, and tickets — almost no coding required. You can do it all using the high-performance Hubspot Connector for SSIS. We'll walk you through the entire setup.

Ready to dive in? Download the product to jump right in, or follow the step-by-step guide below to see how it works.

Video Tutorial

This video covers the following topics and more, so please watch carefully. After watching the video, follow the steps outlined in this article:

  • How to download and install the required PowerPack for Hubspot integration in SSIS
  • How to configure the connection for Hubspot
  • Features of the ZappySys API Source (Authentication / Query Language / Examples / Driver UI)
  • How to use the Hubspot in SSIS

Prerequisites

Before we begin, make sure the following prerequisites are met:

  1. SSIS designer installed. Sometimes it is referred as BIDS or SSDT (download it from Microsoft).
  2. Basic knowledge of SSIS package development using Microsoft SQL Server Integration Services.
  3. SSIS PowerPack is installed (if you are new to SSIS PowerPack, then get started!).

Read data from Hubspot in SSIS (Export data)

In this section we will learn how to configure and use Hubspot Connector in API Source to extract data from Hubspot.

  1. Begin with opening Visual Studio and Create a New Project.

  2. Select Integration Service Project and in new project window set the appropriate name and location for project. And click OK.

    In the new SSIS project screen you will find the following:

    • SSIS ToolBox on left side bar
    • Solution Explorer and Property Window on right bar
    • Control flow, data flow, event Handlers, Package Explorer in tab windows
    • Connection Manager Window in the bottom
    SSIS Project Screen
    Note: If you don't see ZappySys SSIS PowerPack Task or Components in SSIS Toolbox, please refer to this help link.
  3. Now, Drag and Drop SSIS Data Flow Task from SSIS Toolbox. Double click on the Data Flow Task to see Data Flow designer.

    SSIS Data Flow Task - Drag and Drop
  4. From the SSIS toolbox drag and API Source (Predefined Templates) on the data flow designer surface, and double click on it to edit it:

    SSIS API Source (Predefined Templates) - Drag and Drop
  5. Select New Connection to create a new connection:

    API Source - New Connection
  6. Use a preinstalled Hubspot Connector from Popular Connector List or press Search Online radio button to download Hubspot Connector. Once downloaded simply use it in the configuration:

    Hubspot
    Hubspot Connector Selection
  7. Now it's time to configure authentication. Firstly, configure authentication settings in Hubspot service and then proceed by configuring API Connection Manager. Start by expanding an authentication type:

    Hubspot authentication

    Private apps allow you to use HubSpot's APIs to access specific data from your HubSpot account. You can authorize what each private app can request or change in your account, which will generate an access token that's unique to your app. [API reference]

    Follow these instructions to create a Private app in HubSpot and configure HubSpot authentication in SSIS package or ODBC data source:

    1. First of all, go to HubSpot portal.
    2. Then click Data Management option on the left and then hit Integrations menu item: Go to integrations in HubSpot
    3. Move on by clicking Private Apps menu item and then click Create a private app button to create one: Create private app to get HubSpot data via REST API
    4. Then continue by following the instructions on HubSpot Docs.
    5. Once you create an app, go to SSIS package or ODBC data source and in Private App authentication set these parameters:
      • For AccessToken field use Access token value from the Private app configuration in HubSpot.
    6. Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Private app (Static Access Token) [Http]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    Hubspot
    Private app (Static Access Token) [Http]
    https://api.hubapi.com
    Required Parameters
    AccessToken Fill-in the parameter...
    Optional Parameters
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys Http Connection
    Hubspot authentication

    In HubSpot, a public app is a type of integration that can be installed on customer accounts or listed on the App Marketplace. It requires authentication via OAuth. Once a user installs your app on their HubSpot account, you’ll be able to make API calls to that account using an OAuth access token. [API reference]

    Follow these instructions to create a Public app in HubSpot and configure HubSpot authentication in SSIS package or ODBC data source:

    1. First of all, if you don't have HubSpot Developer's account, register one.
    2. Go to HubSpot and select your Developer account.
    3. Click Apps on the left hand side and then click Create app button to create a Public app: Create public app to get HubSpot data via REST API
    4. Then continue by following the instructions in HubSpot Docs.
      NOTE: If you don't have a working Redirect URL, you can use https://zappysys.com/oauth (it's safe).

    5. Once you create an app, go to SSIS package or ODBC data source and in Public app authentication set these parameters (use values from your Public app configuration in HubSpot):
      • For ClientId field use Client ID value.
      • For ClientSecret field use Client secret value.
      • For Scope field use Scopes values, e.g.:
        accounting
        tickets
        files
        
        crm.lists.read
        crm.lists.write
        
        crm.objects.contacts.read
        crm.objects.contacts.write
        crm.schemas.contacts.read
        
        crm.objects.custom.read
        crm.objects.custom.write
        crm.schemas.custom.read
        
        crm.objects.companies.read
        crm.objects.companies.write
        crm.schemas.companies.read
        
        crm.objects.deals.read
        crm.objects.deals.write
        crm.schemas.deals.read
        
        crm.objects.quotes.read
        crm.objects.quotes.write
        crm.schemas.quotes.read
        
        crm.objects.line_items.read
        crm.objects.line_items.write
        crm.schemas.line_items.read
        
        NOTE: You can use other scopes too, but they must match the scopes defined in your Public app.

      • For ReturnUrl field use one of Redirect URLs.
    6. When you are done with that, click Generate Token button to generate Access and Refresh Tokens.
    7. Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Public app [OAuth]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Press Generate Token button to generate the tokens.
    5. Finally, hit OK button:
    Hubspot
    Public app [OAuth]
    https://api.hubapi.com
    Required Parameters
    UseCustomApp Fill-in the parameter...
    Scope (Must Match with App Scopes) Fill-in the parameter...
    Optional Parameters
    Client ID
    Client Secret
    ReturnUrl
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys OAuth Connection
    Hubspot authentication

    Deprecated authentication method. Use [Private app] instead. [API reference]

    Using HubSpot API key is deprecated method for authentication. Use Private app authentication instead. If you still need one, then follow these instructions to get HubSpot API key:

    • First of all, if you don't have HubSpot Developer's account, register one.
    • Go to HubSpot and select your Developer account.
    • Click Apps on the left hand side and then click Get HubSpot API key button to get one: Get HubSpot API key
    • When a popup appears, click Show Key button and then hit Copy button to copy API key: Use API key to read HubSpot data via REST API
    • Once copy the API key, go to SSIS package or ODBC data source and use it in API Key authentication configuration:
      • Paste it in ApiKey parameter field.
    • Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Developer API key (Deprecated) [Http]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    Hubspot
    Developer API key (Deprecated) [Http]
    https://api.hubapi.com
    Required Parameters
    ApiKey Fill-in the parameter...
    Optional Parameters
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys Http Connection
  8. Select the desired endpoint, change/pass the properties values, and click on Preview Data button to make the API call.

    API Source - Hubspot
    Read and write HubSpot data effortlessly. Integrate, manage, and automate contacts, companies, deals, and tickets — almost no coding required.
    API Source - Select Endpoint

  9. That's it! We are done! Just in a few clicks we configured the call to Hubspot using Hubspot Connector.

    You can load the source data into your desired destination using the Upsert Destination , which supports SQL Server, PostgreSQL, and Amazon Redshift. We also offer other destinations such as CSV , Excel , Azure Table , Salesforce , and more . You can check out our SSIS PowerPack Tasks and components for more options. (*loaded in Trash Destination)

    Execute Package - Reading data from Hubspot and load into target

Write data to Hubspot using SSIS (Import data)

In this section we will learn how to configure and use Hubspot Connector in the API Destination to write data to Hubspot.

Video tutorial

This video covers following and more so watch carefully. After watching this video follow the steps described in this article.

  • How to download SSIS PowerPack for Hubspot integration in SSIS
  • How to configure connection for Hubspot
  • How to write or lookup data to Hubspot
  • Features about SSIS API Destination
  • Using Hubspot Connector in SSIS

Step-by-step instructions

In upper section we learned how to read data, now in this section we will learn how to configure Hubspot in the API Source to POST data to the Hubspot.

  1. Begin with opening Visual Studio and Create a New Project.

  2. Select Integration Service Project and in new project window set the appropriate name and location for project. And click OK.

    In the new SSIS project screen you will find the following:

    • SSIS ToolBox on left side bar
    • Solution Explorer and Property Window on right bar
    • Control flow, data flow, event Handlers, Package Explorer in tab windows
    • Connection Manager Window in the bottom
    SSIS Project Screen
    Note: If you don't see ZappySys SSIS PowerPack Task or Components in SSIS Toolbox, please refer to this help link.
  3. Now, Drag and Drop SSIS Data Flow Task from SSIS Toolbox. Double click on the Data Flow Task to see Data Flow designer.

    SSIS Data Flow Task - Drag and Drop
  4. Read the data from the source, using any desired source component. You can even make an API call using the ZappySys JSON/XML/API Source and read data from there. In this example, we will use an OLE DB Source component to read real-time data from a SQL Server database.

  5. From the SSIS Toolbox drag and drop API Destination (Predefined Templates) on the Data Flow Designer surface and connect source component with it, and double click to edit it.
    SSIS API Destination (Predefined Templates) - Drag and Drop

  6. Select New Connection to create a new connection:

    API Destination - Hubspot
    Read and write HubSpot data effortlessly. Integrate, manage, and automate contacts, companies, deals, and tickets — almost no coding required.
    API Destination - Hubspot

  7. To configure the Hubspot connector, choose one of the following methods:

    • Choose from Popular Connector List: Select a pre-installed service directly from the dropdown menu.
    • Search Online: Use this to find and download a new connector file to your computer.
    • Use Saved/Downloaded File: Once the file is downloaded, browse your local drive to load it into the configuration.

    After that, just click Continue >>:

    Hubspot
    API Destination -
  8. Proceed with selecting the desired Authentication Type. Then select API Base URL (in most cases default one is the right one). Finally, fill in all the required parameters and set optional parameters if needed. You may press a link Steps to Configure which will help set certain parameters. More info is available in Authentication section.

    Hubspot authentication

    Private apps allow you to use HubSpot's APIs to access specific data from your HubSpot account. You can authorize what each private app can request or change in your account, which will generate an access token that's unique to your app. [API reference]

    Follow these instructions to create a Private app in HubSpot and configure HubSpot authentication in SSIS package or ODBC data source:

    1. First of all, go to HubSpot portal.
    2. Then click Data Management option on the left and then hit Integrations menu item: Go to integrations in HubSpot
    3. Move on by clicking Private Apps menu item and then click Create a private app button to create one: Create private app to get HubSpot data via REST API
    4. Then continue by following the instructions on HubSpot Docs.
    5. Once you create an app, go to SSIS package or ODBC data source and in Private App authentication set these parameters:
      • For AccessToken field use Access token value from the Private app configuration in HubSpot.
    6. Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Private app (Static Access Token) [Http]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    Hubspot
    Private app (Static Access Token) [Http]
    https://api.hubapi.com
    Required Parameters
    AccessToken Fill-in the parameter...
    Optional Parameters
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys Http Connection
    Hubspot authentication

    In HubSpot, a public app is a type of integration that can be installed on customer accounts or listed on the App Marketplace. It requires authentication via OAuth. Once a user installs your app on their HubSpot account, you’ll be able to make API calls to that account using an OAuth access token. [API reference]

    Follow these instructions to create a Public app in HubSpot and configure HubSpot authentication in SSIS package or ODBC data source:

    1. First of all, if you don't have HubSpot Developer's account, register one.
    2. Go to HubSpot and select your Developer account.
    3. Click Apps on the left hand side and then click Create app button to create a Public app: Create public app to get HubSpot data via REST API
    4. Then continue by following the instructions in HubSpot Docs.
      NOTE: If you don't have a working Redirect URL, you can use https://zappysys.com/oauth (it's safe).

    5. Once you create an app, go to SSIS package or ODBC data source and in Public app authentication set these parameters (use values from your Public app configuration in HubSpot):
      • For ClientId field use Client ID value.
      • For ClientSecret field use Client secret value.
      • For Scope field use Scopes values, e.g.:
        accounting
        tickets
        files
        
        crm.lists.read
        crm.lists.write
        
        crm.objects.contacts.read
        crm.objects.contacts.write
        crm.schemas.contacts.read
        
        crm.objects.custom.read
        crm.objects.custom.write
        crm.schemas.custom.read
        
        crm.objects.companies.read
        crm.objects.companies.write
        crm.schemas.companies.read
        
        crm.objects.deals.read
        crm.objects.deals.write
        crm.schemas.deals.read
        
        crm.objects.quotes.read
        crm.objects.quotes.write
        crm.schemas.quotes.read
        
        crm.objects.line_items.read
        crm.objects.line_items.write
        crm.schemas.line_items.read
        
        NOTE: You can use other scopes too, but they must match the scopes defined in your Public app.

      • For ReturnUrl field use one of Redirect URLs.
    6. When you are done with that, click Generate Token button to generate Access and Refresh Tokens.
    7. Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Public app [OAuth]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Press Generate Token button to generate the tokens.
    5. Finally, hit OK button:
    Hubspot
    Public app [OAuth]
    https://api.hubapi.com
    Required Parameters
    UseCustomApp Fill-in the parameter...
    Scope (Must Match with App Scopes) Fill-in the parameter...
    Optional Parameters
    Client ID
    Client Secret
    ReturnUrl
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys OAuth Connection
    Hubspot authentication

    Deprecated authentication method. Use [Private app] instead. [API reference]

    Using HubSpot API key is deprecated method for authentication. Use Private app authentication instead. If you still need one, then follow these instructions to get HubSpot API key:

    • First of all, if you don't have HubSpot Developer's account, register one.
    • Go to HubSpot and select your Developer account.
    • Click Apps on the left hand side and then click Get HubSpot API key button to get one: Get HubSpot API key
    • When a popup appears, click Show Key button and then hit Copy button to copy API key: Use API key to read HubSpot data via REST API
    • Once copy the API key, go to SSIS package or ODBC data source and use it in API Key authentication configuration:
      • Paste it in ApiKey parameter field.
    • Done! Now you are ready to use HubSpot Connector!
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Developer API key (Deprecated) [Http]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    Hubspot
    Developer API key (Deprecated) [Http]
    https://api.hubapi.com
    Required Parameters
    ApiKey Fill-in the parameter...
    Optional Parameters
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ZappySys Http Connection

  9. Select the desired endpoint, change/pass the properties values, and go to the Mappings tab to map the columns.

    API Destination - Hubspot
    Read and write HubSpot data effortlessly. Integrate, manage, and automate contacts, companies, deals, and tickets — almost no coding required.
    API Destination - Hubspot

  10. Finally, map the desired columns:

    API Destination - Hubspot
    Read and write HubSpot data effortlessly. Integrate, manage, and automate contacts, companies, deals, and tickets — almost no coding required.
    API Destination - Hubspot

  11. That's it; we successfully configured the POST API Call. In a few clicks we configured the Hubspot API call using ZappySys Hubspot Connector

    Execute Package

Load Hubspot data into SQL Server using Upsert Destination (Insert or Update)

Once you configured the data source, you can load Hubspot data into SQL Server using Upsert Destination.

Upsert Destination can merge or synchronize source data with the target table. It supports Microsoft SQL Server, PostgreSQL, and Redshift databases as targets. Upsert Destination also supports very fast bulk upsert operation along with bulk delete.

Upsert operation - a database operation which performs INSERT or UPDATE SQL commands based on record's existence condition in the target table. It inserts records that don't have matching records in the target table or updates them, if they do, by matching them by key columns.

Upsert Destination supports INSERT, UPDATE, and DELETE operations, so it is similar to SQL Server's MERGE command, except it can be used directly in SSIS package.

  1. From the SSIS Toolbox drag-and-drop Upsert Destination component onto the Data Flow designer background.

  2. Connect your SSIS source component to Upsert Destination.

  3. Double-click on Upsert Destination component to open configuration window.

  4. Start by selecting the Action from the list.

  5. Next, select the desired target connection or create one by clicking <New [provider] Connection> menu item from the Target Connection dropdown.

  6. Then select a table from the Target Table list or click New button to create a new table based on the source columns.

  7. Continue by checking Insert and Update options according to your scenario (e.g. if Update option is unchecked, no updates will be made).

  8. Finally, click Map All button to map all columns and then select the Key columns to match the columns on:

    Configure SSIS Upsert Destination component to merge data with SQL Server, PostgreSQL, or Redshift table
  9. Click OK to save the configuration.

  10. Run the package and Hubspot data will be merged with the target table in SQL Server, PostgreSQL, or Redshift:

    Execute Package - Reading data from API Source and load into target
  11. Done!

Deploy and schedule SSIS package

After you are done creating SSIS package, most likely, you want to deploy it to SQL Server Catalog and run it periodically. Just follow the instructions in this article:

Running SSIS package in Azure Data Factory (ADF)

To use SSIS PowerPack in ADF, you must first prepare Azure-SSIS Integration Runtime. Follow this link for detailed instructions:

Supported Hubspot Connector actions

Got a specific use case in mind? We've mapped out exactly how to perform a variety of essential Hubspot operations directly in SSIS, so you don't have to figure out the setup from scratch. Check out the step-by-step guides below:

Conclusion

In this article we showed you how to connect to Hubspot in SSIS and integrate data without writing complex code — all of this was powered by Hubspot Connector.

Download SSIS PowerPack now or ping us via chat if you have any questions or are looking for a specific feature (you can also reach out to us by submitting a ticket):

Explore SSIS connectors

All
Big Data & NoSQL
Database
CRM & ERP
Marketing
Collaboration
Cloud Storage
Reporting
Commerce
API & Files

More Hubspot integrations

All
Data Integration
Database
BI & Reporting
Productivity
Programming Languages
Automation & Scripting
ODBC applications