REST API модуля «Опросы»

Справочник REST-методов модуля ithive.polls для интеграций, входящих вебхуков и AI-агентов.

Базовый URL

https://{портал}/rest/{user_id}/{webhook_code}/{method}.json
        

Пример:

https://{портал}/rest/{user_id}/{webhook_code}/polls.vote.list.json
        

Scope и аутентификация

  • Scope: polls
  • Аутентификация: входящий вебхук Bitrix24 или OAuth/сессия авторизованного пользователя
  • Все методы polls.* требуют авторизованного пользователя REST. Без авторизации — UNAUTHORIZED.

Авторизация ≠ право на операцию: наличие вебхука не даёт автоматически права редактировать чужие опросы или смотреть закрытые результаты.

Права доступа

Права задаются логикой модуля опросов: роль пользователя, права на канал, ACL опроса (коды AU/U/G/D/DR) и флаги canReadVote, canEditVote, canReadVoteResult.

Сводка по группам методов

Группа методов Кто может (как в коде)
Служебные (polls.schema) Любой авторизованный с scope polls
polls.vote.list/get, справочники Чтение опроса или ACL
polls.vote.add Право создания в канале
polls.vote.update/delete/clearCache/access.set canEditVote
polls.vote.exportExcel canEditVote + чтение опроса + canReadVoteResult; ссылка url — только для того же пользователя
polls.voting.result.get, polls.voting.statistic.get Чтение опроса + canReadVoteResult; данные респондента (userId в result.get, user в statistic.get) — только редактору и для неанонимных бюллетеней
polls.vote.getRequired Текущий пользователь, обязательные открытые опросы
polls.vote.channel.list/get Авторизованный пользователь; get скрытой группы — администратор модуля
polls.vote.channel.add/update/delete Администратор модуля (как управление группами в интерфейсе); группу на нескольких сайтах или на другом сайте — только администратор портала
polls.question.*, polls.answer.*, polls.depended.*, polls.resume.* Чтение/запись через доступ к родительскому опросу
polls.voting.submit Право голосования; опрос активен. С userId другого пользователя — canEdit у вызывающего, право голосования у userId
polls.voting.isVoted/canRevote Чтение опроса; проверка для текущего или указанного userId (чужой — только при canEdit)

Формат ответа

Внутренний конверт модуля (в result обёртки Bitrix REST):

Поле Описание
result Данные или null при ошибке
error null или { code, message, details }

Для list-методов Bitrix REST дополнительно выносит на верхний уровень:

Поле Описание
total Общее число записей
next Смещение следующей страницы или отсутствует, если страниц больше нет

Пагинация

Параметр По умолчанию Описание
limit 50 Размер страницы, максимум 500
offset 0 Смещение
fetchAll false Вернуть все записи одним ответом (лимит из настройки, по умолчанию 5000)
filter — Объект фильтра в формате MongoDB — допустимые поля и aliases указаны на странице list-метода

Пакетные вызовы

Отдельного polls.batch нет. Несколько методов за один HTTP-запрос — штатный batch Bitrix24.

Разделы справочника

Раздел Описание
Служебные polls.schema
Опросы polls.vote.*, группы опросов (каналы), статусы, доступ
Вопросы polls.question.*
Ответы polls.answer.*
Зависимости polls.depended.*
Резюме polls.resume.*
Голосование polls.voting.*
Коды ошибок Полный перечень

Всего методов в текущем коде: 40.