LoopLead

GoHighLevel
Setup Guide

Get your HVAC workflow running live in about 10 minutes. You need a GoHighLevel free trial account and a phone number configured for inbound calls.

Step 1 of 4
Get your GHL API Key

Open Settings > API Keys inside your GoHighLevel dashboard.

Click + Create Private App, name it "LoopLead", and request these scopes:

  • conversations.read
  • conversations.write
  • contacts.write
  • locations/customFields.read

Copy the generated API key — you'll use it as GHL_API_KEY.

The Location ID is visible in your browser address bar when in GHL: app.gohighlevel.com/locations/XXXXXXXX-XXXX-XXXX/...
Step 2 of 4
Add Environment Variables

Add these two env vars to your Render (or hosting) dashboard under Environment > Variables:

GHL_API_KEY=your_private_app_api_key_here
GHL_LOCATION_ID=your_location_id_from_the_url

Trigger a redeploy so Render picks up the new variables.

Step 3 of 4
Configure the Webhook Trigger

In GHL, go to Automations > Triggers > Webhooks.

Set the webhook URL to your app's callback endpoint:

POST https://looplead-3.polsia.app/api/automation/webhook

Configure the webhook to fire on these GHL events:

  • Call Completed (when callStatus = NO_ANSWER)
  • Contact Created (as a fallback contact capture)

Webhook headers: Content-Type: application/json

In GHL, you can also use Inbox Rules to fire on missed calls specifically: Condition → Call Duration > 0 AND Call Answered = False → Send Webhook.
Step 4 of 4
Test the Full Flow

Call your GHL-connected phone number from a different phone. Let it ring 5+ seconds, then don't answer.

Within 60 seconds you should receive an SMS on that same phone. If you reply "Yes" or "please", the sequence stops immediately.

Watch it happen in real time:

Open Live Demo Dashboard

What happens next

Once GHL is connected, LoopLead runs the full missed-call recovery workflow automatically:

  • 0 seconds — Lead calls, misses. GHL fires webhook. LoopLead sends initial SMS instantly.
  • ~36 hours — No reply? Follow-up #1 fires.
  • ~72 hours — Still no reply? Close-out message fires.
  • Any reply — Sequence stops. You call the lead back.

The demo dashboard at /demo shows every event in real time — calls, SMS sent, and recovered leads.