GoHighLevel Calendars API
Edit Block Slot
/calendars/events/block-slots/:eventIdPUT /calendars/events/block-slots/:eventId Update block slot by ID It takes 1 path parameter and 6 body fields, requires the calendars/events.write scope and authenticates with a sub-account (location) token.
Request and authentication
- Method
PUT- Full URL
https://services.leadconnectorhq.com/calendars/events/block-slots/:eventId- Scopes
calendars/events.write- Token type
- Sub-account (location) token
- Accepted auth
- OAuth Access Token, Private Integration Token
- API version header
Version: 2021-07-28- Schema verified
- 22 June 2026
Notes from the field
- Set EITHER `calendarId` OR `assignedUserId`, never both (GHL rejects both).
Path parameters
Substituted into the URL. Required by definition.
| Name | Type | Description |
|---|---|---|
eventIdrequired | string | — |
Request body
JSON body fields. Nested objects are shown indented under their parent.
| Name | Type | Description |
|---|---|---|
title | string | Title Example: |
calendarIdrequired | string | Either calendarId or assignedUserId can be set, not both. Example: |
assignedUserId | string | Either calendarId or assignedUserId can be set, not both. Example: |
locationIdrequired | string | Location Id Example: |
startTime | string | Start Time Example: |
endTime | string | End Time Example: |
Response fields
Top-level fields returned on a successful call.
| Name | Type | Description |
|---|---|---|
idrequired | string | Id Example: |
locationIdrequired | string | Location Id Example: |
titlerequired | string | Title Example: |
startTimerequired | object | Start Time Example: |
endTimerequired | object | End Time Example: |
calendarId | string | Calendar id Example: |
assignedUserId | string | Assigned User Id Example: |
Example request
Copy-paste ready. Swap YOUR_TOKEN for your access token or Private Integration Token, and the sample ID for your own.
curl -X PUT 'https://services.leadconnectorhq.com/calendars/events/block-slots/YOUR_EVENTID' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Version: 2021-07-28' \
-H 'Content-Type: application/json' \
-d '{
"calendarId": "CVokAlI8fgw4WYWoCtQz",
"locationId": "C2QujeCh8ZnC7al2InWR"
}'Skip the schema lookup
Hylo gives your AI agent this schema — and the other 52 documented here — without you looking anything up. Ask in plain English; it picks the endpoint, fills the body, and can run the call against your own sub-account.
More calendars endpoints
- Create CalendarPOST /calendars/
- Create Calendar ResourcePOST /calendars/resources/:resourceType
- Create Event NotificationPOST /calendars/:calendarId/notifications
- Create SchedulePOST /calendars/schedules
- Fetch Calendar ResourcesGET /calendars/resources/:resourceType
- Find Event NotificationGET /calendars/:calendarId/notifications/:notificationId
- All GoHighLevel Calendars endpointsCategory index
- GoHighLevel API referenceEvery category, webhooks, and OAuth scopes