- CategoryBookings
- AuthPrivate integration token
Overview
Open /integrations in the dashboard and choose GHL Calendar. The form's 'Api Key' field is used for the calendar credential. GoHighLevel has two connection surfaces in MessageMind. The GHL Calendar connection uses a v2 Private Integration Token to check selected calendars, find availability, create or update a contact and create an appointment. Separately, GoHighLevel outbound webhooks can start MessageMind lead automations; the webhook delivery rules below apply to that inbound surface.
What MessageMind can do with it
- Receive GoHighLevel outbound webhooks as inbound lead deliveries and route them into the account's automations.
- Deduplicate byte-identical repeat deliveries that arrive inside a short window, while still letting a legitimately different follow-up delivery for the same lead fire.
- Read selected GoHighLevel calendars and their live availability.
- Create or update the booking contact and create an appointment in the selected calendar.
Requirements
- For inbound lead automation, a GoHighLevel workflow configured to send an outbound webhook to the MessageMind lead endpoint for the connected account.
- For calendar bookings, a GoHighLevel v2 Private Integration Token with access to the selected calendar and the contact and appointment operations.
How to connect
- Open /integrations and choose the GHL Calendar card. Enter your GoHighLevel v2 Private Integration Token in the field labelled 'Api Key'.
- Load the calendar choices, select the calendars and required booking fields the AI should use, then save the selection.
- For inbound lead automation, configure a separate GoHighLevel outbound webhook to the MessageMind lead endpoint for your account.
Authentication and permissions
- Mechanism
- The calendar connection sends the v2 Private Integration Token as a Bearer credential to the GoHighLevel v2 API. Inbound lead webhooks are a separate delivery surface.
- Credentials
- The calendar connection stores the token and selected calendars. Inbound lead-webhook setup does not replace this calendar credential.
Available data and actions
Reads
- The body GoHighLevel posts on each webhook delivery (for example a minimal contact delivery, then a richer form delivery).
- Selected calendar details and live free slots through the GoHighLevel v2 API.
Writes
- Create or update the contact used for the booking.
- Create an appointment in the selected GoHighLevel calendar.
AI agent use cases
- Treat a new GoHighLevel contact or form submission as the entry point of a MessageMind automation (for example, kick off a first-contact message in WhatsApp or SMS when a lead lands in GoHighLevel).
- Let GoHighLevel remain the system of record while MessageMind handles the conversation that follows the lead event.
Configuration
- Byte-identical deliveries inside a ten-minute window are treated as repeats and do not re-fire the automation. Different bodies always fire, and an identical body after the window fires again.
- A failed delivery is retry-safe: MessageMind treats the handler as the source of truth for whether anything started, so GoHighLevel can be configured to retry.
Example workflows
Lead captured in GoHighLevel starts a MessageMind conversation
- A lead is created or a form is submitted in GoHighLevel.
- The configured GoHighLevel workflow fires its outbound webhook to the MessageMind lead endpoint.
- MessageMind records the delivery, deduplicates against recent identical bodies, and fires the lead automation for the receiving account.
- The automation starts the first outbound message to the lead on the chosen channel.
Limitations
- Calendar booking and inbound webhook ingestion are separate workflows. A lead webhook alone does not configure calendar access; the calendar connection requires its own v2 token and saved calendar selection.
- GoHighLevel deliveries carry no stable delivery id, so dedup relies on hashing the body inside a ten-minute window. Changes to the body shape cause a delivery to count as new.
- The dashboard's default Disabled status represents a disconnected integration; it is not evidence that the connector is unreleased.
Troubleshooting
A GoHighLevel delivery never triggered the MessageMind automation.
Confirm the GoHighLevel outbound webhook is pointed at the correct MessageMind lead endpoint for the account and that the account has an automation listening for the GoHighLevel webhook trigger.
A repeat GoHighLevel delivery did not fire a second time.
Byte-identical repeats inside a ten-minute window are deduped by design. Changing any field in the delivery body, or waiting until the window has passed, lets the next delivery fire.
Disconnect and reconnect
- Disable the calendar connection in MessageMind and revoke its Private Integration Token in GoHighLevel when calendar access is no longer needed.
- Separately remove or disable the outbound webhook in any GoHighLevel workflow that targets the MessageMind lead endpoint.