How do I use sipgate AI Assist together with Hubspot, Slack & Google Sheet?
Instructions for using sipgate AI Assist with HubSpot, Slack and Google Sheets via Zapier webhooks.
This article shows a practical application of AI Assist Webhooks with Zapier. Basic setup instructions for the webhook itself can be found in this linked article.
Prerequisite
AI Assist is available exclusively in the sipgate app, which is used in conjunction with the sipgate cloud telephone system.
The webhook can only be configured by administrators of the sipgate account and applies only to channels. Consequently, a channel with a phone number is required in sipgate.
In Zapier, a plan with webhooks is required, and in Hubspot the API must be available.
Step 1: Create webhook in Zapier
After you are logged in to Zapier, create a new Zap via "+ Create" in the top left:

Step 2: Set up trigger
In the new Zap, select the first trigger:

Select Webhooks for this trigger:

Set the trigger event to "Catch Raw Hook":

After clicking "Continue", go to the webhook and copy it to the clipboard via "Copy":

Step 3: Add webhook in AI Assist
Now enter the webhook in the sipgate app under "AI Assist Webhook" and select format "VCON":


Don't forget to save.
Step 4: Test trigger
To do this, first make a call via a channel in your account and wait for the call summary in the sipgate app.

Back in Zapier, the trigger can be tested by clicking "Test trigger". The calls made are then listed as "records". The first call, for example, as "request A". Select a record and continue with "Continue with selected record".

Step 5: Extract data fields
The transmitted data is available in raw format and can be converted into data fields in the next step using "low code":

In this example, Python is used, but JavaScript can also be selected.

To find out the data structure, simply switch to "Test" and you can also store the data in the clipboard right away:

To make the whole thing clearer, the data from the clipboard can be inserted into an editor and formatted hierarchically. An editor that understands JSON is helpful here to support the whole thing with color.

Once the desired fields have been determined, they can be filled in the code:

In this example with Python, that is:
Using "Continue" and "Test step" on the following page, you can now see the filled fields:

Publish the node and then move to the next point.
Step 6: Log call in Hubspot
Step 6.1: Find contact
Since the goal is to record a call, the first thing to do is find the contact person in Hubspot. This can be implemented with a ready-made template.
So add another node:

Select Hubspot:
In the next step, set the "Action Item" to "Find Contact" and then continue with "Continue".

The contact's phone number is included in the call metadata and can be used as a search criterion. In this example, the "Property" "Contact information : Phone Number" and "Contact information : Calculated Phone Number in International Format" are accessed. The values fields are prefixed with a "+".

Continue with "Continue" to execute "Test step". If the contact is found, it looks like this:

Step 6.2: Log call
Now continue with creating the log. To do this, add another node:

The required "Action event" in the Hubspot template "Create Engagement":

Now define the details

Determining the contact ID is a bit hidden:


With "Continue" and "Test step", the result is as follows:

Finally, confirm via the "Publish" button. And this is how it appears in Hub:

Step 7: Maintain Google Sheet
After that, a table should be supplemented with the call for later evaluation.
So create another node:

Google Sheets is used here as the template:

The selected "Action event" is "Create Spreadsheet Row at Top". It inserts an empty row below the header row and then fills it with the data.

In the next step, location, file, sheet are selected and the fields are mapped to the columns:

Then again click "Continue" and "Test step":

Use the "Publish" button to publish the template
And this is how it looks in the sheet:

Step 8: Post message in Slack
As a final point, you can send a message, for example in Slack, and inform your colleagues about the call. It is possible that the caller has already been in contact with someone.
It starts again with a node:

Select Slack template:

Then set "Send Channel Message" as the event and the Slack account:

Now select the channel and prepare the "Message":

Then "Continue" and "Test step" as usual:

And the result in Slack:

Last updated

