Перейти к содержанию

API

Подключаемые приложения

Метод Путь Описание
GET /api/extensions Список приложений и состояние подключений
PATCH /api/extensions/{id} Включить или отключить пункт меню
POST /api/extensions/deploy Запустить развёртывание Docker-образа; возвращает job_id
GET /api/extensions/jobs/{job_id}/events SSE-журнал развёртывания

Проекты

Метод Путь Описание
GET /api/projects Список проектов
POST /api/projects Создать проект
GET /api/projects/{id} Детали проекта
PATCH /api/projects/{id} Обновить проект
DELETE /api/projects/{id} Удалить проект (+ файлы из хранилища)

Комментарии проектов

Метод Путь Описание
GET /api/projects/{id}/comments Получить комментарии проекта
POST /api/projects/{id}/comments Добавить комментарий
PUT /api/projects/{id}/comments/{comment_id} Изменить комментарий
DELETE /api/projects/{id}/comments/{comment_id} Удалить комментарий
POST /api/projects/{id}/comments/read Отметить обсуждение прочитанным

Разделы

Метод Путь Описание
GET /api/projects/{id}/sections Разделы проекта
POST /api/projects/{id}/sections Создать раздел
PATCH /api/projects/{id}/sections/reorder Изменить порядок разделов
PATCH /api/projects/{id}/sections/{sec_id} Переименовать / обновить раздел
DELETE /api/projects/{id}/sections/{sec_id} Удалить раздел вместе со всеми группами, элементами и файлами

Документы и файлы

Метод Путь Описание
GET /api/projects/{id}/documents Группы без раздела
POST /api/projects/{id}/documents Создать группу
PATCH /api/projects/{id}/documents/{doc_id} Обновить группу / переместить в раздел
DELETE /api/projects/{id}/documents/{doc_id} Удалить группу (+ файлы из хранилища)
POST /api/projects/{id}/documents/{doc_id}/items Добавить ссылку, файл или заметку
PATCH /api/projects/{id}/documents/{doc_id}/items/{item_id} Редактировать item
DELETE /api/projects/{id}/documents/{doc_id}/items/{item_id} Удалить item (+ файл из хранилища)
GET /api/projects/{id}/documents/{doc_id}/items/{item_id}/download Скачать файл
GET /api/projects/{id}/documents/{doc_id}/items/{item_id}/preview Предпросмотр файла
GET /api/projects/{id}/documents/{doc_id}/items/{item_id}/collabora URL iframe для редактирования в Collabora Online
POST /api/projects/{id}/documents/{doc_id}/items/{item_id}/open Открыть файл в системном приложении (localhost only)

Сайдбар

Метод Путь Описание
GET /api/sidebar/blocks Список блоков сайдбара
POST /api/sidebar/blocks Создать блок
PATCH /api/sidebar/blocks/{id} Обновить блок
DELETE /api/sidebar/blocks/{id} Удалить блок (+ ссылки)
POST /api/sidebar/blocks/{id}/links Добавить ссылку в блок
PATCH /api/sidebar/links/{id} Обновить ссылку
DELETE /api/sidebar/links/{id} Удалить ссылку

Календарь

Метод Путь Описание
GET /api/calendar/events Список событий
POST /api/calendar/events Создать событие
PATCH /api/calendar/events/{id} Обновить событие
DELETE /api/calendar/events/{id} Удалить событие

Дела

API доступен при PERSONAL_NOTES_ENABLED=true.

Метод Путь Описание
GET /api/affairs Список доступных пользователю дел
POST /api/affairs Создать дело
PATCH /api/affairs/{id} Обновить дело или отметить выполненным
DELETE /api/affairs/{id} Удалить дело
GET /api/affairs/overview Сводка дел для интерфейса
GET /api/affairs/daily Ежедневная лента общих заметок
POST /api/affairs/daily/dismiss Скрыть сводку на текущий день

Планировщик

Метод Путь Описание
GET /api/scheduler/tasks Список доступных задач
POST /api/scheduler/schedule Запланировать задачу (поддерживает args — аргументы скрипта)
GET /api/scheduler/atq Список запланированных задач
POST /api/scheduler/remove-task Удалить задачу из очереди

