Все ноды/Integrations/Calendar

Календарь: удалить событие

DELETE ресурса календаря.

Календарь: удалить событие▶
Подключение CalDAVИтог действия
Ошибка

Тип в графе: calendar_delete_event

Exec

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

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

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

Минимальный рабочий сценарий

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

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

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

Удаляет объект календаря по адресу. Отменить встречу «мягко», оставив её в календаре с пометкой, можно иначе: Изменить событие календаря не умеет менять статус, а Записать событие календаря — умеет, у него есть поле «Статус» со значением «Отменено». Удаление стирает объект без следа.

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

Нода обращается к серверу по полю «Ссылка на событие». Адрес берётся из Запроса к календарю или Получить событие календаря как есть.

Пустой ETag означает «удалить то, что лежит по адресу сейчас». Заполненный превращается в условие: если событие успели изменить, сервер ответит 412 (error_code PRECONDITION_FAILED) и удаление не состоится. На выходе { "ok": true } — других подтверждений у операции нет.

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

  • Удаляется весь ресурс. У повторяющейся встречи это вся серия целиком. Снять одно вхождение удалением нельзя — для этого нужно дописать в тело события EXDATE и записать его заново.
  • Повторный запуск — ошибка. Второе удаление по тому же адресу получит 404 и остановится с кодом NOT_FOUND. Если шаг может выполниться дважды (повтор хода, ветка ретрая), включите «Выход ошибки» и считайте этот код успехом.
  • Опечатка в адресе выглядит так же. NOT_FOUND означает «по этому адресу ничего нет», а не «событие уже удалено» — проверьте, что подставился именно href, а не UID.
  • Участники ничего не узнают. Удаление ресурса не рассылает уведомлений; отмену отправляет Планирование в календаре с операцией «Отмена (CANCEL)».
  • Ошибка останавливает запуск. Ветки для сбоя у ноды по умолчанию нет: без включённого «Выхода ошибки» неудачное удаление роняет весь ход.

Входы

ПортПроводДанныеПримечания
Подключение CalDAVcalendar_storeДанныеdata—

обязателен

Выходы

ПортПроводДанныеПримечания
Итог действияoutputИсполнение + данныеexecute_dataobject
Ошибкаon_errorИсполнение + данныеexecute_data—

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

Настройки

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

Сохранённое подключение CalDAV из пространства: простому календарному сценарию не нужна отдельная нода «Календарь: подключение CalDAV». Нода, подключённая к порту «Подключение CalDAV», имеет приоритет над этим полем.

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

Ссылка на событиеhrefstring""

Путь или абсолютный URL объекта календаря — ровно в том виде, в каком его вернула нода «Календарь: найти события» или «Календарь: получить события» ({{ nodes.<query>.output.events[0].href }}). Относительный путь разрешается относительно базового URL подключения. Пример: /remote.php/dav/calendars/user/personal/9f1c-1234.ics

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

Дополнительно
Версия (ETag)etagstring""

Токен оптимистичной блокировки из предыдущего Get/Query. Пусто — удаляется то, что лежит по адресу сейчас; с устаревшим токеном сервер ответит 412 (error_code=PRECONDITION_FAILED), а не сотрёт чужую правку.

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

Общие поля

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

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