К содержанию
API v3

Справка

Последние обновления

Следите за новыми функциями и изменениями в API

18.09.2026

Заморозка опроса оплаченной кампанией

Меняет поведение

Пока по опросу идёт оплаченная кампания за респондентов, сам опрос не правится — ни по API, ни через MCP.

Что изменилось:

  • POST /quiz/{id}/save, /publish, /conditions и /versions/{versionId}/restore отвечают 423 с телом { "status": false, "editing_lock": { … } }. Раньше запрет действовал только в конструкторе.
  • В MCP так же отказывают update_quiz_widgets, update_quiz_texts, update_quiz_logic, publish_quiz и restore_quiz_version.
  • Настройки, тема, интеграции, скрытые поля и ответы не замораживаются. До оплаты кампании правки открыты.

Что появилось:

  • Поле type у опроса: regular — обычный, micro — опрос на сайте, без своей ссылки. Приходит в GET /quiz, GET /quiz/{id} и в MCP get_quiz_list.
  • Поле editing_lock в GET /quiz/{id}: null или состояние заморозки.
  • MCP: get_user_me отдаёт свои права в каждом аккаунте, get_workspace_member_access — права участника по папкам, ресурс quiz://{id}/structure — ограничения прохождения.

Исправлено:

  • Тема принимает положение и размер логотипа 0 — POST /workspace/{workspace_id}/themes/{theme_id}, в MCP create_theme и update_theme.
  • MCP: схемы инструментов перечисляют допустимые значения, и выдуманное значение теперь ошибка, а не молча пропущенный фильтр. Отказ по праву называет само право и того, кто может его выдать.
17.09.2026

Права роли по папкам

Меняет поведение

Роль может давать в отдельной папке не те права, что во всём аккаунте.

Что появилось:

  • Поле folder_permissions у роли — список { folder_id, permissions } со значениями allowed, partially, forbidden. Пишется в POST /workspace/{workspace_id}/roles, читается из GET /workspace/{workspace_id}/roles, в MCP — save_workspace_role.
  • Поле folder_id в ответе опроса.

Что изменилось:

  • Права на опросы и папки проверяются с учётом папки: если у роли для неё задано своё значение, решает оно. Перенос опроса спрашивает обе папки. Отказ прежний — 403 с blocked_by_access.

Удалено:

  • Поле folders у роли (появилось 15.09), признак in_role, поле access_source у участников папки и отказ 400 MEMBER_ACCESS_FROM_ROLE. Доступ к папке снова выдаётся только поимённо.

Исправлено:

  • MCP: update_quiz_widgets отклоняет идентификаторы вариантов ответа не в формате UUID. Раньше такой опрос сохранялся, а публикация падала.
16.09.2026

Начать опрос заново

Новое

Вернувшийся респондент может начать с начала, а не продолжать брошенное прохождение.

Что появилось:

  • Настройка allow_restart_progress в POST /quiz/{id}/settings/info и в MCP update_quiz_settings. Не передана — не меняется.

Что важно знать:

  • У опросов, созданных до 16.09, настройка выключена — поведение прежнее. У новых включена.

Исправлено:

  • MCP: upload_quiz_media, upload_quiz_widget_image и upload_workspace_logo снова сохраняют файл — до этого любой вызов заканчивался ошибкой загрузки.

Документация: Настройки опроса

15.09.2026

Право «Редактировать опросы»

Меняет поведение

Правку опроса можно запретить участнику отдельным правом edit_quiz.

Что появилось:

  • Право edit_quiz: allowed, partially — только свои опросы, forbidden. Без него — 403 с blocked_by_access: true.
  • Его спрашивают save, publish, conditions, applyTheme/{theme_id}, versions/{versionId}/restore, default-texts, запись скрытых переменных и опций, media и media/widget-image. Запись скрытых опций — и в v1 и v2, иначе запрет обходился бы сменой версии API.
  • В MCP его спрашивают publish_quiz, apply_quiz_theme и загрузка медиа, а инструменты правки вопросов, логики, текстов, скрытых опций и переменных — вместо права settings.