Kanban и задачи

Метод Путь Описание
GET /api/projects/{id}/tasks Задачи проекта
GET /api/projects/{id}/tasks/board Доска kanban проекта
POST /api/projects/{id}/tasks Создать задачу
POST /api/projects/{id}/tasks/bulk Массовое создание задач (импорт ToDo)
GET /api/projects/{id}/tasks/{task_id} Получить задачу
PATCH /api/projects/{id}/tasks/{task_id} Обновить задачу (в т.ч. is_closed — закрытие)
DELETE /api/projects/{id}/tasks/{task_id} Удалить задачу
POST /api/projects/{id}/tasks/{task_id}/attachments Добавить вложение к задаче
GET /api/projects/{id}/tasks/{task_id}/attachments/{att_id}/collabora URL редактирования вложения в Collabora Online
GET /api/projects/{id}/kanban/export Экспорт доски проекта в JSON
POST /api/projects/{id}/kanban/import Импорт доски проекта из JSON
GET /api/tasks?project_id= Список задач всех проектов (фильтр по проекту)
GET /api/kanban Общая доска по всем проектам
GET /api/kanban/filters Опции фильтров общего kanban
POST /api/kanban/tasks/bulk Массовое создание задач в общем kanban
PATCH /api/kanban/tasks/{task_id}/status Перемещение задачи между колонками
GET /api/kanban/export Экспорт общей доски в JSON
POST /api/kanban/import Импорт общей доски из JSON
GET /api/gantt/export/xlsx Экспорт диаграммы Ганта в .xlsx с учётом фильтров и флага hide_no_deadline

Alexandrite

Метод Путь Описание
GET /api/alexandrite/roots Настроенные корневые папки
GET /api/alexandrite/tree?root=<path> Дерево файлов и папок
GET /api/alexandrite/file?root=<path>&path=<relative> Содержимое файла
POST /api/alexandrite/file?root=<path> Создать файл .md/.txt
PUT /api/alexandrite/file?root=<path> Обновить содержимое файла
PATCH /api/alexandrite/file?root=<path> Переименовать файл
DELETE /api/alexandrite/file?root=<path>&path=<relative> Удалить файл
POST /api/alexandrite/directory?root=<path> Создать папку
PATCH /api/alexandrite/directory?root=<path> Переименовать папку
DELETE /api/alexandrite/directory?root=<path>&path=<relative> Удалить папку рекурсивно

Бэкапы и синхронизация (Яндекс.Диск)

Метод Путь Описание
GET /api/backup/stats Статистика локальных данных и статус Яндекс.Диска
POST /api/backup/sync-export Синхронизация на Яндекс.Диск (DB + uploads); возвращает job_id
POST /api/backup/sync-import Синхронизация с Яндекс.Диска (DB + uploads)
GET /api/backup/job/{job_id} Статус фоновой задачи синхронизации или архива
GET /api/backup/archives Список архивных бэкапов на Яндекс.Диске
POST /api/backup/create Создать архив .tar.gz и загрузить на Яндекс.Диск; возвращает job_id
POST /api/backup/restore Восстановить данные из архива на Яндекс.Диске
POST /api/backup/delete Удалить архив с Яндекс.Диска
GET /api/backup/alexandrite/stats Статистика локальной папки Alexandrite
POST /api/backup/alexandrite/export Синхронная загрузка Alexandrite на Яндекс.Диск
POST /api/backup/alexandrite/export-async Асинхронная загрузка Alexandrite; возвращает job_id
GET /api/backup/alexandrite/export-status/{job_id} Статус фоновой загрузки Alexandrite
POST /api/backup/alexandrite/import Загрузить Alexandrite с Яндекс.Диска
POST /api/backup/alexandrite/archive Создать архив Alexandrite на Яндекс.Диске
GET /api/backup/alexandrite/archives Список архивов Alexandrite
POST /api/backup/alexandrite/restore Восстановить Alexandrite из архива