{"id":1175,"date":"2017-06-02T15:31:16","date_gmt":"2017-06-02T15:31:16","guid":{"rendered":"http:\/\/zappysys.com\/blog\/?p=1175"},"modified":"2025-03-19T05:24:14","modified_gmt":"2025-03-19T05:24:14","slug":"get-data-from-hubspot-api-with-ssis","status":"publish","type":"post","link":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/","title":{"rendered":"How to get data from HubSpot API with SSIS"},"content":{"rendered":"<h2>Introduction<\/h2>\n<div class=\"su-note\"  style=\"border-color:#e5de9d;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#FFF8B7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><strong>UPDATE:<\/strong>\u00a0ZappySys has released a brand new <a href=\"https:\/\/zappysys.com\/api\/integration-hub\/hubspot-connector\/\">API Connector for Hubspot Connector<\/a> which makes it much simpler to\u00a0<strong>Read\/Write Hubspot Data in SSIS<\/strong> compared to the steps listed in this article. You can still use steps from this article but if you are new to API or want to avoid learning curve with API then use newer approach.<\/p>\n<p>Please visit <a href=\"https:\/\/zappysys.com\/api\/integration-hub\/\">this page to see all<\/a>\u00a0Pre-Configured ready to use API connectors which you can use in <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-api-source\/\">SSIS API Source<\/a> \/ <a href=\"https:\/\/zappysys.com\/products\/ssis-powerpack\/ssis-api-destination\/\">SSIS API Destination<\/a> OR\u00a0<a href=\"https:\/\/zappysys.com\/products\/odbc-powerpack\/odbc-api-driver\/\">API ODBC Driver<\/a> (for non-SSIS Apps such as Excel, Power BI, Informatica).<\/p>\n<\/div><\/div>\n<p><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1862 alignleft\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\" alt=\"\" width=\"110\" height=\"110\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png 180w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2-150x150.png 150w\" sizes=\"(max-width: 110px) 100vw, 110px\" \/><\/a><a href=\"http:\/\/www.hubspot.com\" target=\"_blank\" rel=\"noopener\">HubSp<\/a><a href=\"http:\/\/www.hubspot.com\" target=\"_blank\" rel=\"noopener\">ot<\/a> is a popular platform where CRM, Marketing and Sales meet in one place. It&#8217;s a good piece of service, yet sometimes you need to integrate it with your other system.\u00a0In this article you will learn how to pull contacts from\u00a0<a href=\"https:\/\/developers.hubspot.com\/docs\/overview\" target=\"_blank\" rel=\"noopener\">HubSpot API<\/a> and load them into a SQL Server Database using SSIS and <a href=\"\/\/zappysys.com\/products\/ssis-powerpack\/\">ZappySys SSIS PowerPack<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<h2>Prerequisites<\/h2>\n<ol>\n<li>HubSpot Account registered (an account you will want to get data from).<\/li>\n<li>SSIS designer installed.\u00a0Sometimes it is referred as BIDS or SSDT (<a href=\"https:\/\/msdn.microsoft.com\/en-us\/mt186501\" target=\"_blank\" rel=\"noopener\">download it from Microsoft site<\/a>).<\/li>\n<li>Basic knowledge of SSIS package\u00a0development using\u00a0<em>Microsoft SQL Server Integration Services<\/em>.<\/li>\n<li>An existing SQL Server Database and table created (we will use it to load data into).<\/li>\n<li><em>ZappySys SSIS PowerPack<\/em> installed.<\/li>\n<\/ol>\n<h2>Various methods to call HubSpot API<\/h2>\n<p>HubSpot API supports two kinds of authentication:<\/p>\n<ol>\n<li>OAuth 2.0.<\/li>\n<li>API Key in URL.<\/li>\n<\/ol>\n<p><em>API Key in URL<\/em>\u00a0is simple, with minimal configuration, but it ought to be used only for development and testing purposes.<\/p>\n<p>In this\u00a0tutorial we will show how to authenticate using <em>OAuth 2.0<\/em>, which you should use in your production environment.<\/p>\n<h2>Step-by-Step <span id=\"Step-By-StepGet_data_from_HubSpot_REST_API\"><span id=\"Step-By-Step_8211_Call_Amazon_MWS_API_using_SSIS\">\u2013\u00a0<\/span><\/span>Get data from HubSpot API into SQL Server database<\/h2>\n<ol>\n<li>Create HubSpot Developer Account (<a href=\"https:\/\/app.hubspot.com\/signup\/developers\" target=\"_blank\" rel=\"noopener\">https:\/\/app.hubspot.com\/signup\/developers<\/a>). It&#8217;s an account you will need to use to create HubSpot Apps.<\/li>\n<li>Login with your HubSpot Developer Account (<a href=\"https:\/\/app.hubspot.com\/login\" target=\"_blank\" rel=\"noopener\">https:\/\/app.hubspot.com\/login<\/a>).<\/li>\n<li>Select your newly created HubSpot Developer Account:\n<div id=\"attachment_1205\" style=\"width: 460px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-developer-account1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1205\" class=\"wp-image-1205 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-developer-account1.png\" alt=\"Logging into HubSpot - select HubSpot developer account\" width=\"450\" height=\"149\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-developer-account1.png 450w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-developer-account1-300x99.png 300w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/a><p id=\"caption-attachment-1205\" class=\"wp-caption-text\">Logging into HubSpot &#8211; Select HubSpot developer account<\/p><\/div>\n<div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: Account name should contain &#8220;hubspot-developers&#8221; text.<\/div><\/div><\/li>\n<li>Register HubSpot OAuth App for REST API Call for use with OAuth 2.0 by simply pressing &#8220;Create application&#8221; button:\n<div id=\"attachment_1200\" style=\"width: 398px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/create-hubspot-application.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1200\" class=\"wp-image-1200\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/create-hubspot-application.png\" alt=\"Register HubSpot OAuth App for REST API Call for use with OAuth 2.0 \" width=\"388\" height=\"339\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/create-hubspot-application.png 511w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/create-hubspot-application-300x262.png 300w\" sizes=\"(max-width: 388px) 100vw, 388px\" \/><\/a><p id=\"caption-attachment-1200\" class=\"wp-caption-text\">Register HubSpot OAuth App for REST API Call for use with OAuth 2.0<\/p><\/div><\/li>\n<li>Name the application (e.g. &#8220;ContactsApp&#8221;) and choose &#8220;Private&#8221; to make the application\u00a0hidden from the outer and dangerous world \ud83d\ude42\n<div id=\"attachment_1201\" style=\"width: 395px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/name-hubspot-application.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1201\" class=\"wp-image-1201\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/name-hubspot-application.png\" alt=\"Name HubSpot REST API App which will be used from within SSIS\" width=\"385\" height=\"333\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/name-hubspot-application.png 448w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/name-hubspot-application-300x259.png 300w\" sizes=\"(max-width: 385px) 100vw, 385px\" \/><\/a><p id=\"caption-attachment-1201\" class=\"wp-caption-text\">Name HubSpot REST API App which will be used from within SSIS<\/p><\/div><\/li>\n<li>Press &#8220;Edit&#8221; button on\u00a0the app you just created.<\/li>\n<li>Write down <em>Client ID<\/em> and <em>Client secret<\/em>. We will need them later for authentication:\n<div id=\"attachment_1203\" style=\"width: 867px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/note-hubspot-client-id-and-client-secret.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1203\" class=\"wp-image-1203\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/note-hubspot-client-id-and-client-secret-1024x458.png\" alt=\"Write down Client ID and Client Secret which\u00a0will be used in OAuth Connection SSIS component\" width=\"857\" height=\"383\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/note-hubspot-client-id-and-client-secret-1024x458.png 1024w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/note-hubspot-client-id-and-client-secret-300x134.png 300w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/note-hubspot-client-id-and-client-secret.png 1090w\" sizes=\"(max-width: 857px) 100vw, 857px\" \/><\/a><p id=\"caption-attachment-1203\" class=\"wp-caption-text\">Write down Client ID and Client Secret which\u00a0will be used in OAuth Connection SSIS component<\/p><\/div><\/li>\n<li>Open <em>SSIS Designer<\/em> and create a new package.<\/li>\n<li>Drag a new <em>Data Flow <\/em>task from <em>SSIS Toolbox<\/em> into the\u00a0<em><em>Control Flow:<br \/>\n<\/em><\/em><\/p>\n<div id=\"attachment_8028\" style=\"width: 470px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8028\" class=\"size-full wp-image-8028\" src=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task.png\" alt=\"\" width=\"460\" height=\"155\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task.png 460w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2019\/02\/drag-and-drop-data-flow-task-300x101.png 300w\" sizes=\"(max-width: 460px) 100vw, 460px\" \/><p id=\"caption-attachment-8028\" class=\"wp-caption-text\">Dragging and dropping Data Flow Task into Control Flow<\/p><\/div><\/li>\n<li>Edit<em> Data Flow <\/em>task by double clicking<em>. <\/em>Then drag <em>ZS JSON\u00a0Source<\/em>\u00a0and <em>OLE DB Destination<\/em> components from <em>SSIS Toolbox <\/em>into the<em>\u00a0Data Flow,\u00a0<\/em>but don&#8217;t connect them yet:<em><em><br \/>\n<\/em><\/em><\/p>\n<div id=\"attachment_1207\" style=\"width: 598px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/drag-json-source-into-data-flow.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1207\" class=\"wp-image-1207 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/drag-json-source-into-data-flow.png\" alt=\"Drag ZappySys JSON Source SSIS component into the Data Flow\" width=\"588\" height=\"200\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/drag-json-source-into-data-flow.png 588w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/drag-json-source-into-data-flow-300x102.png 300w\" sizes=\"(max-width: 588px) 100vw, 588px\" \/><\/a><p id=\"caption-attachment-1207\" class=\"wp-caption-text\">Drag ZappySys JSON Source SSIS component into the Data Flow<\/p><\/div><\/li>\n<li>Start editing <em>JSON Source<\/em> component:\n<ol>\n<li>Set <em>Access Mode<\/em> to <em>File path or web URL<\/em>.<\/li>\n<li>Set <em>Web URL<\/em> to\u00a0<span class=\"decode:true crayon-inline\">https:\/\/api.hubapi.com\/contacts\/v1\/lists\/all\/contacts\/all?count=100<\/span><em><em>.<br \/>\n<\/em><\/em><div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: We are adding URL parameter with value <span class=\"lang:default decode:true crayon-inline\">?count=100<\/span>, because by default HubSpot API returns 20 contacts and we want to maximize result set and minimize the number of web requests.<\/div><\/div><\/li>\n<li>Press <em>Select Filter <\/em>and select contacts node or simply enter <span class=\"lang:default decode:true crayon-inline\">$.contacts[*]<\/span>\u00a0\u00a0into the text box<em>.<\/em><\/li>\n<li>Check <em>Use Credentials<\/em> checkbox.<\/li>\n<li>Select <em>&lt;New ZS-OAUTH Connection&gt;<\/em> menu item to create a new\u00a0connection:\n<div id=\"attachment_1209\" style=\"width: 836px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/edit-json-source-for-getting-data-from-hubspot.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1209\" class=\"wp-image-1209 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/edit-json-source-for-getting-data-from-hubspot.png\" alt=\"JSON Source SSIS component configuration \u2013 Get data from HubSpot REST API using OAuth authentication\" width=\"826\" height=\"733\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/edit-json-source-for-getting-data-from-hubspot.png 826w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/edit-json-source-for-getting-data-from-hubspot-300x266.png 300w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><\/a><p id=\"caption-attachment-1209\" class=\"wp-caption-text\">JSON Source SSIS component configuration \u2013 Get data from HubSpot API using OAuth authentication<\/p><\/div><\/li>\n<\/ol>\n<\/li>\n<li>Configure OAuth 2.0 connection for HubSpot API:\n<ol>\n<li>Select <em>HubSpot<\/em> as <em>OAuth Provider<\/em>.<\/li>\n<li>Select &#8220;Use Custom OAuth (App created by you)&#8221; option.<br \/>\n<div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: You can also use Default OAuth App option for a quick test. Select it and press &#8220;<em>Generate Token<\/em>&#8221; button after you enter the scope.<\/div><\/div><\/li>\n<li>Paste <em>Client Id<\/em>\u00a0and\u00a0<em>Client Secret<\/em>\u00a0you also saved in Step #7.<\/li>\n<li>Input <span class=\"lang:default decode:true crayon-inline\">contacts<\/span>\u00a0as our scope.<\/li>\n<li>Finally, press &#8220;<em>Generate Token&#8221;<\/em>\u00a0button:\n<div id=\"attachment_1308\" style=\"width: 781px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/configure-ssis-oauth-connection-for-hubspot-api.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1308\" class=\"wp-image-1308 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/configure-ssis-oauth-connection-for-hubspot-api.png\" alt=\"OAuth Connection SSIS component configuration - Connect to HubSpot API using OAuth 2.0\" width=\"771\" height=\"697\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/configure-ssis-oauth-connection-for-hubspot-api.png 771w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/configure-ssis-oauth-connection-for-hubspot-api-300x271.png 300w\" sizes=\"(max-width: 771px) 100vw, 771px\" \/><\/a><p id=\"caption-attachment-1308\" class=\"wp-caption-text\">OAuth Connection SSIS component configuration &#8211; Connect to HubSpot API using OAuth 2.0<\/p><\/div><\/li>\n<\/ol>\n<\/li>\n<li>Select your <span style=\"text-decoration: underline;\">ordinary<\/span> HubSpot account you want to get contacts from:\n<div id=\"attachment_1212\" style=\"width: 638px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-ordinary-account.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1212\" class=\"wp-image-1212 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-ordinary-account.png\" alt=\"OAuth Connection SSIS component configuration - Select a HubSpot account to get data from\" width=\"628\" height=\"385\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-ordinary-account.png 628w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/select-hubspot-ordinary-account-300x184.png 300w\" sizes=\"(max-width: 628px) 100vw, 628px\" \/><\/a><p id=\"caption-attachment-1212\" class=\"wp-caption-text\">OAuth Connection SSIS component configuration &#8211; Select a HubSpot account to get data from<\/p><\/div>\n<div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: Account name should NOT\u00a0contain &#8220;hubspot-developers&#8221; text.<\/div><\/div><\/li>\n<li>Grant access to your HubSpot App:\n<div id=\"attachment_1214\" style=\"width: 818px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/grant-access-to-hubspot-app.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1214\" class=\"wp-image-1214 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/grant-access-to-hubspot-app-e1496844506831.png\" alt=\"OAuth Connection SSIS component configuration - Grant access to HubSpot REST API App\" width=\"808\" height=\"364\" \/><\/a><p id=\"caption-attachment-1214\" class=\"wp-caption-text\">OAuth Connection SSIS component configuration &#8211; Grant access to HubSpot API App<\/p><\/div><\/li>\n<li>You will get a prompt to save <em>Access<\/em> and <em>Refresh<\/em> tokens to a backup file. Press &#8220;Yes&#8221; to save them.<br \/>\n<div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: You will need to pass <span class=\"lang:default decode:true crayon-inline\">Refresh Token<\/span>\u00a0as the parameter, when you run the package in another machine. Check <em>Deployment to Production<\/em> section\u00a0for more info.<\/div><\/div><\/li>\n<li>Configure HubSpot API pagination\n<div>\n<ol>\n<li>Set <em>Next Link\/Cursor Expression<\/em>\u00a0to <span class=\"lang:default decode:true crayon-inline \">$.vid-offset<\/span>\u00a0\u00a0by pressing &#8220;&#8230;&#8221; button or simply pasting the value into the text box.<\/li>\n<li>In the same way set <em>Stop\u00a0Indicator\/Attribute<\/em> to\u00a0<span class=\"lang:default decode:true crayon-inline\">$.has-more<\/span>.<\/li>\n<li>Input\u00a0<span class=\"lang:default decode:true crayon-inline \">false<\/span>\u00a0as <em>Stop indicator value\/Regular expression<\/em>.<\/li>\n<li>Set <em>Suffix for Next Url<\/em> to <span class=\"lang:default decode:true crayon-inline\">&amp;vidOffset=&lt;%nextlink%&gt;<\/span>.\n<div id=\"attachment_1236\" style=\"width: 836px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-pagination-configuration-for-hubspot-rest-api.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1236\" class=\"wp-image-1236 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-pagination-configuration-for-hubspot-rest-api.png\" alt=\"JSON Source SSIS component pagination configuration for HubSpot REST API call\" width=\"826\" height=\"733\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-pagination-configuration-for-hubspot-rest-api.png 826w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-pagination-configuration-for-hubspot-rest-api-300x266.png 300w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><\/a><p id=\"caption-attachment-1236\" class=\"wp-caption-text\">JSON Source SSIS component pagination configuration for HubSpot API call<\/p><\/div><\/li>\n<\/ol>\n<\/div>\n<\/li>\n<li>Press &#8220;Preview&#8221; button to&#8230; well, obviously to preview the results \ud83d\ude42\n<div id=\"attachment_1306\" style=\"width: 836px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-data-preview-for-hubspot-api-data.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1306\" class=\"wp-image-1306 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-data-preview-for-hubspot-api-data.png\" alt=\"JSON Source SSIS component data preview of HubSpot API call result\" width=\"826\" height=\"272\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-data-preview-for-hubspot-api-data.png 826w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/ssis-json-source-data-preview-for-hubspot-api-data-300x99.png 300w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><\/a><p id=\"caption-attachment-1306\" class=\"wp-caption-text\">JSON Source SSIS component data preview of HubSpot API call result<\/p><\/div><\/li>\n<li>Close &#8220;Data Preview&#8221; dialog and click &#8220;OK&#8221; button to save and close <em>JSON Source <\/em>component.<\/li>\n<li>A\u00a0dialog <em>Metadata Scan Options<\/em>\u00a0should appear, to which you should respond &#8220;Ok&#8221; \ud83d\ude42<\/li>\n<li>Now you can connect <em>JSON Source<\/em> component with <em><em>OLE DB Destination:<br \/>\n<\/em><\/em><\/p>\n<div id=\"attachment_1243\" style=\"width: 319px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/connect-ssis-json-source-for-hubspot-rest-api-with-ole-db-destination1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1243\" class=\"wp-image-1243 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/connect-ssis-json-source-for-hubspot-rest-api-with-ole-db-destination1.png\" alt=\"Connect JSON Source SSIS component with OLE DB Destination for HubSpot data.\" width=\"309\" height=\"252\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/connect-ssis-json-source-for-hubspot-rest-api-with-ole-db-destination1.png 309w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/connect-ssis-json-source-for-hubspot-rest-api-with-ole-db-destination1-300x245.png 300w\" sizes=\"(max-width: 309px) 100vw, 309px\" \/><\/a><p id=\"caption-attachment-1243\" class=\"wp-caption-text\">Connect JSON Source SSIS component with OLE DB Destination for HubSpot data.<\/p><\/div><\/li>\n<li>Now modify <em>OLE DB Destination\u00a0<\/em>to have a connection to a <em>SQL Server<\/em> and point to a table, where you want\u00a0contacts to be stored.<\/li>\n<li>It&#8217;s time to map the columns of <em>JSON Source<\/em> with\u00a0destination table columns. With your mouse simply connect corresponding columns or\u00a0simply map <em>Input Column<\/em> with <em>Destination Column<\/em>. Press &#8220;OK&#8221; to close the window.\n<div id=\"attachment_1244\" style=\"width: 852px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/map-ssis-json-source-columns-with-hubspot-destination-table.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1244\" class=\"wp-image-1244 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/map-ssis-json-source-columns-with-hubspot-destination-table.png\" alt=\"Map JSON Source SSIS component columns with destination table columns you will store HubSpot data in\" width=\"842\" height=\"714\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/map-ssis-json-source-columns-with-hubspot-destination-table.png 842w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/map-ssis-json-source-columns-with-hubspot-destination-table-300x254.png 300w\" sizes=\"(max-width: 842px) 100vw, 842px\" \/><\/a><p id=\"caption-attachment-1244\" class=\"wp-caption-text\">Map JSON Source SSIS component columns with destination table columns you will store HubSpot data in<\/p><\/div><\/li>\n<li>Finally, funtime! Press &#8220;F5&#8221; to execute the package. You should see a similar view as below. The number you see is the number of contacts were loaded from HubSpot API to your table:\n<div id=\"attachment_1247\" style=\"width: 1008px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1247\" class=\"wp-image-1247 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/how-to-get-hubspot-rest-api-data-with-ssis-final-result.png\" alt=\"The result of getting HubSpot REST API data with SSIS\" width=\"998\" height=\"255\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/how-to-get-hubspot-rest-api-data-with-ssis-final-result.png 998w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/how-to-get-hubspot-rest-api-data-with-ssis-final-result-300x77.png 300w\" sizes=\"(max-width: 998px) 100vw, 998px\" \/><p id=\"caption-attachment-1247\" class=\"wp-caption-text\">The result of getting HubSpot API data with SSIS<\/p><\/div><\/li>\n<\/ol>\n<h2>API Rate Limit (Throttling)<\/h2>\n<p><a href=\"https:\/\/developers.hubspot.com\/apps\/api_guidelines\" target=\"_blank\" rel=\"noopener\">HubSpot places limits on using its API<\/a>. Basically, it doesn&#8217;t allow you to make endless number of calls per second. Also it has a ceiling for requests made per day. So if you have paging enabled in <em>JSON Source<\/em> component, it will\u00a0make as many requests as it has to retrieve all data. And in this step you may get an error, telling that you exceeded calling rate limit of the API. To avoid that, simply go to the\u00a0<em>Throttling<\/em> tab and set the amount of milliseconds component has to sleep after making each call:<\/p>\n<div id=\"attachment_1294\" style=\"width: 674px\" class=\"wp-caption alignnone\"><a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-calls-throttling.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1294\" class=\"wp-image-1294 size-full\" src=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-calls-throttling.png\" alt=\"HubSpot API calls throttling configuration\" width=\"664\" height=\"130\" srcset=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-calls-throttling.png 664w, https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-calls-throttling-300x59.png 300w\" sizes=\"(max-width: 664px) 100vw, 664px\" \/><\/a><p id=\"caption-attachment-1294\" class=\"wp-caption-text\">HubSpot API calls throttling configuration<\/p><\/div>\n<h2><span id=\"Making_things_Dynamic_eg_URL\">Making things Dynamic (e.g. URL)<\/span><\/h2>\n<p>The URL we used (<a href=\"https:\/\/api.hubapi.com\/contacts\/v1\/lists\/all\/contacts\/all\">https:\/\/api.hubapi.com\/contacts\/v1\/lists\/all\/contacts\/all<\/a>)\u00a0in addition to <span class=\"lang:default decode:true crayon-inline \">count<\/span>\u00a0parameter, has others as well. Let&#8217;s say in some scenarios you want to fetch list memberships \u00a0for contacts, so you must include <span class=\"lang:default decode:true crayon-inline \">&amp;showListMemberships=true<\/span>\u00a0 in the URL as well. To make things more generic, instead of using hard-coded <span class=\"lang:default decode:true crayon-inline\">true<\/span>\u00a0value, you can use SSIS variables, then the URL will look like this:<\/p>\n<pre class=\"lang:default decode:true\">https:\/\/api.hubapi.com\/contacts\/v1\/lists\/all\/contacts\/all?showListMemberships={{User::ShowMemberships}}<\/pre>\n<h2>Common\u00a0Errors<\/h2>\n<p>For detailed instruction to fix common metadata related errors <a href=\"\/\/zappysys.com\/blog\/handling-ssis-component-metadata-issues\/\" target=\"_blank\" rel=\"noopener\">read this article<\/a>.<\/p>\n<p><strong>Truncation related error<\/strong><\/p>\n<p>Most common error you may face when you run SSIS Package is truncation error. During design time only 300 rows scanned to detect datatype but at runtime you may extract far more records than 300. So its possible that you will get longer strings than initially expected. If you get error just copy that to notepad and read error carefully. It will explain the steps needed to fix the problem. Basically you can edit Columns on JSON Source UI &gt; Change Data Length or Datatype (if you need more than 4000 chars change to the type to DT_NTEXT and click on Column Name cell to save change). After you edit default settings then make sure to check Lock option (found all on the right side in same row).<\/p>\n<p><strong>Authentication related error (happens when you run package from SQL Job Agent)<\/strong><\/p>\n<p>So many times when you run from Visual Studio it works fine but when you deploy to Production and run from\u00a0SQL Job it fails. If this is your issue then check you passing Token (i.e. Password Property of HTTP connection) using\u00a0some sort of parameter approach (e.g. from command line or from config file). By default password is encrypted using your account so when you run it from SQL Job it will fail to decrypt it. See more on <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/integration-services\/security\/access-control-for-sensitive-data-in-packages\" target=\"_blank\" rel=\"noopener\">Package Protection Level<\/a>.<\/p>\n<h2><a name=\"deployment\"><\/a>Deployment to Production<\/h2>\n<p>When you are ready to deploy the package to Production\u00a0consider passing Refresh Tokens and other sensitive data as passwords via SSIS parameters. In this way you don\u2019t face authentication related error described in above section.\u00a0See more on <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/integration-services\/security\/access-control-for-sensitive-data-in-packages\" target=\"_blank\" rel=\"noopener\">Package Protection Level<\/a>.<\/p>\n<h2>Download Sample Package<\/h2>\n<p>Be sure to download a <a href=\"\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/Get-data-from-HubSpot-API-with-SSIS.zip\">sample SQL Server 2012 SSIS package<\/a>, in case you encounter problems that you can&#8217;t go through in the step-by-step part.<\/p>\n<div class=\"su-note\"  style=\"border-color:#e5e5c6;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#ffffe0;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">NOTE: Once you open the package, you won&#8217;t be able to run it immediately, but don&#8217;t panic. Firstly, it&#8217;s because you have a different SQL destination table. Secondly, you won&#8217;t see any sensitive data in the package, like tokens. Therefore you will have to perform OAuth authentication process to get those.\u00a0So fix errors one by one and you are good to go. <\/div><\/div>\n<h2>Conclusion<\/h2>\n<p>In this article we\u00a0learned how to call HubSpot API <a href=\"http:\/\/www.drdobbs.com\/web-development\/restful-web-services-a-tutorial\/240169069\" target=\"_blank\" rel=\"noopener\">RESTful<\/a> method and retrieve all contacts. Actually, HubSpot API consists of many small APIs and we used <a href=\"https:\/\/developers.hubspot.com\/docs\/methods\/contacts\/contacts-overview\" target=\"_blank\" rel=\"noopener\">Contacts API<\/a>\u00a0method particularly. If you need anything else than simply retrieving the contacts of your account, delve into the vastness of <a href=\"https:\/\/developers.hubspot.com\/docs\" target=\"_blank\" rel=\"noopener\">HubSpot API methods<\/a>!<\/p>\n<p>Also it&#8217;s worth mentioning that <em>JSON Source<\/em> and <em>OAuth Connection <\/em>SSIS components saved us some valuable time, because we avoided using default SSIS\u00a0<em>Script Component<\/em>\u00a0and\u00a0doing all the hard work ourselves.<\/p>\n<h2>Keywords<\/h2>\n<p>How to fetch data from HubSpot API | Pull data from HubSpot API into SQL Server | Call HubSpot API with\u00a0SSIS | Sync HubSpot data to SQL Server | HubSpot\u00a0data integration with SQL Server database | Load data from HubSpot REST API using SSIS<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction HubSpot is a popular platform where CRM, Marketing and Sales meet in one place. It&#8217;s a good piece of service, yet sometimes you need to integrate it with your other system.\u00a0In this article you will learn how to pull contacts from\u00a0HubSpot API and load them into a SQL Server Database using SSIS and ZappySys [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1862,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[225,16,17,8],"tags":[215,206,197,6,199,198,48,148,4],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\r\n<title>How to get data from HubSpot API with SSIS | ZappySys Blog<\/title>\r\n<meta name=\"description\" content=\"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"How to get data from HubSpot API with SSIS | ZappySys Blog\" \/>\r\n<meta property=\"og:description\" content=\"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/\" \/>\r\n<meta property=\"og:site_name\" content=\"ZappySys Blog\" \/>\r\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ZappySys\/\" \/>\r\n<meta property=\"article:published_time\" content=\"2017-06-02T15:31:16+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2025-03-19T05:24:14+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\" \/>\r\n\t<meta property=\"og:image:width\" content=\"180\" \/>\r\n\t<meta property=\"og:image:height\" content=\"180\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\r\n<meta name=\"author\" content=\"ZappySys\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/zappysys\/\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"ZappySys\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/\",\"url\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/\",\"name\":\"How to get data from HubSpot API with SSIS | ZappySys Blog\",\"isPartOf\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\",\"datePublished\":\"2017-06-02T15:31:16+00:00\",\"dateModified\":\"2025-03-19T05:24:14+00:00\",\"author\":{\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\"},\"description\":\"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.\",\"breadcrumb\":{\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage\",\"url\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\",\"contentUrl\":\"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png\",\"width\":180,\"height\":180},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/zappysys.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to get data from HubSpot API with SSIS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/zappysys.com\/blog\/#website\",\"url\":\"https:\/\/zappysys.com\/blog\/\",\"name\":\"ZappySys Blog\",\"description\":\"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/zappysys.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82\",\"name\":\"ZappySys\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g\",\"caption\":\"ZappySys\"},\"sameAs\":[\"http:\/\/www.zappysys.com\/\",\"https:\/\/www.facebook.com\/ZappySys\/\",\"https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/\"],\"url\":\"https:\/\/zappysys.com\/blog\/author\/admin\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to get data from HubSpot API with SSIS | ZappySys Blog","description":"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/","og_locale":"en_US","og_type":"article","og_title":"How to get data from HubSpot API with SSIS | ZappySys Blog","og_description":"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.","og_url":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/","og_site_name":"ZappySys Blog","article_author":"https:\/\/www.facebook.com\/ZappySys\/","article_published_time":"2017-06-02T15:31:16+00:00","article_modified_time":"2025-03-19T05:24:14+00:00","og_image":[{"width":180,"height":180,"url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png","type":"image\/png"}],"author":"ZappySys","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/zappysys\/","twitter_misc":{"Written by":"ZappySys","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/","url":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/","name":"How to get data from HubSpot API with SSIS | ZappySys Blog","isPartOf":{"@id":"https:\/\/zappysys.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage"},"image":{"@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage"},"thumbnailUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png","datePublished":"2017-06-02T15:31:16+00:00","dateModified":"2025-03-19T05:24:14+00:00","author":{"@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82"},"description":"Learn how to get data from HubSpot API using SSIS. Read and write data using GET and POST methods. Use OAuth Connection to pull data using RESTful API call.","breadcrumb":{"@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#primaryimage","url":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png","contentUrl":"https:\/\/zappysys.com\/blog\/wp-content\/uploads\/2017\/06\/hubspot-api-integration-2.png","width":180,"height":180},{"@type":"BreadcrumbList","@id":"https:\/\/zappysys.com\/blog\/get-data-from-hubspot-api-with-ssis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zappysys.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to get data from HubSpot API with SSIS"}]},{"@type":"WebSite","@id":"https:\/\/zappysys.com\/blog\/#website","url":"https:\/\/zappysys.com\/blog\/","name":"ZappySys Blog","description":"SSIS \/ ODBC Drivers \/ API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zappysys.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/2756c237457fbc95d82cb38962f81f82","name":"ZappySys","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zappysys.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c9be148088ba9b8af8e955c5f7c22b5?s=96&d=mm&r=g","caption":"ZappySys"},"sameAs":["http:\/\/www.zappysys.com\/","https:\/\/www.facebook.com\/ZappySys\/","https:\/\/twitter.com\/https:\/\/twitter.com\/zappysys\/"],"url":"https:\/\/zappysys.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/1175"}],"collection":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/comments?post=1175"}],"version-history":[{"count":80,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/1175\/revisions"}],"predecessor-version":[{"id":11242,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/posts\/1175\/revisions\/11242"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media\/1862"}],"wp:attachment":[{"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/media?parent=1175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/categories?post=1175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zappysys.com\/blog\/wp-json\/wp\/v2\/tags?post=1175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}