Что важно знать:

  • Всем существующим ролям право выдано как allowed: работающие интеграции отказ не получат, пока владелец аккаунта сам не ограничит роль.
  • Чтение — версии, тексты, скрытые опции и переменные — не ограничено.
  • POST /workspace/{workspace_id}/roles с role_id теперь применяет присланные permissions, раньше менялось только название. Присылайте полный набор прав.
  • Роль давала доступ к папкам полем folders — 17.09 его убрали, вместо него права по папкам.

Документация: Роли аккаунта

14.09.2026

Потери при смене тарифа

Новое

Список тарифов показывает, что сгорит при переходе, а отчёт — по каким вопросам среднее время неполное.

Что появилось:

  • GET /workspace/{workspace_id}/tariff/list и MCP get_tariff_list: у каждого периода balance_burn — сколько из остатка текущего тарифа сгорит при переходе, сроки до и после и сколько дней потеряется. null — терять нечего. Промокод не учитывается.
  • POST /quiz/{id}/report и MCP get_quiz_report: у каждого вопроса is_old_answer_time — среднее время ответа посчитано не по всем учтённым ответам.
  • MCP: update_quiz_widgets возвращает saved — состав опроса после записи — и предупреждает, если «Другое» или «Затрудняюсь ответить» заведены обычным вариантом, а не настройкой вопроса.

Исправлено:

  • Общий is_old_answer_time в отчёте зажигался даже у новых опросов. Теперь он учитывает фильтры запроса и только ответы, оставленные до 01.07.2026.

Документация: Список тарифов

09.09.2026

Единые имена полей и коды отказов

Доводка методов от 08.09. Описание на сайте уже в новом виде.

Что изменилось:

  • Списки везде приходят в items, журналы — в logs. У GET /quiz/{id}/versions вместо data и current_page — items, page, per_page, total, last_page.
  • Вместо общего отказа — свой код: webhook_exists, duplicate_name, member_already, member_not_in_folder, self_remove, ai_report_refused и другие.
  • Тарифный отказ при выборе адреса опросов — 403 с blocked_by_tariff, как во всех тарифных отказах. ai_report_limit_reached и disk_limit_reached тоже несут blocked_by_tariff: true.
  • POST /quiz/{id}/webhooks возвращает webhook_id, POST /workspace/{workspace_id}/folders — folder_id, POST /quiz/{id}/print отдаёт сам файл. GET /partner принимает offset.
  • MCP: признак приёма оплаты в get_workspace_tariff переехал в features.quiz_payment, ключ features.integrations.yookassa больше не приходит.

Исправлено:

  • Методы, которые проверяют права участника, не работали по API-ключу из кабинета: отвечали ошибкой или user_not_authenticated.

Безопасность:

  • Удаление роли сверяется с аккаунтом — раньше по идентификатору удалялась роль чужого аккаунта.
  • Заголовки в журнале доставки вебхука маскируются ***. Закрыть можно только вход своего аккаунта. Возврат опросов из корзины требует права delete_quiz.

Документация: Ошибки · Интеграции и письма

07–08.09.2026

110 методов API и полный набор MCP

Новое

Почти всё, что есть в кабинете, теперь доступно по ключу: участники, интеграции, письма, версии, тариф.

Что появилось в API:

  • Участники и доступ — свой профиль и входы, участники аккаунта, роли, доступ к папкам.
  • Настройки аккаунта — своё хранилище, брендинг, адрес опросов, тариф, приём оплаты, партнёрская программа, запись на встречи.
  • Управление опросом — история публикаций и корзина, пароли, QR-код и печать, папки, шаблоны, сборка по описанию, медиа.
  • Чистка и пометки ответов — корзина и безвозвратное удаление, пометки, порядок вопросов, теги.
  • AI-отчёт и оформление — сборка AI-отчёта, сохранённые фильтры, оформление отчётов.
  • Интеграции и письма — состояние интеграций и журналы, amoCRM и Битрикс24 с сопоставлением полей, вебхуки, Telegram и MAX, Google Таблицы, Zapier, счётчики, письма опроса, своя почта, состояние рассылок.

Что появилось в MCP:

  • Инструменты для тех же задач, а ещё выгрузка ответов в SPSS, каталог готовых опросов, поиск опросов по названию и архив. Всего на сервере 161 инструмент — справочник.

