Skip to main content
The Calendars API provides complete control over calendar configuration and appointment scheduling in the HoopAI Platform. Use it to create and configure calendars, query available free slots, book and manage appointments, create block slots, define calendar groups, manage per-calendar notification settings, configure scheduling resources such as rooms and equipment, and build reusable availability schedules that can be applied across multiple calendars.

Base URL

https://services.leadconnectorhq.com

Authentication

All endpoints require a Bearer token and an API version header.
Authorization: Bearer <access_token>
Version: 2021-07-28
See OAuth 2.0 to obtain an access token.

OAuth scopes

ScopeAccess
calendars.readonlyRead calendars, groups, resources, schedules, and notifications
calendars.writeCreate, update, and delete calendars, groups, resources, schedules, and notifications
calendars/events.readonlyRead calendar events, appointments, and blocked slots
calendars/events.writeCreate, update, and delete appointments and blocked slots

Quick start

Query available free slots for a calendar:
curl -X GET "https://services.leadconnectorhq.com/calendars/{calendarId}/free-slots?locationId=sadadya1u12basyhasd&startDate=1716230400000&endDate=1716316800000&timezone=America/New_York" \
  -H "Authorization: Bearer <access_token>" \
  -H "Version: 2021-07-28"

Endpoints

MethodPathDescription
GET/calendars/Get calendars
POST/calendars/Create calendar
GET/calendars/{calendarId}Get calendar
PUT/calendars/{calendarId}Update calendar
DELETE/calendars/{calendarId}Delete calendar
GET/calendars/{calendarId}/free-slotsGet free slots
GET/calendars/groupsGet groups
POST/calendars/groupsCreate calendar group
POST/calendars/groups/validate-slugValidate group slug
GET/calendars/groups/{groupId}Get group
PUT/calendars/groups/{groupId}Update group
DELETE/calendars/groups/{groupId}Delete group
PUT/calendars/groups/{groupId}/statusDisable group
GET/calendars/eventsGet calendar events
GET/calendars/blocked-slotsGet blocked slots
POST/calendars/events/appointmentsCreate appointment
GET/calendars/events/appointments/{eventId}Get appointment
PUT/calendars/events/appointments/{eventId}Update appointment
POST/calendars/events/block-slotsCreate block slot
PUT/calendars/events/block-slots/{eventId}Update block slot
DELETE/calendars/events/{eventId}Delete event
GET/calendars/appointments/{appointmentId}/notesGet notes
POST/calendars/appointments/{appointmentId}/notesCreate note
PUT/calendars/appointments/{appointmentId}/notes/{noteId}Update note
DELETE/calendars/appointments/{appointmentId}/notes/{noteId}Delete note
GET/calendars/resources/{resourceType}List calendar resources
POST/calendars/resources/{resourceType}Create calendar resource
GET/calendars/resources/{resourceType}/{id}Get calendar resource
PUT/calendars/resources/{resourceType}/{id}Update calendar resource
DELETE/calendars/resources/{resourceType}/{id}Delete calendar resource
GET/calendars/{calendarId}/notificationsGet notifications
POST/calendars/{calendarId}/notificationsCreate notification
GET/calendars/{calendarId}/notifications/{notificationId}Get notification
PUT/calendars/{calendarId}/notifications/{notificationId}Update notification
DELETE/calendars/{calendarId}/notifications/{notificationId}Delete notification
GET/calendars/schedules/searchList user availability schedules
POST/calendars/schedulesCreate user availability schedule
GET/calendars/schedules/{id}Get user availability schedule
PUT/calendars/schedules/{id}Update user availability schedule
DELETE/calendars/schedules/{id}Delete user availability schedule
PUT/calendars/schedules/{id}/associations/{calendarId}Apply availability schedule to a calendar
DELETE/calendars/schedules/{id}/associations/{calendarId}Remove availability schedule from a calendar
  • Contacts API — Retrieve contact appointments and link bookings to contact records
  • Conversations API — Send appointment confirmation and reminder messages
  • Users API — Assign calendars and schedules to platform users
Last modified on March 4, 2026