GoHighLevel Calendar via HTTP Request Node not working

Hey guys and gals. I would certainly appreciate any help here. I’m building a nodemation where the goal is to check calendar availability on GHL calendar and then book an appointment on GHL calendar on a free time slot. Problem is, it not working. I’m getting the following error message: HTTP 404 There was an error: “The resource you are requesting could not be found” And when I test it over in the chat, this is the message I’m getting: “It seems there was an issue accessing the calendar to check availability. Unfortunately, I am unable to assist you at the moment.”

Here’s the workflow:

{
“meta”: {
“instanceId”: “60c9f06ed3529f7b94d0f1b400047dd7515a0a84cbac0f0a26904d33b22fa03d”
},
“nodes”: [
{
“parameters”: {
“options”: {}
},
“id”: “30a8fe82-c910-4ddb-a23c-e6cf306f01fd”,
“name”: “OpenAI Chat Model”,
“type”: “@n8n/n8n-nodes-langchain.lmChatOpenAi”,
“typeVersion”: 1,
“position”: [
920,
720
],
“credentials”: {
“openAiApi”: {
“id”: “FYkZun5sKDEKSWGw”,
“name”: “OpenAi account”
}
}
},
{
“parameters”: {
“toolDescription”: “=Call this tool to get the appointment availability for a particular period on the calendar. The tool may refer to availability as "Free" or "Busy".\n\nUse {timeMin} and {timeMax} to specify the window for the availability query. For example, to get availability for November 20, 2024 in Bogota, you could set:\n\n{timeMin} to 2024-11-20T08:00:00\n{timeMax} to 2024-11-20T18:00:00\n\nIf the tool returns an empty response, it means that something went wrong. It does not mean that there is no availability.”,
“method”: “POST”,
“url”: “https://oauth.n8n.cloud/oauth2/callback”,
“authentication”: “predefinedCredentialType”,
“nodeCredentialType”: “highLevelOAuth2Api”,
“sendBody”: true,
“specifyBody”: “json”,
“jsonBody”: “={\n "timeMin": "{timeMin}",\n "timeMax": "{timeMax}",\n "timeZone": "America/Bogota",\n "groupExpansionMax": 20,\n "calendarExpansionMax": 10,\n "items": [\n {\n "id": "[email protected]"\n }\n ]\n}”
},
“id”: “c99e8970-7369-4c47-ba22-a44fb1cf49ed”,
“name”: “Get Calendar Availability”,
“type”: “@n8n/n8n-nodes-langchain.toolHttpRequest”,
“typeVersion”: 1.1,
“position”: [
1160,
780
],
“credentials”: {
“googleCalendarOAuth2Api”: {
“id”: “UkMSmRaEVwSIHenr”,
“name”: “Google Calendar je.rodriguezx”
},
“highLevelOAuth2Api”: {
“id”: “tdLhfrzSoGOi85tb”,
“name”: “HighLevel - Alpha”
}
}
},
{
“parameters”: {
“toolDescription”: "Call this tool to book an appointment in the calendar. ",
“method”: “POST”,
“url”: “https://www.googleapis.com/calendar/v3/calendars/[email protected]/events”,
“authentication”: “predefinedCredentialType”,
“nodeCredentialType”: “googleCalendarOAuth2Api”,
“sendBody”: true,
“specifyBody”: “json”,
“jsonBody”: “={\n "summary": "Appointment with {userName}",\n "start": {\n "dateTime": "{startTime}",\n "timeZone": "America/Bogota"\n },\n "end": {\n "dateTime": "{endTime}",\n "timeZone": "America/Bogota"\n },\n "attendees": [\n {"email": "[email protected]"},\n {"email": "{userEmail}"}\n ]\n}”,
“placeholderDefinitions”: {
“values”: [
{
“name”: “userName”,
“description”: “The full name of the user making the appointment, like Mike Smith”
},
{
“name”: “startTime”,
“description”: “The start time of the event in America/Bogota time zone. For example 2024-11-02T12:00:00-05:00.”
},
{
“name”: “endTime”,
“description”: “The end time of the event in America/Bogota time zone. It should always be 45 minutes after the startTime”
},
{
“name”: “userEmail”,
“description”: “The email address of the userName.”
}
]
}
},
“id”: “6a4195cf-593f-4003-9574-475ff81a009d”,
“name”: “Book Time Slot”,
“type”: “@n8n/n8n-nodes-langchain.toolHttpRequest”,
“typeVersion”: 1.1,
“position”: [
1300,
780
],
“credentials”: {
“googleCalendarOAuth2Api”: {
“id”: “UkMSmRaEVwSIHenr”,
“name”: “Google Calendar je.rodriguezx”
}
}
},
{
“parameters”: {
“options”: {}
},
“id”: “e6e7ba5c-2c76-48d8-81d2-67adddc2f1ff”,
“name”: “When chat message received”,
“type”: “@n8n/n8n-nodes-langchain.chatTrigger”,
“typeVersion”: 1.1,
“position”: [
800,
560
],
“webhookId”: “6dfd45dc-b747-4f35-932a-786c881f86e9”
},
{
“parameters”: {
“options”: {
“systemMessage”: “=You are an efficient and courteous assistant tasked with scheduling appointments with Jorge from Alpha Digital.\n\nWhen users mention an appointment or meeting, the are referring to a meeting with Jorge.\nWhen users refer to the calendar or "your schedule", they are referring to Jorge’s Calendar.\n\nYou can use various tools to access and manage Jorge’s calendar. Your primary goal is to assist users in successfully booking an appointment with Jorge, ensuring no scheduling conflicts. Only book an appointment if the requested time slot is available (the tool may refer to this as "Free").\n\nAlways respond in America/Bogota, timezone.\n\nToday’s date is {{ $today.format(‘yyyy-MM-dd’) }}\n\nAppointments are always 45 minutes long.\n\nProvide accurate information at all times. If the tools are not functioning correctly, inform the user that you are not able to assist them at the moment.”
}
},
“id”: “499621ec-c476-4de2-9119-537756eaa14d”,
“name”: “AI Agent”,
“type”: “@n8n/n8n-nodes-langchain.agent”,
“typeVersion”: 1.6,
“position”: [
1000,
560
]
},
{
“parameters”: {},
“id”: “b8a07033-18da-49af-b948-edb3c1c8ea55”,
“name”: “Window Buffer Memory”,
“type”: “@n8n/n8n-nodes-langchain.memoryBufferWindow”,
“typeVersion”: 1.2,
“position”: [
1040,
720
]
}
],
“connections”: {
“OpenAI Chat Model”: {
“ai_languageModel”: [
[
{
“node”: “AI Agent”,
“type”: “ai_languageModel”,
“index”: 0
}
]
]
},
“Get Calendar Availability”: {
“ai_tool”: [
[
{
“node”: “AI Agent”,
“type”: “ai_tool”,
“index”: 0
}
]
]
},
“Book Time Slot”: {
“ai_tool”: [
[
{
“node”: “AI Agent”,
“type”: “ai_tool”,
“index”: 0
}
]
]
},
“When chat message received”: {
“main”: [
[
{
“node”: “AI Agent”,
“type”: “main”,
“index”: 0
}
]
]
},
“Window Buffer Memory”: {
“ai_memory”: [
[
{
“node”: “AI Agent”,
“type”: “ai_memory”,
“index”: 0
}
]
]
}
},
“pinData”: {}
}

Following is my n8n setup

  • n8n version: 1.65.2
  • Database: SQLite
  • Running n8n via n8n cloud
  • Operating system: WIndows 11

It looks like your topic is missing some important information. Could you provide the following if applicable.

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

Odd. I made sure to include that information. Anyways. Here it is again:

1 Like

Just solved it!!! thnx

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.