What gets sent
- The customer's name, email and phone. Frontivo.io finds an existing contact by email (or phone) and updates it, so you don't get duplicates.
- A note on the contact with what happened (new lead, booking, handoff), the summary and the details you chose.
- In Pipedrive, a lead in your Leads Inbox for each new lead (you can turn this off).
- In GoHighLevel, a Frontivo.io tag on the contact (plus the customer's tags from Frontivo.io), so you can start workflows from it. Tags are only ever added, never removed.
Frontivo.io never deletes anything in your CRM.
Create your HubSpot key
- 1In HubSpot, open Development in the main menu, then Keys > Service keys (or go to Settings > Integrations > Service keys). You need to be a Super Admin.
- 2Click Create service key and name it Frontivo.io.
- 3Click Add new scope and tick crm.objects.contacts.read, crm.objects.contacts.write and crm.schemas.contacts.read. Click Update, then Create.
- 4Open the key, click Show, then Copy.
Already have a HubSpot private app token (it starts with pat-) with those scopes? That works too.
Find your Pipedrive API token
- 1In Pipedrive, click your profile picture (top right), then Personal preferences.
- 2Open the API tab and click Copy next to your personal API token.
- 3Note your company address: the part before .pipedrive.com in your browser's address bar.
Your personal token can reach everything your Pipedrive login can, so keep it private. Frontivo.io saves it encrypted and only ever shows its last 4 characters.
Create your GoHighLevel token
GoHighLevel connects one sub-account (the space for one business inside GoHighLevel) with a private integration token: a password-like code that only allows the permissions you tick. You need admin access to the sub-account. Agency owners: switch into your client's sub-account first and do every step there, not in the agency view.
- 1Open the sub-account and click Settings at the bottom of the left menu.
- 2Click Business Profile and copy the Location ID (the sub-account's ID).
- 3Click Private Integrations, then Create new Integration.
- 4Type Frontivo.io as the name and click Next.
- 5Tick these permissions (called scopes): contacts.readonly, contacts.write, locations/customFields.readonly and locations.readonly.
- 6Click the button at the bottom to finish (Create, or Update in some accounts).
- 7Copy the token (it starts with pit-). GoHighLevel shows it only once.
Can't see Private Integrations? Turn it on under Settings > Labs, or ask your agency to switch it on for you.
The token only works for this one sub-account. Frontivo.io saves it encrypted and only ever shows its last 4 characters.
Connect and switch on sync
- 1Open Integrations in your dashboard and click CRM in the list on the left.
- 2Click the HubSpot, Pipedrive or GoHighLevel tile, then Connect HubSpot, Connect Pipedrive or Connect GoHighLevel on its card.
- 3Paste your key (for Pipedrive, also type your company address; for GoHighLevel, also paste the Location ID) and click Connect. Frontivo.io checks it with your CRM first.
- 4Click Test connection. It should say it can read your contacts.
- 5Open Field matching and when to sync. Check where each detail goes, tick when to sync, and click Save settings.
- 6Switch on Sync is on.
Sync starts switched off, so nothing is sent until you're happy with the settings.
Field matching
For each Frontivo.io detail (name, email, phone, lead source, lead status, service, location, notes and summary, tags, appointment time) choose a field in your CRM, Add to the note, or Don't send. Your own custom fields are listed too.
The name is split into first and last name. In HubSpot, lead status goes to HubSpot's own Lead status field by default. In GoHighLevel, your contact custom fields (text and date fields) are listed, and tags are added as GoHighLevel tags.
Recent sync activity
Open Recent sync activity on the card to see the last 20 syncs: Queued, Processing, Completed or Failed, with the reason in plain words.
Syncs usually run within seconds. If your CRM is busy or down, Frontivo.io tries again automatically, up to 5 times over about half an hour. Your AI and your leads are never held up by the CRM.
Disconnect
Click Disconnect on the card. Frontivo.io deletes the saved key straight away. Contacts already sent stay in your CRM. You can also delete the key in HubSpot, generate a new token in Pipedrive, or delete the Frontivo.io private integration in GoHighLevel (Settings > Private Integrations, three dots, Delete).
Troubleshooting
It says the key or token wasn't accepted
Copy it again with no spaces. If it was deleted or regenerated in your CRM, paste the new one with Reconnect.
It says the key is missing a permission
In HubSpot, open the key and add crm.objects.contacts.read and crm.objects.contacts.write (and crm.schemas.contacts.read for your custom fields). In GoHighLevel, open Settings > Private Integrations, click Frontivo.io and tick contacts.readonly and contacts.write (and locations/customFields.readonly for your custom fields). Then click Test connection.
GoHighLevel says the token belongs to a different sub-account
The token and the Location ID must come from the same sub-account. Switch into the right sub-account, copy its Location ID from Settings > Business Profile, and connect again.
The card says Needs attention
Your CRM stopped accepting the key. Click Reconnect HubSpot, Reconnect Pipedrive or Reconnect GoHighLevel and paste a new one. New leads start syncing again straight away.
A sync shows Skipped: no email or phone number
Your CRM needs an email or phone to find the right contact. Your AI asks for these when it takes a lead, so most leads have one.
Some fields weren't accepted
A field in your CRM didn't take the value (for example a dropdown with different options). Open Field matching and choose another field, or Add to the note.
I can't see the Connect button
CRM sync comes with Growth, and only people allowed to connect apps can set it up. Ask your account owner.