REST API модуля «Оценка 360»
Справочник REST-методов модуля ithive.assessment360 для интеграций, входящих вебхуков и AI-агентов.
Базовый URL
https://{портал}/rest/{user_id}/{webhook_code}/{method}.json
Пример:
https://portal.company.ru/rest/1/xxxxxxxx/assessment360.assessment.list.json
Scope и аутентификация
- Scope:
assessment360 - Аутентификация: входящий вебхук Bitrix24 или OAuth/сессия авторизованного пользователя
- Все методы
assessment360.*требуют авторизованного пользователя REST. Без авторизации — ошибкаUNAUTHORIZED. Дополнительно методы проверяют права на конкретную операцию и/или сущность (иначеACCESS_DENIED/PERMISSION_DENIED).
Авторизация ≠ право на операцию: доступ к модулю / наличие вебхука сами по себе не дают, например, право запускать оценку или править справочники.
Права доступа
Права задаются в админке Bitrix: Настройки → Настройки продукта → Модули → Оценка 360 (опции модуля ithive.assessment360). Конкретные ID групп на каждом портале свои — в селектах выбираются группы пользователей Bitrix.
| Проверка в коде | Опция в настройках модуля | Что даёт |
|---|---|---|
Access::checkAccessStartAssessment() |
«Группы пользователей, которые могут запускать процесс оценки» (groupPersonalDepartment) |
Вхождение в группы запуска: canStartAssessment, запись шаблонов, часть операций по карточкам/респондентам |
Access::checkAccessExportAssessmentCsv() |
«Группы пользователей, которые могут выгружать оценки» (groupAccessAssessmentExportCsv) |
export.start (и export.download, если файл берётся через REST-сессию, а не из сохранённого last-file) |
Access::isHrDepartment() |
«Группа HR-отдела» (hrDepartment) |
Запись справочников компетенций / индикаторов / вопросов; расширенный доступ к карточкам (как в canUseStartActions / canManageAssessmentCard) |
Access::isAdmin() / админ портала |
Администратор Bitrix24 | То же расширенное правило, что у HR, для карточек/запуска; не заменяет группы запуска для записи шаблонов |
| Контекст сущности | — | Менеджер карточки (PROPERTY_MANAGER в статусе on_approval), владелец задачи респондента, видимость карточки |
Как проверить права для текущего пользователя
GET assessment360.currentUser возвращает флаги:
| Поле | Смысл |
|---|---|
canStartAssessment |
пользователь в группах запуска оценки |
canExportAssessment |
пользователь в группах выгрузки |
isHrDepartment |
пользователь в группе HR-отдела |
isAdmin / isSystemAdmin |
администратор |
canUseStartActions |
без id карточки: группы запуска или админ/HR. С id: то же или менеджер этой карточки в статусе on_approval |
Сводка по группам методов
| Группа методов | Кто может (как в коде) |
|---|---|
Служебные (currentUser, schema, batch) |
Любой авторизованный пользователь REST (batch наследует проверки вложенных методов) |
| Чтение справочников / list / get (компетенции, индикаторы, вопросы, шаблоны, статусы enum) | Любой авторизованный |
assessment.list |
Авторизованный; выборка режется фильтром видимости (не «все карточки портала») |
assessment.get |
Security::canViewAssessmentCard |
| Запись компетенций, категорий, индикаторов, вопросов | Админ портала или группа HR-отдела |
Запись шаблонов (template.add/update/delete) |
Только группы «могут запускать процесс оценки» (checkAccessStartAssessment). Админ/HR без вхождения в эти группы — нет |
assessment.start |
canUseStartAssessmentActions без id: группы запуска / админ / HR |
assessment.approve |
canUseStartAssessmentActions($id): то же или менеджер карточки в on_approval |
assessment.completeCollection / finish |
Security::canManageAssessmentCard: сначала canView, затем группы запуска / админ / HR / менеджер карточки |
assessment.updateDateEnd |
checkAccessStartAssessment или canUseStartAssessmentActions($id) — не через canManageAssessmentCard |
assessment.tags.get |
canViewAssessmentCard |
assessment.tags.update |
canManageAssessmentTags = группы запуска или canViewAssessmentCard |
Личные теги (tag.*) |
Авторизованный; записи свои (USER_ID). При привязке/смене assessmentId — ещё canManageAssessmentTags |
export.start |
Группы выгрузки (checkAccessExportAssessmentCsv) |
export.status |
Только авторизация: читает статус своего последнего экспорта (по userId); отдельной проверки группы выгрузки нет |
export.download |
Файл своего последнего экспорта; если есть сохранённый last-file — без повторной проверки группы; иначе через REST-сессию с проверкой группы выгрузки |
task.list / get / getByCode |
Авторизованный; только свои задачи респондента |
task.makeAssessment |
Владелец карточки респондента или администратор портала / группа HR-отдела (через REST проверка владельца снимается) |
responder.list / get |
canViewAssessmentCard для связанной карточки процедуры |
responder.add / update |
canManageAssessmentCard |
responder.delete |
Группы запуска оценки или админ или HR |
answer.* |
canViewAssessmentCard по assessedCardId (UF_CARD_ASSESSED); для list параметр обязателен |
points.list / get |
canViewAssessmentCard через карточку респондента (UF_ASSESSMENT_360); для list нужен assessmentId (id респондента) |
В шапках отдельных методов формулировка «Кто может вызывать» даёт краткий итог; детали и опции админки — в этом разделе.
Формат ответа
Внутренний конверт модуля (в result обёртки Bitrix REST):
| Поле | Описание |
|---|---|
result |
Данные или null при ошибке |
total |
Количество записей (для list-методов) |
next |
Смещение следующей страницы |
error |
null или { code, message, details } |
Пагинация
Для list-методов:
| Параметр | По умолчанию | Описание |
|---|---|---|
limit |
50 | Размер страницы, максимум 500 |
offset |
0 | Смещение |
fetchAll |
false | Вернуть все записи одним ответом. Максимум 5000 записей; если подходящих больше — ошибка FETCH_ALL_LIMIT_EXCEEDED |
filter |
- | Mongo-style фильтр ($eq, $in, $gte, ...) |
Разделы REST-справочника
| Раздел | Описание |
|---|---|
| Служебные / AI-endpoint'ы | assessment360.currentUser, assessment360.schema, assessment360.batch |
| Оценки | Запуск и управление оценками, статусы, теги оценки |
| Задачи респондентов | Карточки задач и отправка оценок |
| Справочники | Теги, шаблоны, компетенции, индикаторы, вопросы, ответы, респонденты, баллы |
| Экспорт | Запуск, контроль и скачивание выгрузок |
См. также
Предыдущая
Следующая