Что важно знать:

  • Оплатить тариф, вывести партнёрские деньги и отправить рассылку по ключу нельзя: это деньги и письма живым людям. Рассылки — только чтение.
  • Безвозвратное удаление ответов и удаление папки с опросами требуют подтверждения.
  • Пароли опроса хранятся хешами: наружу идёт только номер пароля.

Исправлено:

  • Условие перехода «ответ = Другое» отклонялось при сохранении через API и MCP, хотя редактор его создавал.
  • Условие с оператором, не подходящим для вопроса с вариантами (например, «начинается с»), сохранялось и показывалось в редакторе битым.

Документация: Инструменты MCP · У каждого раздела есть markdown-версия для LLM: адрес раздела с .md на конце.

20.08.2026

Embed Protocol v1

Новое

Встроенный опрос сообщает сайту или приложению, что происходит, и слушается команд.

Что появилось:

  • 15 событий опроса — открылся, начал, перешёл к экрану, ответил, отправил, завершил, отсеян, авторизация, оплата, ошибка.
  • 4 команды хосту — host.hello, host.close, host.reset, host.ping.
  • Три транспорта — iframe на сайте, WKWebView на iOS, WebView на Android.
  • Терминальный переход отдаётся хосту: после отправки можно показать свой экран вместо ухода опроса на «Спасибо».
  • Тестовый режим на роуте предпросмотра: те же события с пометкой ctx.preview, без записи ответа.

Что важно знать:

  • Существующие встраивания не меняются. Пока хост не поздоровался, всё работает как раньше — перевставлять код не нужно.
  • Включать ничего не надо: ни параметра в адресе, ни регистрации домена.
  • Содержание ответов, промокод и ссылки на правку хосту не передаются ни при какой настройке — только ход прохождения и, по запросу, итог.

Документация: dev/api/embed · Полный markdown для LLM: /static/api/llms-full.md

11.03.2026

Релиз MCP Server

Новое

Подключение AI-ассистентов к WebAsk через Model Context Protocol.

Что появилось:

  • Production-эндпоинт https://mcp.webask.io/mcp/v1 на протоколе JSON-RPC 2.0.
  • 16 read-only ресурсов — опросы, ответы, аналитика, темы, промокоды.
  • 30+ инструментов (tools) — создание, публикация, экспорт, промокоды, переменные и др.
  • Поддержка Claude Desktop, Cursor и VS Code из коробки — конфиги в документации.
  • Лимит: 180 запросов в минуту; ссылки на экспорт действуют 1 час.

Документация: dev/api/mcp · Полный markdown для LLM: /static/mcp_user_guide.md

25.02.2026

Релиз WebAsk API v3

Новая основная версия API для работы с опросами, ответами и отчётами.

Ключевые изменения:

  • Полный жизненный цикл опроса: создание, редактирование, публикация, архивирование.
  • Обновлённая аутентификация и управление токенами для интеграций.
  • Единый базовый URL https://api.webask.io/api/v3/service вместо старых путей.
  • Расширенные фильтры, сортировка и пагинация для списков опросов и ответов.
  • Обновлённые структуры данных (опросы, ответы, отчёты) в соответствии с api_v3.md.

Подробное описание всех эндпоинтов и параметров см. в основном руководстве /dev/api и markdown‑версии /static/api/llms-full.md.

18.09.2025

Новые параметры для получения ответов (API v3)

Улучшения в эндпоинте GET /quiz/{id}/answers

Добавленные параметры:

Новый параметр is_complete

Тип: boolean|nullable

По умолчанию: nullable

Описание: Фильтрует ответы по статусу завершенности. Если true - только завершенные ответы, если false - только незавершенные.

Новый параметр sort

Тип: string|nullable

По умолчанию: nullable

Доступные значения: date_start, date_end

Описание: Поле для сортировки ответов. date_start - по дате начала, date_end - по дате завершения.

Новый параметр order

Тип: string|nullable

По умолчанию: nullable

Доступные значения: desc, asc

Описание: Направление сортировки. desc - по убыванию, asc - по возрастанию.

Пример использования:
Пример запроса
curl -X GET "https://api.webask.io/api/v3/service/quiz/123/answers?is_complete=true&sort=date_start&order=desc" \
  -H "Authorization: Bearer YOUR_TOKEN"