Перейти к основному содержимому

Эндпоинты Doing

Модуль Doing управляет планированием служений, расписанием волонтёров, управлением задачами и автоматизациями. Он предоставляет инструменты для создания планов служений с временами и позициями, назначения волонтёров, управления датами блокировки, построения элементов порядка служения, подключения к внешним провайдерам контента и настройки автоматических рабочих процессов с условиями и действиями.

Базовый путь: /doing

Планы​

Базовый путь: /doing/plans

МетодПутьАутентификацияРазрешениеОписание
GET/JWT—Список всех планов церкви
GET/:idJWT—Получить план по ID
GET/ids?ids=JWT—Получить несколько планов по ID через запятую
GET/types/:planTypeIdJWT—Получить планы по типу плана
GET/presenterJWT—Получить планы на ближайшие 7 дней (режим презентации)
GET/public/current/:planTypeIdPublic—Получить текущий план для типа плана
POST/JWT—Создать или обновить планы (принимает один объект или массив)
POST/copy/:idJWT—Копировать план, включая позиции, времена, назначения и элементы порядка служения. Тело включает copyMode ("none", "positions", "all") и copyServiceOrder (boolean)
POST/autofill/:idJWT—Автозаполнение назначений волонтёров для плана. Тело: { teams: [{ positionId, personIds }] }
DELETE/:idJWT—Удалить план и все связанные времена, назначения, позиции и элементы плана

Пример: Копирование плана​

POST /doing/plans/copy/abc-123
Authorization: Bearer <token>

{
"serviceDate": "2026-03-01T10:00:00.000Z",
"copyMode": "all",
"copyServiceOrder": true
}
{
"id": "def-456",
"churchId": "church-1",
"serviceDate": "2026-03-01T10:00:00.000Z"
}

Типы планов​

Базовый путь: /doing/planTypes

Наследует базовый CRUD-класс (GET /, GET /:id, POST /, DELETE /:id — без проверки разрешений).

МетодПутьАутентификацияРазрешениеОписание
GET/JWT—Список всех типов планов
GET/:idJWT—Получить тип плана по ID
GET/ids?ids=JWT—Получить несколько типов планов по ID через запятую
GET/ministryId/:ministryIdJWT—Получить типы планов для служения
POST/JWT—Создать или обновить типы планов
DELETE/:idJWT—Удалить тип плана

Элементы плана​

Базовый путь: /doing/planItems

Управляет элементами порядка служения (заголовки, разделы, песни и т.д.), организованными в древовидную структуру «родитель-потомок».

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить элемент плана по ID
GET/ids?ids=JWT—Получить несколько элементов плана по ID через запятую
GET/plan/:planIdJWT—Получить все элементы плана (возвращает древовидную структуру)
GET/presenter/:churchId/:planIdPublic—Получить элементы плана для представления (возвращает древовидную структуру)
POST/JWT—Создать или обновить элементы плана
POST/sortJWT—Обновить порядок сортировки для элемента плана (пересортировка соседних)
DELETE/:idJWT—Удалить элемент плана

Лента плана​

Базовый путь: /doing/planFeed

Предоставляет ленту элементов плана для презентера. Если элементов плана нет, автоматически заполняется из ленты площадки Lessons.church, используя contentId плана.

МетодПутьАутентификацияРазрешениеОписание
GET/presenter/:churchId/:planIdPublic—Получить ленту плана для презентера (автозаполнение из ленты площадки, если пусто)

Позиции​

Базовый путь: /doing/positions

Наследует базовый CRUD-класс (GET /:id, POST /, DELETE /:id — без проверки разрешений).

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить позицию по ID
GET/ids?ids=JWT—Получить несколько позиций по ID через запятую
GET/plan/ids?planIds=JWT—Получить позиции для нескольких планов по ID через запятую
GET/plan/:planIdJWT—Получить все позиции для плана
POST/JWT—Создать или обновить позиции
DELETE/:idJWT—Удалить позицию

Времена​

Базовый путь: /doing/times

МетодПутьАутентификацияРазрешениеОписание
GET/allJWT—Список всех времён для церкви
GET/:idJWT—Получить время по ID
GET/plans?planIds=JWT—Получить времена для нескольких планов по ID через запятую
GET/plan/:planIdJWT—Получить все времена для плана
POST/JWT—Создать или обновить времена
DELETE/:idJWT—Удалить время

Назначения​

Базовый путь: /doing/assignments

МетодПутьАутентификацияРазрешениеОписание
GET/myJWT—Получить назначения текущего пользователя
GET/:idJWT—Получить назначение по ID
GET/plan/ids?planIds=JWT—Получить назначения для нескольких планов по ID через запятую
GET/plan/:planIdJWT—Получить все назначения для плана
POST/JWT—Создать или обновить назначения (по умолчанию статус «Не подтверждено»)
POST/accept/:idJWT—Принять назначение (должен быть назначенным лицом)
POST/decline/:idJWT—Отклонить назначение (должен быть назначенным лицом)
DELETE/:idJWT—Удалить назначение

