Все ноды/Integrations/Calendar

Запрос к календарю

REPORT calendar-query для VEVENT или VTODO в диапазоне времени.

Запрос к календарю
Calendar storeSuccess
Error

Тип в графе: calendar_query

Exec

Можно включить ветку ошибки (expose_error_output) и обработать сбой отдельным путём.

Порты можно разделить на исполнение и данные (split ports).

Как попробовать

Минимальный рабочий воркфлоу

Вход
Запрос к календарю
Конфигурация CalDAV
Выход
  • Исполнение
  • Данные
  • Исполнение + данные
Нажмите «Скопировать ноды», откройте редактор и нажмите Ctrl+V на холсте.

Перед запуском выберите своё подключение или базу знаний — в графе стоит REPLACE_ME.

Как применять

С этой ноды начинается почти любой календарный граф: остальные работают по href события, а выдаёт href именно она. Если адреса уже известны, за телами событий в один запрос сходит Мультизапрос календаря. Если нужны только занятые интервалы, без заголовков и участников, — Занятость календаря.

Как это работает

Нода делает запрос по одной коллекции за диапазон времени. Начало и конец обязательны, формат — ISO 8601 (2026-07-01T00:00:00Z); значение без часового пояса читается как UTC, конец должен быть позже начала, длина диапазона — не больше 366 дней. Поля шаблонные, поэтому границы обычно вычисляются выше по графу.

Пустой «URL коллекции календаря» означает календарь по умолчанию из подключения. «Тип компонента» выбирает, что искать: события (VEVENT) или задачи (VTODO), — в одном запуске что-то одно.

На выходе component и events — массив записей с полями href, etag, uid, summary, dtstart, dtend, all_day, timezone, rrule, rdates, exdates, recurrence_id, status, sequence, last_modified. В шаблоне: {{ nodes.<id>.output.events[0].href }}.

Частые ошибки

  • Конец диапазона, заданный датой, отрезает последний день. 2026-07-31 читается как полночь, поэтому события 31 июля в выборку не попадут. Пишите 2026-07-31T23:59:59Z.
  • Повторяющееся событие — одна запись. Нода не раскрывает серию по вхождениям: правило лежит в rrule, а dtstart/dtend относятся к первому компоненту ресурса. Полный документ со всеми переопределениями отдаёт Получить событие календаря.
  • Больше 500 событий молча обрезаются. Ошибки не будет — сужайте диапазон или делите его на части.
  • Диапазон длиннее 366 дней. Нода остановится с кодом VALIDATION, не отправив запрос.
  • Пустой результат — это успех. Нода завершается с events: []; ветвление «нашлось / не нашлось» делайте нодой Если / Иначе, а не веткой ошибки.

Входы

ПортПроводДанныеПримечания
Calendar storecalendar_storeДанныеdata

обязателен

Выходы

ПортПроводДанныеПримечания
SuccessoutputИсполнение + данныеexecute_dataobject
Erroron_errorИсполнение + данныеexecute_data

показывается, когда expose_error_output = true

Настройки

ПолеТипПо умолчаниюОписание
Подключение CalDAVconnection_idstring""

Сохранённое подключение CalDAV из воркспейса: простому календарному воркфлоу не нужна отдельная нода CalDAV Config. Нода, подключённая к порту 'calendar_store', имеет приоритет над этим полем.

подключение: caldavперекрывается портом: calendar_store

URL коллекции календаряcalendar_urlstring""

URL коллекции, с которой работаем, например https://cloud.example/remote.php/dav/calendars/user/personal/. Оставьте пустым, чтобы взять URL календаря по умолчанию из подключённого CalDAV-подключения; узнать URL можно нодой List Calendars.

поддерживает шаблоны

Начало диапазонаtime_startstring""

Начало диапазона, ISO 8601, включительно. Пример: 2026-07-01T00:00:00Z (значение без часового пояса читается как UTC).

поддерживает шаблоны

Конец диапазонаtime_endstring""

Конец диапазона, ISO 8601. Должен быть позже начала; диапазон не может превышать 366 дней. Пример: 2026-07-31T23:59:59Z

поддерживает шаблоны

Тип компонентаcomponentstringVEVENT

Что искать: события календаря (VEVENT) или задачи (VTODO).

Варианты: VEVENT — События (VEVENT), VTODO — Задачи (VTODO)

Общие поля

Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.

  • expose_error_output — Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этого шага.
  • split_ports_in — Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.
  • split_ports_out — Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.