Before you connect
The following are required:- A HighLevel account with permission to authorize a third-party Marketplace app on at least one location (sub-account). The connector requests read-only access across the agency, location, and individual object scopes.
- A decision on which data type to import first — contacts, opportunities, invoices, forms, calendar events, email campaigns, or phone numbers. Each data type is connected as a separate Adriel data source.
- A HighLevel server location of EU or KR. Other server regions are not currently supported.
- Published calendars, if the calendar-events data type is being imported. Drafted calendars are skipped during sync.
Connect HighLevel
1
Authorize a HighLevel account
On the Data Sources page, search for HighLevel and select it. Sign in to HighLevel in the pop-up window using an account with permission to authorize Marketplace apps.
2
Choose the location
On the HighLevel chooser screen, select the Location (sub-account) to connect. Agency-level accounts can choose from all locations they administer.
3
Grant read access
Click Allow to grant the requested read-only scopes. HighLevel displays the exact scope list on the consent screen: companies, contacts, businesses, users, oauth, locations, location custom fields, invoices, calendars, calendar events, scheduled emails, forms, opportunities, and phone numbers.
4
Select the data type
On the data source settings, select the Data Type to import: Contacts, Opportunities, Invoices, Forms, Calendar Events, Email Campaigns, or Phone Numbers.
5
Submit
Click Submit to complete the connection. Initial data availability can take up to one business day. To import an additional data type from the same location, repeat the steps and select a different data type.
What gets imported
The imported records depend on the selected data type: contacts with custom fields resolved by name, opportunities flattened to one row each, invoices for the location, form submissions, calendar events across published calendars for a fixed window (now − 3 days through now + 50 days), scheduled email campaigns (also reachable via theemails alias), and phone-system numbers attached to the location. Sync runs every two hours, with full refreshes at hours 0, 6, 12, and 18 UTC and partial refreshes the rest of the time.
For the complete field list and per-data-type behavior, see the HighLevel data reference.
Troubleshooting
The connection is disconnected after a token error
The connection is disconnected after a token error
Two HighLevel token errors trigger automatic disconnection:
invalid_grant (refresh token rejected) and Unauthorized (access token rejected). Reconnect via Connections → HighLevel → Reconnect and re-authorize against the same HighLevel account.Calendar events look stale or only cover a short window
Calendar events look stale or only cover a short window
Calendar events are intentionally limited to the fixed window of now − 3 days through now + 50 days and are fully re-fetched on every sync. Events outside that window are not retained.
Custom contact fields are missing
Custom contact fields are missing
Custom field names are resolved at sync time via the HighLevel custom-fields API. If that lookup fails, contacts are still imported, but the custom-field columns are omitted from the data.
Email Campaigns and Emails appear to be different data types
Email Campaigns and Emails appear to be different data types
They are the same. Email Campaigns is the canonical label and
emails is an accepted alias. Either choice results in the same import behavior.Related
HighLevel data reference
Fields, data types, and per-type sync behavior for HighLevel.
HighLevel FAQs
Common questions and expected behaviors for the HighLevel data source.
How to connect HubSpot Deals
Connect HubSpot deal records as a CRM data source.
How to connect Active Campaign
Connect Active Campaign marketing automation data.
