Our Hubspot integration works using the Hubspot API for now we only have one integration but may look to add others in the future. The one we have now is the 'Calls to Contacts' in integration which uses the Hubspot API as well as call data to create contacts, more information on the Hubspot API call can be found here:
https://developers.hubspot.com/docs/api/overview
https://developers.hubspot.com/docs/api/crm/contacts
How it works
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.
Setup & Settings
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 looks like this:
Having a look at the steps, we can see the following:
Breakdown of the Recipe steps:
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.
2.- Call Query
This step shows an alert notification because the connection to the FDX 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 Account SID/Token
Once the connection is established, on the same window select "Setup"
If 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:
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.
If the CallSid already exists, then it won't action any further.
If the CallSid is a new entry, it proceeds to action the query.
4.- Stop
Stops the job, and no query is actioned for that existing CallSid.
5.-Repeat for each
So the integration doesn't stop after sending the first query, an action has been added to repeat the steps.
6.- Searching contacts in HutSpot
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.
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)
If the entry has the "ID" value, then it will proceed to step 8
If it is a new entry (no "ID" value), it proceeds to step 9
8.- Post parameters if HubSpot ID was present)
9.- Else (Conditional) -Start
Similar to the IF conditional, it checks for previous actions and requirements to decide which action to perform.
10.- Creates the contact if HubSpot ID is not present
11.- Post parameters if HubSpot ID is not present