GHL Features Not Activating

“name”: “book appointment - GHL version”,
“nodes”: [
{
“parameters”: {
“httpMethod”: “POST”,
“path”: “d0522c57-4059-4887-a83b-5e0c71a5b0e3”,
“responseMode”: “responseNode”,
“options”: {}
},
“type”: “n8n-nodes-base.webhook”,
“typeVersion”: 2.1,
“position”: [-96, -48],
“id”: “925be49b-d7e2-4c78-af30-c5c9dc6f66aa”,
“name”: “Webhook”,
“webhookId”: “d0522c57-4059-4887-a83b-5e0c71a5b0e3”
},
{
“parameters”: {
“promptType”: “define”,
“text”: “=You are a booking AI Agent for GoHighLevel. Your job is to:\n1️⃣ Get customer details (name, email, phone, time, service type)\n2️⃣ Use the ‘Create Contact in GHL’ tool to make sure the contact exists (upsert by email).\n3️⃣ Use the ‘Book Appointment in GHL’ tool to schedule the appointment using the contactId from the previous step.\n\nAppointment start: {{ $json.body.args.time }}\nDuration: 60 minutes (add one hour for end time).\n\nAfter booking, use the ‘Send Confirmation Email’ tool to confirm to the client.\n\nOutput format example:\n"Hey {{ $json.body.args.name }}, your {{ $json.body.args.service_type }} appointment on {{ $json.body.args.time }} has been booked! We’ll see you then."”,
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.agent”,
“typeVersion”: 2.2,
“position”: [240, -64],
“id”: “23858562-9041-43f9-b4a7-810e8dd2b0fc”,
“name”: “AI Agent”
},
{
“parameters”: {
“model”: {
“__rl”: true,
“mode”: “list”,
“value”: “gpt-4.1-mini”
},
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.lmChatOpenAi”,
“typeVersion”: 1.2,
“position”: [16, 176],
“id”: “913c7ea7-62f3-419a-af8e-702ad7d629f3”,
“name”: “OpenAI Chat Model”,
“credentials”: {
“openAiApi”: {
“id”: “786gnhIuud1dHep1”,
“name”: “OpenAi account 3”
}
}
},
{
“parameters”: {
“operation”: “create”,
“additionalFields”: {
“email”: “=”{{ $json.body.args.email }}
“firstName”: “={{ $json.body.args.name }}”,
“phone”: “={{ $json.body.args.name }}”
“sessionId”: {{ $json.sessionId }}
}
},
“type”: “n8n-nodes-base.highLevel”,
“typeVersion”: 1,
“position”: [240, 160],
“id”: “create-contact-ghl”,
“name”: “Create Contact in GHL”,
“credentials”: {
“highLevelApi”: {
“id”: “your-ghl-credential-id”,
“name”: “GoHighLevel account”
}
}
},
{
“parameters”: {
“operation”: “bookAppointment”,
“calendarId”: “YOUR_CALENDAR_ID”,
“locationId”: “YOUR_LOCATION_ID”,
“contactId”: “={{ $json.id }}”,
“startTime”: “={{ $json.body.args.time }}”,
“endTime”: “={{ new Date(new Date($json.body.args.time).getTime() + 60601000).toISOString() }}”,
“additionalFields”: {
“assignedUserId”: “”,
“title”: “={{ $json.body.args.service_type }} Appointment with {{ $json.body.args.name }}”
}
},
“type”: “n8n-nodes-base.highLevel”,
“typeVersion”: 1,
“position”: [480, 160],
“id”: “book-appointment-ghl”,
“name”: “Book Appointment in GHL”,
“credentials”: {
“highLevelApi”: {
“id”: “your-ghl-credential-id”,
“name”: “GoHighLevel account”
}
}
},
{
“parameters”: {
“sendTo”: “={{ $json.body.args.email }}”,
“subject”: “=Your appointment confirmation with Glow Spa Clinic”,
“emailType”: “text”,
“message”: “=Hello {{ $json.body.args.name }},\n\nThis is a confirmation that your {{ $json.body.args.service_type }} appointment is booked for {{ $json.body.args.time }}.\n\nWe look forward to seeing you soon!\n\nGlow Spa Clinic”
},
“type”: “n8n-nodes-base.gmailTool”,
“typeVersion”: 2.1,
“position”: [720, 160],
“id”: “send-confirmation-email”,
“name”: “Send Confirmation Email”,
“credentials”: {
“gmailOAuth2”: {
“id”: “56QuCItIyVZDzh6H”,
“name”: “Gmail account”
}
}
},
{
“parameters”: {},
“type”: “n8n-nodes-base.respondToWebhook”,
“typeVersion”: 1.4,
“position”: [960, -64],
“id”: “respond-webhook”,
“name”: “Respond to Webhook”
}
],
“connections”: {
“Webhook”: {
“main”: [[{ “node”: “AI Agent”, “type”: “main”, “index”: 0 }]]
},
“OpenAI Chat Model”: {
“ai_languageModel”: [[{ “node”: “AI Agent”, “type”: “ai_languageModel”, “index”: 0 }]]
},
“AI Agent”: {
“main”: [[{ “node”: “Create Contact in GHL”, “type”: “main”, “index”: 0 }]]
},
“Create Contact in GHL”: {
“main”: [[{ “node”: “Book Appointment in GHL”, “type”: “main”, “index”: 0 }]]
},
“Book Appointment in GHL”: {
“main”: [[{ “node”: “Send Confirmation Email”, “type”: “main”, “index”: 0 }]]
},
“Send Confirmation Email”: {
“main”: [[{ “node”: “Respond to Webhook”, “type”: “main”, “index”: 0 }]]
}
},
“active”: true,
“settings”: {
“executionOrder”: “v1”
},
“versionId”: “ghl-version-2025-10-31”
}

Describe the problem/error/question

What is the error message (if any)?

Please share your workflow

(Select the nodes on your canvas and use the keyboard shortcuts CMD+C/CTRL+C and CMD+V/CTRL+V to copy and paste the workflow.)

Share the output returned by the last node

Information on your n8n setup

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Looking at your workflow, it seems like you’re trying to create an AI agent that books appointments in GoHighLevel, but your workflow appears incomplete. Based on the search results from [community.n8n.io]( Issue Creating GoHighLevel Contacts Using n8n HTTP Request API ), many users face authentication issues with GHL API calls.

Here are the key steps to fix this:

• **Complete your workflow**: Your JSON shows only the webhook, AI agent, and OpenAI model nodes, but you’re missing the actual GHL tools/nodes that the AI agent references (“Create Contact in GHL” and “Book Appointment in GHL”)

• **Add proper GHL nodes**: Connect HTTP Request nodes or use the dedicated GoHighLevel node for creating contacts and booking appointments, ensuring proper authentication with your GHL API credentials

• **Test authentication first**: Before building the full automation, test a simple GHL contact creation using the HTTP Request node to verify your API credentials work correctly

• **Connect the tools**: Make sure your AI agent has access to the GHL tools by properly connecting them as sub-nodes in the agent configuration

Would you be able to share the complete workflow so I can see what specific GHL integration nodes you’re using?