Calendars API authentication uses API keys or OAuth tokens. Include credentials in the Authorization header for every request. The calendars.write scope enables create, update, and delete actions.
Store credentials securely in your app, rotate tokens regularly, and reuse the same credentials for GHL API calls. If you’re using Zapier, connect via the App Connector using OAuth or an API key.
– POST /calendars/ — create a calendar – PUT /calendars/:calendarId — update calendar – DELETE /calendars/:calendarId — delete calendar – calendars.readonly – GET /calendars/ — list calendars – GET /calendars/:calendarId — get calendar details – GET /calendars/:calendarId/free-slots — check availability – calendars/groups.readonly – GET /calendars/groups — list groups – calendars/groups.write – POST /calendars/groups — create a group – POST /calendars/groups/validate-slug — validate slug – DELETE /calendars/groups/:groupId — delete group – PUT /calendars/groups/:groupId — update group – PUT /calendars/groups/:groupId/status — change group status – calendars/resources.readonly – GET /calendars/resources/:resourceType
Trigger: when a new calendar is created or updated to sync with your app.
Actions: create, update, and delete calendars; read calendar details; fetch available slots.
Methods: POST /calendars/, PUT /calendars/:calendarId, GET /calendars/.
Key fields: calendarId, name, timeZone, color, slug
Trigger: when a calendar group is created or updated.
Actions: create/update/delete groups; assign calendars to groups; manage group slug.
Methods: POST /calendars/groups, PUT /calendars/groups/:groupId, DELETE /calendars/groups/:groupId, POST /calendars/groups/validate-slug, GET /calendars/groups.
Key fields: groupId, name, slug, status
Trigger: when a resource type is read or availability changes.
Actions: read resources; manage resource types; link resources to calendars.
Methods: GET /calendars/resources/:resourceType, GET /calendars/:calendarId/free-slots
Key fields: resourceType, resourceId, availability
Create calendars, groups, and resources without writing server code using prebuilt endpoints and webhooks.
Automate scheduling workflows with minimal setup and configuration.
Sync data between Calendars API and your app to keep calendars up to date in real time.
This glossary covers calendars, groups, resources, endpoints, and authentication processes used by the Calendars API.
A calendar is a collection of events and availability for scheduling, managed via the Calendars API.
A resource represents an item such as a room or person used for availability and allocation within a calendar.
An endpoint is a specific URL path exposed by the API to perform actions (GET, POST, PUT, DELETE).
A slug is a URL-friendly string used to identify a calendar group in API calls.
Automatically route and synchronize events between Calendars API and your app using webhooks and triggered actions.
Fetch free slots and suggest optimal meeting times across linked calendars to improve scheduling efficiency.
Control who can see or modify calendars by assigning calendars to groups with role-based access.
Register your app in the GHL developer portal and obtain an API key or OAuth token.
Choose a secure method (API key or OAuth) and set up token rotation and scopes.
Make your first API request to a sample endpoint, verify response, and handle errors gracefully.
The Calendars API supports API key and OAuth token authentication. Include credentials in the Authorization header. Use scopes like calendars.write for write operations. Rate limits apply per app. If using Zapier, connect via OAuth or API key in the app connector.
Endpoints include creating, updating, deleting, and listing calendars, groups, and resources. See the endpoint list above for specifics. You can also retrieve free slots with GET /calendars/:calendarId/free-slots.
Use the free-slots endpoint to check availability, and implement logic to choose optimal times. Consider caching results to minimize calls.
No-code builders can integrate calendars with GHL endpoints by using webhooks and prebuilt actions. However, for advanced workflows you may want to code custom logic.
Respect rate limits, batch requests when possible, and implement exponential backoff for retries. Always handle 4xx and 5xx errors gracefully.
Use error handling and retry logic, backoff strategies, and idempotent requests where possible. Log errors and monitor with your preferred observability tools.
API docs are available in the developer portal. If you need help, contact support or consult the knowledge base.
Due to high volume, we will be upgrading our server soon!
Complete Operations Catalog - 126 Actions & Triggers