Данный документ содержит полный список всех эндпоинтов системы Ultralight CRM с описанием их функциональности, параметров и примеров использования.
Система использует стандартные HTTP-методы:
GET — получение данныхPOST — создание данныхPUT — полное обновление данныхPATCH — частичное обновление данныхDELETE — удаление данныхБольшинство эндпоинтов требуют аутентификации. Система использует сессионную аутентификацию на основе cookie.
Успешный ответ:
{
"success": true,
"data": { /* данные */ },
"message": "Описание операции"
}
Ответ с ошибкой:
{
"success": false,
"error": "Тип ошибки",
"message": "Описание ошибки"
}
Описание: Главная страница Метод: GET Требует аутентификацию: Нет Редирект: Перенаправляет на рабочий стол (/workspace)
Описание: Страница формы входа Метод: GET Требует аутентификацию: Нет Ответ: HTML-форма входа
Описание: Аутентификация пользователя Метод: POST Требует аутентификацию: Нет Параметры:
email (string) — email пользователяpassword (string) — пароль пользователяПример запроса:
{
"email": "user@example.com",
"password": "secret"
}
Успешный ответ:
{
"success": true,
"data": {
"user_id": 1,
"name": "Иван Иванов"
},
"message": "Успешный вход в систему"
}
Ошибки:
401 Unauthorized — неверные учетные данные422 Unprocessable Entity — невалидные параметрыОписание: Рабочий стол пользователя Метод: GET Требует аутентификацию: Да Права: Любой авторизованный пользователь Ответ: HTML-страница рабочего стола
Описание: Страница списка пользователей Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница со списком пользователей
Описание: Страница управления типами сущностей Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница управления сущностями
Описание: Страница управления модулями Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница управления модулями
Описание: Страница управления группами пользователей Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница управления группами
Описание: Создание нового пользователя Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
name (string) — имя пользователяemail (string) — email пользователяpassword (string) — пароль пользователяappeal (string, optional) — обращениеprimary_email (string, optional) — основной emailprimary_phone (string, optional) — основной телефонpost (string, optional) — должностьПример запроса:
{
"name": "Петр Петров",
"email": "petr@example.com",
"password": "secret123",
"post": "Менеджер"
}
Успешный ответ:
{
"success": true,
"data": {
"id": 2,
"name": "Петр Петров",
"email": "petr@example.com"
},
"message": "Пользователь успешно создан"
}
Описание: Получение информации о пользователе Метод: GET Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор пользователяОтвет:
{
"success": true,
"data": {
"id": 1,
"name": "Иван Иванов",
"email": "ivan@example.com",
"appeal": "Уважаемый",
"primary_email": "ivan@company.com",
"primary_phone": "+79991234567",
"post": "Администратор",
"groups": [
{
"id": 1,
"name": "Администраторы"
}
]
}
}
Описание: Получение групп пользователя Метод: GET Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор пользователяОтвет:
{
"success": true,
"data": [
{
"id": 1,
"name": "Администраторы",
"access_right": 0
},
{
"id": 2,
"name": "Сотрудники",
"access_right": 1
}
]
}
Описание: Обновление пользователя Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор пользователяname (string, optional) — имя пользователяemail (string, optional) — email пользователяpassword (string, optional) — новый парольappeal (string, optional) — обращениеprimary_email (string, optional) — основной emailprimary_phone (string, optional) — основной телефонpost (string, optional) — должностьПример запроса:
{
"post": "Старший менеджер",
"primary_phone": "+79997654321"
}
Описание: Создание новой группы Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
name (string) — название группыПример запроса:
{
"name": "Отдел продаж"
}
Описание: Получение информации о группе Метод: GET Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор группыОтвет:
{
"success": true,
"data": {
"id": 3,
"name": "Отдел продаж",
"permissions": [
{
"entity_type_id": 3,
"access_right": 0
}
]
}
}
Описание: Получение сущностей группы Метод: GET Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор группыОписание: Обновление группы Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
uid (integer) — идентификатор группыname (string, optional) — новое название группыОписание: Обновление прав доступа группы к сущности Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры в URL:
gid (integer) — идентификатор группыetid (integer) — идентификатор типа сущностиeid (integer) — идентификатор сущностиaccess (integer) — уровень доступа (0, 1, 2)Описание: Получение правила доступа группы к сущности Метод: GET Требует аутентификацию: Да Права: Только администраторы Параметры в URL:
gid (integer) — идентификатор группыetid (integer) — идентификатор типа сущностиОписание: Удаление правила доступа группы к сущности Метод: DELETE Требует аутентификацию: Да Права: Только администраторы Параметры в URL:
gid (integer) — идентификатор группыetid (integer) — идентификатор типа сущностиeid (integer) — идентификатор сущностиОписание: Страница установки модуля Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница выбора модуля для установки
Описание: Страница удаления модуля Метод: GET Требует аутентификацию: Да Права: Только администраторы Ответ: HTML-страница выбора модуля для удаления
Описание: Подтверждение установки модуля Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
module_id (string) — идентификатор модуляПример запроса:
{
"module_id": "SalesModule"
}
Описание: Подтверждение удаления модуля Метод: POST Требует аутентификацию: Да Права: Только администраторы Параметры:
module_id (string) — идентификатор модуляПример запроса:
{
"module_id": "SalesModule"
}
Все POST-запросы требуют CSRF-токен, который автоматически включается в формы.
Система реализует ограничение частоты запросов для предотвращения злоупотреблений:
Все входные данные проходят строгую валидацию:
Этот документ содержит полный список всех эндпоинтов Ultralight CRM. При разработке интеграций или модулей используйте эту документацию как основной источник информации.