Пример: Принятие назначения​

POST /doing/assignments/accept/assign-123
Authorization: Bearer <token>
{
"id": "assign-123",
"personId": "person-456",
"positionId": "pos-789",
"planId": "plan-abc",
"status": "Accepted"
}

Даты блокировки​

Базовый путь: /doing/blockoutDates

Наследует базовый CRUD-класс (GET /:id, DELETE /:id — без проверки разрешений).

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить дату блокировки по ID
GET/ids?ids=JWT—Получить несколько дат блокировки по ID через запятую
GET/myJWT—Получить даты блокировки текущего пользователя
GET/upcomingJWT—Получить все предстоящие даты блокировки для церкви
POST/JWT—Создать или обновить даты блокировки (по умолчанию personId текущего пользователя, если не указан)
DELETE/:idJWT—Удалить дату блокировки

Задачи​

Базовый путь: /doing/tasks

МетодПутьАутентификацияРазрешениеОписание
GET/JWT—Получить открытые задачи текущего пользователя
GET/:idJWT—Получить задачу по ID
GET/closedJWT—Получить закрытые задачи текущего пользователя
GET/timeline?taskIds=JWT—Получить данные хронологии для задач по ID через запятую
GET/directoryUpdate/:personIdJWT—Получить задачу обновления справочника для человека
POST/JWT—Создать или обновить задачи. Добавьте ?type=directoryUpdate для обработки задач обновления справочника (автозагрузка фотографий)
POST/loadForGroupsJWT—Загрузить задачи для конкретных групп. Тело: { groupIds: [], status: "Open" }

Автоматизации​

Базовый путь: /doing/automations

МетодПутьАутентификацияРазрешениеОписание
GET/JWT—Список всех автоматизаций церкви
GET/:idJWT—Получить автоматизацию по ID
GET/checkPublic—Запустить проверку всех автоматизаций
POST/JWT—Создать или обновить автоматизации
DELETE/:idJWT—Удалить автоматизацию

Действия​

Базовый путь: /doing/actions

Действия определяют, что происходит при срабатывании автоматизации.

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить действие по ID
GET/automation/:idJWT—Получить все действия для автоматизации
POST/JWT—Создать или обновить действия
DELETE/:idJWT—Удалить действие

Условия​

Базовый путь: /doing/conditions

Условия определяют критерии, запускающие автоматизацию.

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить условие по ID
GET/automation/:idJWT—Получить все условия для автоматизации
POST/JWT—Создать или обновить условия
DELETE/:idJWT—Удалить условие

Конъюнкции​

Базовый путь: /doing/conjunctions

Конъюнкции связывают несколько условий в автоматизации (логика И/ИЛИ).

МетодПутьАутентификацияРазрешениеОписание
GET/:idJWT—Получить конъюнкцию по ID
GET/automation/:idJWT—Получить все конъюнкции для автоматизации
POST/JWT—Создать или обновить конъюнкции
DELETE/:idJWT—Удалить конъюнкцию

Авторизации провайдеров контента​

Базовый путь: /doing/contentProviderAuths

Наследует базовый CRUD-класс (GET /, GET /:id, POST /, DELETE /:id — без проверки разрешений).

Управляет записями OAuth-аутентификации для внешних провайдеров контента (напр., интеграции с программами для презентаций).

МетодПутьАутентификацияРазрешениеОписание
GET/JWT—Список всех авторизаций провайдеров контента
GET/:idJWT—Получить авторизацию провайдера контента по ID
GET/ids?ids=JWT—Получить несколько авторизаций провайдеров контента по ID через запятую
GET/ministry/:ministryIdJWT—Получить все авторизации провайдеров контента для служения
GET/ministry/:ministryId/:providerIdJWT—Получить запись авторизации для конкретного служения и провайдера
POST/JWT—Создать или обновить авторизации провайдеров контента
DELETE/:idJWT—Удалить авторизацию провайдера контента

Прокси провайдера​

Базовый путь: /doing/providerProxy

Проксирует запросы к внешним провайдерам контента (напр., ProPresenter, EasyWorship). Автоматически обновляет токены при их истечении.

МетодПутьАутентификацияРазрешениеОписание
POST/browseJWT—Просмотр файлов провайдера контента. Тело: { ministryId, providerId, path }
POST/getPresentationsJWT—Получить презентации от провайдера контента. Тело: { ministryId, providerId, path }
POST/getPlaylistJWT—Получить плейлист от провайдера контента. Тело: { ministryId, providerId, path, resolution }
POST/getInstructionsJWT—Получить инструкции для элемента контента. Тело: { ministryId, providerId, path }
POST/getExpandedInstructionsJWT—Получить расширенные инструкции для элемента контента. Тело: { ministryId, providerId, path }

Связанные страницы​