Ghl Crm
/install ghl-crm
GHL CRM — GoHighLevel Integration for OpenClaw
Complete GoHighLevel CRM integration. Manage contacts, pipelines, conversations, appointments, and workflows through the GHL API v2.
Quick Start
export GHL_API_KEY="your-private-integration-token"
export GHL_LOCATION_ID="your-location-id"
python3 {baseDir}/scripts/ghl_api.py contacts search "[email protected]"
Authentication
GHL uses Private Integration Tokens (API v2). Get yours from:
- Go to Settings → Integrations → Private Integrations in your GHL sub-account
- Create a new integration, enable the scopes you need
- Copy the API key — this is your
GHL_API_KEY
The GHL_LOCATION_ID is your sub-account/location ID (found in Settings → Business Info or the URL).
Base URL: https://services.leadconnectorhq.com
Auth header: Authorization: Bearer \x3CGHL_API_KEY> + Version: 2021-07-28
Available Commands
Contact Management
# Search contacts by email, phone, or name
python3 {baseDir}/scripts/ghl_api.py contacts search "query"
# Get contact by ID
python3 {baseDir}/scripts/ghl_api.py contacts get \x3CcontactId>
# Create a new contact
python3 {baseDir}/scripts/ghl_api.py contacts create '{"firstName":"John","lastName":"Doe","email":"[email protected]","phone":"+15551234567"}'
# Update contact
python3 {baseDir}/scripts/ghl_api.py contacts update \x3CcontactId> '{"tags":["vip","hot-lead"]}'
# Delete contact
python3 {baseDir}/scripts/ghl_api.py contacts delete \x3CcontactId>
# List contacts (with optional limit)
python3 {baseDir}/scripts/ghl_api.py contacts list --limit 20
Pipeline & Opportunity Management
# List all pipelines
python3 {baseDir}/scripts/ghl_api.py pipelines list
# List opportunities in a pipeline
python3 {baseDir}/scripts/ghl_api.py opportunities list \x3CpipelineId>
# Get opportunity details
python3 {baseDir}/scripts/ghl_api.py opportunities get \x3CopportunityId>
# Create opportunity
python3 {baseDir}/scripts/ghl_api.py opportunities create '{"pipelineId":"...","stageId":"...","contactId":"...","name":"Deal Name","monetaryValue":5000}'
# Update opportunity (move stage, update value)
python3 {baseDir}/scripts/ghl_api.py opportunities update \x3CopportunityId> '{"stageId":"new-stage-id","status":"won"}'
# Delete opportunity
python3 {baseDir}/scripts/ghl_api.py opportunities delete \x3CopportunityId>
Conversations (SMS, Email, WhatsApp)
# List recent conversations
python3 {baseDir}/scripts/ghl_api.py conversations list
# Get conversation messages
python3 {baseDir}/scripts/ghl_api.py conversations get \x3CconversationId>
# Send SMS
python3 {baseDir}/scripts/ghl_api.py conversations send-sms \x3CcontactId> "Hello! Following up on our call."
# Send email
python3 {baseDir}/scripts/ghl_api.py conversations send-email \x3CcontactId> '{"subject":"Follow Up","body":"\x3Cp>Hi there!\x3C/p>","emailFrom":"[email protected]"}'
Calendar & Appointments
# List calendars
python3 {baseDir}/scripts/ghl_api.py calendars list
# Get free slots
python3 {baseDir}/scripts/ghl_api.py calendars slots \x3CcalendarId> --start 2026-02-16 --end 2026-02-17
# Create appointment
python3 {baseDir}/scripts/ghl_api.py appointments create '{"calendarId":"...","contactId":"...","startTime":"2026-02-16T10:00:00Z","endTime":"2026-02-16T10:30:00Z","title":"Discovery Call"}'
# List appointments
python3 {baseDir}/scripts/ghl_api.py appointments list \x3CcalendarId>
# Update appointment
python3 {baseDir}/scripts/ghl_api.py appointments update \x3CappointmentId> '{"status":"confirmed"}'
# Delete appointment
python3 {baseDir}/scripts/ghl_api.py appointments delete \x3CappointmentId>
Workflows
# Add contact to workflow
python3 {baseDir}/scripts/ghl_api.py workflows add-contact \x3CworkflowId> \x3CcontactId>
# Remove contact from workflow
python3 {baseDir}/scripts/ghl_api.py workflows remove-contact \x3CworkflowId> \x3CcontactId>
Key API Endpoints Reference
| Resource | Method | Endpoint |
|---|---|---|
| Search contacts | GET | /contacts/search?query=...&locationId=... |
| Get contact | GET | /contacts/{id} |
| Create contact | POST | /contacts/ |
| Update contact | PUT | /contacts/{id} |
| List pipelines | GET | /opportunities/pipelines?locationId=... |
| List opportunities | GET | /opportunities/search?location_id=...&pipeline_id=... |
| Create opportunity | POST | /opportunities/ |
| List conversations | GET | /conversations/search?locationId=... |
| Send message | POST | /conversations/messages |
| List calendars | GET | /calendars/?locationId=... |
| Get free slots | GET | /calendars/{id}/free-slots?startDate=...&endDate=... |
| Create appointment | POST | /calendars/events/appointments |
Rate Limits
GHL API v2 enforces rate limits:
- General: 100 requests/10 seconds per location
- Bulk operations: 10 requests/10 seconds
- The script auto-retries on 429 with exponential backoff (up to 3 retries)
Integration Patterns
Lead Capture → CRM Pipeline
- Capture lead via form/chatbot
contacts createwith lead dataopportunities createto add to pipelineworkflows add-contactto trigger nurture sequence
Appointment Booking Flow
calendars listto find the right calendarcalendars slotsto get availabilityappointments createto book the slot- GHL auto-sends confirmation via configured workflow
Follow-Up Automation
conversations listto find unresponded conversationscontacts getfor context- Generate follow-up with AI
conversations send-smsorsend-email
Credits
Built by M. Abidi | agxntsix.ai YouTube | GitHub Part of the AgxntSix Skill Suite for OpenClaw agents.
📅 Need help setting up OpenClaw for your business? Book a free consultation
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install ghl-crm - After installation, invoke the skill by name or use
/ghl-crm - Provide required inputs per the skill's parameter spec and get structured output
What is Ghl Crm?
GoHighLevel CRM integration — manage contacts, pipelines, conversations (SMS/email/WhatsApp), calendars, appointments, and workflows through the GHL API v2.... It is an AI Agent Skill for Claude Code / OpenClaw, with 334 downloads so far.
How do I install Ghl Crm?
Run "/install ghl-crm" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Ghl Crm free?
Yes, Ghl Crm is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Ghl Crm support?
Ghl Crm is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Ghl Crm?
It is built and maintained by aiwithabidi (@aiwithabidi); the current version is v1.0.0.