Reference
GoHighLevel API reference
The GoHighLevel REST API is served from https://services.leadconnectorhq.com, authenticates with an OAuth access token or a Private Integration Token, and requires a Version: 2021-07-28 header on every request. This reference covers 53 endpoints in depth — parameters, response fields, required scopes, and a curl you can run — plus all 56 webhook payloads and 124 OAuth scopes.
Hylo indexes 645 GoHighLevel endpoints in total, 576 of them from HighLevel's official documentation. The 53 published here are the ones with a complete, verified schema — pages get added as more clear that bar, rather than thinned out to pad the count. Schemas last verified 22 June 2026.
Endpoints by category
Calendars API
17 endpointsAvailability, booking, and appointments — including the free-slots endpoint people search for as “availability”.
Contacts API
15 endpointsCreate and update contacts, manage tags and followers, attach notes and tasks.
Conversations API
21 endpointsSend messages, manage threads, handle file uploads, and post review replies.
Webhooks and authorization
Every documented endpoint
All 53, grouped by category.
Calendars
- POSTCreate Calendar
- POSTCreate Calendar Resource
- POSTCreate Event Notification
- POSTCreate Schedule
- PUTEdit Block Slot
- GETFetch Calendar Resources
- GETFind Event Notification
- GETGet All Schedules
- GETGet Calendar Resource
- GETGet Calendars
- GETGet Event Notification
- GETGet Groups
- GETGet Slots
- PUTUpdate Calendar Resource
- PUTUpdate Event Notification
- PUTUpdate Schedule
- POSTValidate Groups Slug
Contacts
- POSTAdd Followers Contact
- POSTAdd Remove Contact From Business
- POSTAdd Tags
- POSTCreate Association
- POSTCreate Contact
- POSTCreate Note
- POSTCreate Task
- GETGet Contactsdeprecated
- GETGet Duplicate Contact
- DELETERemove Followers Contact
- DELETERemove Tags
- PUTUpdate Contact
- PUTUpdate Note
- PUTUpdate Task
- POSTUpsert Contact
Conversations
- POSTAdd An Inbound Message
- POSTAdd An Outbound Message
- PUTAdd Message Attachments
- POSTComplete File Upload
- POSTCreate Conversation
- POSTCreate Custom Subtype
- GETExport Messages By Location
- GETGet All Custom Subtypes
- GETGet Contact Unsubscription Status
- GETGet Conversation
- GETGet Message Transcription
- POSTInitiate File Upload
- POSTLive Chat Agent Typing
- GETSearch Conversation
- POSTSend A New Message
- POSTSend Review Reply
- PUTUpdate Conversation
- PUTUpdate Custom Subtype
- PUTUpdate Message Status
- POSTUpload File Attachments
- POSTUser Subscription Change
Common questions
- What is the GoHighLevel API base URL?
- All requests go to https://services.leadconnectorhq.com. Every call needs an Authorization: Bearer header carrying an OAuth access token or a Private Integration Token, plus a Version: 2021-07-28 header.
- How do I authenticate with the GoHighLevel API?
- Two options. A Private Integration Token is created inside one sub-account and is the fastest path for a single-location integration. An OAuth app is installed per location from the marketplace and suits anything distributed. Both carry the same scope names, so an endpoint's scope requirement is identical either way.
- Does the GoHighLevel API use sub-account or agency tokens?
- It depends on the endpoint. Most operate on data inside one location and take a sub-account token; a smaller set operates at the company level and needs an agency token. Each endpoint page states which one its schema specifies.
- Can an AI agent call the GoHighLevel API directly?
- Yes, given the schemas. Hylo is an MCP server that hands an AI agent the endpoint catalog, request shapes, and scope requirements, then executes approved calls against a connected sub-account — so the agent picks the right endpoint instead of guessing at one.
Skip the schema lookup
Every schema on this site is also available to your AI agent over MCP. Ask for what you want in plain English — Hylo picks the endpoint, fills the body from the real schema, and executes against your own sub-account once you approve.