Skip to main content
The GoHighLevel integration connects a GHL location to Wave Runner using OAuth. Once connected, Wave Runner registers a webhook in your GHL account automatically so contact creation events arrive in real time. Use those events as workflow triggers, write contact updates back to GHL, and route Facebook Lead Ads through your GHL pipeline into Wave Runner workflows.

Connecting GoHighLevel

1

Open the integrations page

In Wave Runner, click Settings in the navbar, then select the Integrations tab.
2

Click Connect on the GoHighLevel card

Find the GoHighLevel card in the CRM section and click Connect. Wave Runner redirects you to the GoHighLevel marketplace authorization screen.
3

Select a location

Choose the location (sub-account) you want to connect. If your GHL account has multiple locations, select the one that corresponds to the contacts you want Wave Runner to access.
4

Authorize the integration

Review the requested permissions and click Allow. GoHighLevel redirects you back to Wave Runner.
5

Confirm the connection

The GoHighLevel card status changes to Connected, showing the location name. Wave Runner registers a contact-created webhook in GHL in the background.
GoHighLevel’s OAuth flow may drop query parameters during the redirect in some browser configurations. Wave Runner uses a fallback cookie mechanism to preserve your session, so the connection completes successfully regardless.
You must have Agency Admin or Location Admin access for the GHL location you want to connect. Sub-account users without admin rights cannot authorize third-party integrations.

Trigger events

After connecting, select GoHighLevel → Contact Created as the trigger in any Wave Runner workflow. When a new contact is created in your GHL location, Wave Runner executes any active workflow using this trigger immediately.

CRM action nodes

Add a GoHighLevel action node inside any workflow to write data back to your CRM:
  • Create Contact — creates a new contact in the connected GHL location
  • Update Contact — updates fields on an existing GHL contact record
  • Add to Campaign — enrolls the contact in a GoHighLevel campaign sequence
  • Add Tag — applies a tag to the contact record

Facebook Lead Ads via GoHighLevel

If you route Facebook Lead Ads through GoHighLevel, Wave Runner captures those leads through the GHL contact-created webhook. When someone submits a Lead Ad form connected to your GHL pipeline, GHL creates a contact and Wave Runner fires the Contact Created trigger.
For direct Facebook Lead Ads integration without GoHighLevel, connect Facebook separately under Settings → Integrations → Facebook Leads.

Contact variables

When a workflow starts from a GHL Contact Created event, Wave Runner makes the contact’s fields available as variables in any text field.
VariableDescription
{name}Full contact name
{phone_number}Contact’s phone number
{email}Contact’s email address
GHL contact variables are populated from the webhook payload. If a field is empty in GHL, the variable resolves to an empty string.

Two-way contact sync

When Wave Runner receives a GHL contact-created event, it checks whether the contact already exists by matching phone number variants. If a match is found, Wave Runner updates the record. If not, Wave Runner creates the contact and adds it to a CRM Contacts list. GoHighLevel is the source of truth when the integration is active.

Disconnecting GoHighLevel

1

Open the integrations page

Go to Settings → Integrations.
2

Click Configure on the GoHighLevel card

The card shows Configure when a connection is active.
3

Remove the connection

Click Disconnect or the trash icon next to the connection entry. Wave Runner stops receiving webhook events from that GHL location immediately.
Disconnecting GoHighLevel does not delete your workflows. Workflows using the GHL trigger stop firing until you reconnect a GHL location and redeploy the workflow.