Our Hubspot integration uses the ‘Calls to Contacts’ integration via the Hubspot API.
https://developers.hubspot.com/docs/api/overview
https://developers.hubspot.com/docs/api/crm/contacts
On first run of the integration, we will get all contact data from your Hubspot account and store it against the property in the back-end. Every 5 minutes (configurable) we will create/update any newly created contact records.
When you receive a call, the call is logged as normal, however every 5 minutes it will look for a match against the Hubspot records and sync the call against it. If a contact is found it logs call data to it, if no contact is found it will create a new contact:
When the new contact is created it will log a call against it. See example screenshots here …
In the template section, select the Hubspot Integration.
Click Install.
You’ll see the Template will now appear in the Assets section.
Click the Recipe and then select ‘Edit Recipe’
The flow will look like this:
Having a look at the steps, we can see the following; the breakdown of the Hubspot Recipe steps are:
Step 1. Trigger
It initiates the recipe actions, follows in-sequence delivery, maintains processed job records, prevents duplicate processing, and ensures job completion in order.
As a default, the trigger of the downloaded recipe is already configured, but if you are also able to tweak with the options.
Time Unit: The interval used to trigger the recipe (minutes, hours, days, weeks, months, custom).
Timezone: Area where the business is based.
Trigger every: Insert the value related to the time unit.
ACTIONS
Every recipe contains a set of actions, which dictates the nature and the steps the integration is going to follow.
Step 2. Call Query
This step shows an alert notification because the connection to the VCT account has not been established. To do so, on the window to the right, select “Connection” and add the required information to connect to your account.
Where to get your Property SID & Project API Token
Once the connection is established, on the same window select “Setup”. When you click “Setup”, you can configure what information will be pulled out from the queries.
Resource Level: Indicates the extent to which the calls will be queried (Account, Property, Single Call).
Required field:
Date From: The date is going to start
Optional fields:
Date_To: The date is going to end
Disposition: Answered, Unanswered, Busy
To: Inbound number
Endpoint: Answerpoint
Attribute_Source: Call tracking information
Attribute_ Medium: Call tracking information
Attribute_ Campaign: Call tracking information
Attribute_ Content: Call tracking information
Promp_Keys: Keys pressed if IVR menu is available
Unique:
Results_Count:
Results_Skip:
Step 3. If (conditional)
It takes a path taking into consideration whether or not the conditions were met, (the CallSid is not present/new – NO / the CallSid is present/existing – YES).
Step 4. Stop
Stops the job, and no query is actioned for that existing CallSid.
Step 5. Repeat for each
So the integration doesn’t stop after sending the first query, an action has been added to repeat the steps.
Step 6. Searching contacts in HubSpot
As you can notice, there is an alert notification in the sixth step, this is because you need to log into your HubSpot account and establish the connection and the integration can communicate and send the information.
Follow the steps until the connection is established. Once the connection is online, the alert notifications should be gone from the rest of the steps.
Step 7. If (Conditional)
It takes a path taking into consideration whether or not the conditions were met. (Contains a value in “ID” – YES / Does not contain a value in “ID” – NO)
Step 8. Post parameters if HubSpot ID was present)
Step 9. Else (Conditional) -Start
Similar to the IF conditional, it checks for previous actions and requirements to decide which action to perform.
Step 10. Creates the contact if HubSpot ID is not present
Step 11. Post parameters if HubSpot ID is not present