Deal mass import, and long term updates work flow

New Contributor



I am tasked with importing 15k transactions into deals.  Our structure is typical I believe, 1 Sales pipeline, ~7 stages, and various properties per stage.  Our deals are attached to contacts only, 1 contact -> N deals.  After the initial import there will be ~100-150 deals per day.


Q: I have no way of knowing if a contact/vid exist for a customer, should I first hit the API and search for the email address and look for a potential contact, save the vid and then import the record?  I'm thinking I would first just search for the 15k contacts ( chunked ) and store the vids locally keyed to email address. And then local lookup/match during import as each Deal/transaction does have an email address in the record.


Q: The update endpoint for a deal requires knowing the deal id, not a shocker, though it does infer that I need local storage to save all known deal ids after they are created.  Is there any way around storing this data that doesn't amount to hundreds of search calls?  There is no automagic create or update for a deal correct?  


Q: Long term, it appears that I will need to be storing all Deal ids and all Contact ids locally.  This seems like a lot of duplication, and I truly want no part of doubling up data, storage maintenance, etc... 


Are any of these assumptions wrong?


Trust me, I am happy to be wrong on any or all of these points if there is a better strategy to long term Deal management over the API.  No human is ever going to touch these in HubSpot fyi, so everything has to be automated ( API wise ).  I do know the initial import is going to have to bleed into HS slowly ( no batch for create deal I believe ).


Is there a better way to do any/all of this, in both the initial import and long term creation and updating of Deals via the API.



2 Replies 2
Occasional Contributor

Similar issue here.  It does create a deal ID if the deal name doesn't exist, so make it unique with a date, RFQ# or Order number.  Mine is email concatenated of the following info: Company RFQ# PO# SO#. So I have 100k deals that I need to associate the contact ID to, even though I imported with the customer email. I started in 2017, and am working to fully populate the 2018 and 2019 deals.
As far as Automagic, I was hoping it would have associated the contact email with the contact and therefore the company. With the history that I have recorded, email quotes and order confirmations, it should coelesce very easily - one would think.

New Contributor

Thanks for the reply,


So deal names are to be unique, check.  


I think I'm going to spool through the contacts and throw email address -> vid in a table or bucket, and then pass in the vid in the associations index when saving the deal and see if it sticks, hopefully so, I'd rather not spool through all 15k deals updating contacts ( again ).


If I come across anything odd in the mass import i'll post here again.