Дата актуальности: 2026-06-18. Read-only документация.
Справочник REST-эндпоинтов, экспонируемых роутами smarty-backend-stable/smarty-ui/routes/index.js.
Все маршруты подключены под префиксом /api/v2/ws/:_wsId/ui. Полный путь:
/api/v2/ws/:_wsId/ui + path createRoute
| Класс запроса |
Описание |
EmployeeRequest |
Авторизованный сотрудник workspace. Записи workspace-scope требуют manage_meta (ws admin). Пользовательские документы проверяют владельца по profile._user. |
UI-конфигурация для smarty-shell: темы, модули, режимы, макеты страниц, привязка чатов к объектам.
| Метод |
Путь |
Auth |
Назначение |
GET |
/bootstrap |
Employee |
Единое чтение: workspace + me + modules + navOrder + mode + theme + features |
Ответ:
{
"workspace": { "_id", "title", "helpdeskEnabled", "disabledSections", "currentRate" },
"me": { "_id", "_userId", "fullName", "isAdmin" },
"modules": [...],
"navOrder": [...],
"mode": { "key": "..." },
"theme": { "source", "preset"/"_themeId", "mode", "tokens" },
"features": { "tracker", "uiConstructor", "aiEmployees" }
}
| Метод |
Путь |
Auth |
Назначение |
GET |
/theme-presets |
Employee |
Список 15 системных пресетов тем |
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/themes |
Employee |
Список тем (пользовательских + workspace) |
-- |
POST |
/themes |
Employee |
Создать тему |
body: name (required), basePreset, mode, tokens, scope (enum: user, workspace) |
PATCH |
/themes/:themeId |
Owner/Admin |
Обновить тему |
body: name, mode, tokens |
DELETE |
/themes/:themeId |
Owner/Admin |
Удалить тему |
-- |
Ограничения: максимум 50 тем на scope. Workspace-scope -- только admin.
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/me/theme |
Employee |
Текущая активная тема |
-- |
PUT |
/me/theme |
Employee |
Выбрать тему |
body: preset (key) или _themeId (ObjectId); mode (enum: light, dark, auto) |
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/config |
Employee |
Текущая конфигурация UI |
-- |
PATCH |
/config |
Admin |
Обновить конфигурацию |
body: enabledModules[], navOrder[], moduleSettings{}, modeKey |
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/modes |
Employee |
Каталог режимов + текущий applied |
-- |
POST |
/modes/:modeKey/apply |
Admin |
Применить режим |
body: seedFunnels (Boolean, optional) |
Примечание: применение режима композирует enabledModules + navOrder, записывает modeKey, опционально сидит фу́ннели.
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/layouts |
Employee |
Макет страницы |
query: page (required) |
PUT |
/layouts/:page |
Admin |
Сохранить макет |
body: blocks[] (max 60), version (optimistic lock) |
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/dialogs/:configId/link |
Employee |
Текущая привязка диалога |
-- |
PUT |
/dialogs/:configId/link |
Employee |
Установить привязку |
body: kind (enum: crm, tracker, helpdesk), collectionName (для crm), objectId |
DELETE |
/dialogs/:configId/link |
Employee |
Удалить привязку |
-- |
| Метод |
Путь |
Auth |
Назначение |
Параметры |
GET |
/link-search |
Employee |
Единый поиск across crm/tracker/helpdesk |
query: kind (required), collection (для crm), q (текст, max 80) |
Ответ: { items: [{ kind, collectionName, objectId, title, subtitle }] } (max 30).