Cal.com
Что это
Cal.com — сервис онлайн-бронирования встреч с открытым исходным кодом (аналог Calendly). Интеграция подключается по личному API-ключу и позволяет сценарию бота получать список типов событий пользователя, проверять свободные слоты и создавать или отменять бронирования прямо из диалога — например, чтобы бот сам записывал клиента на консультацию.
Требования
- Аккаунт в Cal.com с хотя бы одним настроенным типом событий (event type).
- API-ключ из настроек аккаунта — раздел Settings → Developer → API keys.
Как подключить
- Войдите в Cal.com и откройте Settings → Developer → API keys.
- Нажмите Add и скопируйте созданный ключ (тестовый начинается с
cal_, боевой — сcal_live_). - В конструкторе откройте Интеграции → найдите карточку Cal.com → Подключить.
- Вставьте ключ в поле подключения и сохраните.
- Проверьте подключение кнопкой Проверить соединение — она вызывает список типов событий.
Доступные операции
| Операция | Что делает |
|---|---|
| Список типов событий | Возвращает типы событий (id, название, slug, длительность) — своих или указанного username |
| Получить свободные слоты | Возвращает свободные окна для типа события в заданном периоде и часовом поясе |
| Создать бронирование | Бронирует слот для участника (имя, email, часовой пояс, время начала) |
| Отменить бронирование | Отменяет бронирование по его UID, с необязательной причиной |
Ограничения
- Лимит Cal.com API: 120 запросов в минуту на ключ (можно увеличить по запросу к Cal.com).
- Каждая операция обращается к своей версии API (
cal-api-version) — это внутренняя деталь интеграции, настраивать не нужно. - Время в операциях передаётся в формате ISO 8601 (желательно в UTC, с
Zна конце).
Особенности и примечания
Перед бронированием почти всегда нужен
event_type_id— получите его через операцию «Список типов событий» и передайте в переменной в следующие шаги сценария.
API-ключ привязан к конкретному аккаунту Cal.com: операции без
usernameвозвращают/используют данные владельца ключа.
