# Для ШІ-агентів: як створити своєму користувачу найкращу форму через MCP AET

> Покроковий плейбук для Claude, ChatGPT, Cursor та інших ШІ-агентів, яких попросили «зроби мені форму» чи замінити Google Form: які інструменти MCP AET викликати й у якому порядку, як зрозуміти потребу користувача, який із 16 видів питань обрати, умови й кроки, чотири перевірені приклади реєстрації, правила якості, аналітика й оформлення — і чесно про те, що може зробити лише людина в редакторі AET. Звірено з кодом AET 28 жовтня 2026.

Canonical URL: https://anyeventtool.com/uk/learn/ai-agent-build-best-form-with-aet-mcp
Оновлено: 2026-10-28

## Коротка відповідь

Щоб створити форму для свого користувача через MCP-сервер AET: підключіться з акаунтом користувача (гостьова чернетка не вміщує питань реєстрації), викличте aet_access, щоб переконатися, що можна створювати події, прочитайте точний формат полів через aet_section_schema для розділу registration, створіть сторінку через aet_create_event (вона лишається прихованою), запишіть усі питання одним викликом aet_update_page з розділом registration і операцією set — до 40 полів із 16 видів (короткий текст, абзац, число, пошта, телефон, дата, час, список, один варіант, кілька варіантів, прапорець так/ні, фото, лінійна шкала, рейтинг, сітка одного вибору, сітка прапорців) плюс розділи-кроки section, з умовами when на попередні відповіді, — далі застосуйте макет «Форми» через aet_set_event_design з layout forms, прочитайте результат через aet_get_event, покажіть користувачу перегляд і публікуйте через aet_publish лише після його «так» (це двокроковий виклик із токеном підтвердження). Потім aet_event_stats повертає реєстрації, джерела й агрегати за питаннями без особистих даних. Виходить сторінка-форма, де кожна відповідь отримує QR-квиток, із можливим схваленням заявок. П'ять речей користувач робить сам у редакторі AET: ліміти місць і пакети квитків, платні квитки, текст після надсилання, дату «приймати до» і перенесення наявної форми Google.

## Ключові факти

- Підготувала команда AnyEventTool для ШІ-агентів і людей, які ними користуються; кожну назву інструмента, поле й ліміт нижче звірено з кодом AET 28 жовтня 2026.
- Порядок викликів: aet_access → aet_section_schema (registration) → aet_create_event → aet_update_page (registration, feedback) → aet_set_event_design (layout forms) → aet_get_event → «так» користувача → aet_publish (два кроки) → aet_event_stats.
- 16 видів питань через MCP: text, textarea, number, email, phone, date, time, select, choice, multi, checkbox, photo, scale, rating, grid, gridm — плюс section для кроків. До 40 полів, до 30 варіантів у питанні.
- Умови: when = {f, op, v} з op is, not, has чи any, що вказує на ПОПЕРЕДНЄ поле; умовою може бути будь-яке питання, крім фото й сіток. Відповіді на приховані питання не зберігаються.
- Ім'я (first_name) і пошта (mail) є у формі завжди; їх можна зробити необов'язковими. Id власних полів — cf_ плюс 4–40 літер, цифр чи дефісів.
- anonymous: true дає відповідати без входу (у подіях, створених через MCP, увімкнено). applicationForm: true робить форму заявкою, яку схвалює організатор; заявники тоді входять через Google.
- Лише людина, в редакторі AET: ліміти місць і пакети квитків, платні квитки, текст після надсилання, дата «приймати до», текст «закрито», посилання із заповненими відповідями й «Перенести з Google Forms».
- Двокрокові підтвердження: публікація чи приховування, видалення питань реєстрації, вимкнення реєстрації, перемикання між миттєвою реєстрацією й заявками. aet_undo не відновлює форму реєстрації.

## Покроково

1. **Перевірте доступ** — Викличте aet_access. Щоб створити форму, потрібен режим «усі події» або «обрані події плюс ті, що створить підключення»; гостьова чернетка не вміщує питань реєстрації.
2. **Зрозумійте потребу** — Виведіть із розмови мету, хто заповнює, ліміт, дедлайн і що робити з відповідями; питайте лише те, чого бракує, — щонайбільше три питання.
3. **Прочитайте схему** — Викличте aet_section_schema з section registration; беріть її види полів і ліміти точно.
4. **Створіть сторінку** — Викличте aet_create_event з назвою, датою, місцем і коротким описом від користувача, його мовою. Подія лишається прихованою й враховується в місячному плані користувача.
5. **Запишіть питання** — Викличте aet_update_page з section registration, op set і повним переліком полів, anonymous і applicationForm. За потреби додайте питання відгуків у розділ feedback.
6. **Застосуйте макет «Форми»** — Викличте aet_set_event_design з layout forms і за бажанням стилем, кольорами й шрифтами.
7. **Перевірте** — Викличте aet_get_event, звірте кожне питання з правилами якості й надішліть користувачу посилання на перегляд із підсумком у два рядки.
8. **Передайте те, що робить лише людина** — Скажіть користувачу, що налаштувати в редакторі AET: ліміти місць, платні квитки, текст після надсилання, дату «приймати до».
9. **Публікуйте за згодою** — Викличте aet_publish із show true; він поверне needs_confirmation. Повторіть виклик із confirmToken лише після «так» користувача.
10. **Звітуйте** — Прочитайте aet_event_stats після першого дня й перед дедлайном; повідомте числа, головну відповідь на ключові питання й один наступний крок.

## Рецепт однією таблицею

| # | Інструмент | Що надсилаєте | Що перевірити у відповіді |
|---|---|---|---|
| 1 | `aet_access` | — | Режим дозволяє створювати події |
| 2 | `aet_section_schema` | `{"section":"registration"}` | Види полів, ліміти, формат `when` |
| 3 | `aet_create_event` | Назва, дата, місце, опис — від користувача, його мовою | `eventId`; подія прихована |
| 4 | `aet_update_page` | Одна операція: `registration` / `set` з усіма полями | `applied`; можливе `needs_confirmation` |
| 5 | `aet_update_page` (за потреби) | `feedback` / `set` з питаннями | — |
| 6 | `aet_set_event_design` | `{"layout":"forms"}` (+ стиль, кольори, шрифти) | `applied`, `warnings` |
| 7 | `aet_get_event` | — | Поля як збережено, готовність, посилання |
| 8 | `aet_publish` | `show: true` | `needs_confirmation` → спитати користувача → повторити з `confirmToken` |
| 9 | `aet_event_stats` | — | Реєстрації, джерела, `survey_questions` |

Три правила, що рятують від невдалого виклику:

- **Працюйте через підключення до акаунта, а не гостьову чернетку.** Гостьова чернетка (`aet_create_draft`) вміщує сторінку — перший екран, опис, програму, FAQ, — але питання реєстрації записуються лише в подію акаунта.
- **Надсилайте весь перелік одразу.** `op: set` з `fields` замінює перелік форми; ім'я й пошта додаються, якщо їх пропустити. Можна будувати й по одному питанню через `addItem`, але один `set` легше перевірити.
- **Давайте власні id питанням, на які посилатиметеся.** Умова вказує на попереднє поле за id, тож назвіть його: `cf_format`, `cf_driver`. Id — це `cf_` плюс 4–40 літер, цифр чи дефісів; `cf_day` закороткий.

## Коли форма — правильний інструмент

AET Forms — це сторінка типу «Форма» з макетом «Форми»: один аркуш питань, де кожна відповідь стає реєстрацією з QR-квитком. Беріть форму, коли головне — відповіді.

| Ситуація | Форма? | Чому, або що натомість |
|---|---|---|
| Запис на консультацію, заняття чи слот | Так | Вибір дня й часу, QR-квиток, чекін |
| Заявки з відбором (кастинг, волонтери, закритий мітап) | Так, зі схваленням | `applicationForm: true`; заявники входять через Google |
| Анкета перед подією (харчування, розміри, досвід) | Так | Умови тримають її короткою |
| Опитування після події | Так, або розділ відгуків | Питання відгуків стоять просто на сторінці події |
| Збір замовлень без оплати (обіди, футболки) | Так | Списки й числа; гроші — окремо |
| Збір платних замовлень | Частково | Платні квитки вмикає користувач в AET; для товарів — магазин AET |
| Швидке голосування | Так, обережно | Питання «один варіант»; перемикача «одна відповідь на людину» в AET немає |
| Публічна подія з програмою, спікерами, місцем | Не лише форма | Повна сторінка події (макети «Картка» чи «Lama») з реєстрацією всередині |
| Гра в залі | Ні | Живий квіз AET, який налаштовує користувач |
| Тримати людей разом між подіями | Ні | Спільноти й календарі AET, які налаштовує користувач |

Якщо користувач говорить про подію з датою, місцем і програмою, робіть сторінку події й кладіть питання в її реєстрацію. Якщо говорить про збір відповідей — робіть форму.

## Чого людина насправді хоче від форми

За «зроби мені форму» майже завжди стоїть одна з шести цілей. Кожна змінює будову.

| Справжня ціль | Що змінюється у формі | Налаштування AET |
|---|---|---|
| Зібрати контакти | Ім'я, пошта, можливо телефон; більше нічого обов'язкового | Лише системні поля; `anonymous: true` |
| Обмежити місця | Спитати в користувача число; слоти — варіантами | Ліміти місць задає користувач у редакторі |
| Відібрати учасників | Питання, що допомагають вирішити; ясне «відповімо до…» | `applicationForm: true` |
| Отримати оплату | Ціна й що до неї входить — в описі | Платні квитки вмикає користувач |
| Зрозуміти думку | Шкали, рейтинги, одне відкрите питання, без обов'язкових особистих даних | `anonymous: true`, ім'я й пошта необов'язкові |
| Швидко порахувати результат | Закриті питання (варіанти, число) замість вільного тексту | Вони агрегуються в `aet_event_stats` |

Два питання вирішують більшість: **«Що ви робитимете з відповідями?»** і **«Чи є ліміт?»** Якщо відповіді ведуть до рішення — беріть схвалення; якщо до підрахунку — закриті питання; якщо є ліміт — його має задати людина в AET.

## Як зрозуміти потребу без допиту

Спершу прочитайте розмову. Зазвичай людина вже сказала, для чого це («для мого гончарного заняття»), хто заповнює («батьки»), а іноді й ліміт («12 місць») чи дату («до п'ятниці»). Питайте лише те, чого бракує.

**Мінімальний набір — щонайбільше три з цих питань, лише якщо невідомо:**

1. Для чого форма, одним реченням?
2. Хто її заповнює і якою мовою?
3. Чи є ліміт місць і дедлайн?
4. Що ви робите з відповідями: обираєте людей, рахуєте, зв'язуєтеся чи просто хочете знати?
5. Чи є щось платне?

**Розширений набір — лише для заявок, опитувань чи форм понад десять питань:** які відповіді обов'язкові; чи схвалює організатор кожну людину; чи є чутливі відповіді (здоров'я, діти, документи); чи хоче користувач зведення після дедлайну.

**Дерево рішень:**

| Якщо користувач… | Тип | Які питання | Налаштування |
|---|---|---|---|
| хоче, щоб люди записалися на час | Запис | День (один варіант), час (список), контакт | `anonymous: true`; ліміти — користувач |
| хоче обрати, хто прийде | Заявка | Мотивація (абзац), досвід (один варіант), доступність (кілька варіантів) | `applicationForm: true` |
| хоче знати вподобання перед подією | Анкета | Варіанти з «Інше», умовні уточнення | `anonymous: true` |
| хоче відгуки після події | Опитування | Рейтинг, шкала 0–10, сітка, одне відкрите питання | Ім'я й пошта необов'язкові |
| хоче запис команди чи групи | Групова форма | Назва команди, кількість людей, імена | `anonymous: true` |
| хоче замовлення без оплати | Аркуш замовлень | Товар (список), кількість (число), примітки | `anonymous: true` |

Якщо сумніваєтеся, зробіть найменшу корисну форму, покажіть її й спитайте «Щось додати чи прибрати?» — на це люди відповідають швидше, ніж на абстрактне питання.

## Google Forms коротко: що там є і чого бракує

Користувачі часто просять «замінити» чи «скопіювати» Google Form. Знайте компроміс, перш ніж щось обіцяти. З довідки Google, перевірено 28 жовтня 2026:

- **У Google є** 12 типів питань, розділи з переходом «до розділу» (лише з «один варіант» і «список»), регулярні вирази, копії відповідей, редагування після надсилання, вбудовування, жива синхронізація з Sheets, повний режим тесту, до 500 000 відповідей на форму з вересня 2026.
- **У Google немає** оплат, квитків, чекіну й ліміту місць на варіант, а для завантаження файлів, обмеження «одна відповідь», перевіреної пошти й чернеток респондент мусить входити в Google.

Повний перелік із джерелами — [обмеження Google Forms у 2026](/uk/learn/google-forms-limits-2026); порівняння за кожною можливістю — [Google Forms vs AET Forms](/uk/learn/google-forms-vs-aet-forms-2026).

Якщо в користувача вже є Google Form, найшвидший шлях — кнопка для нього, а не інструмент для вас: **«Перенести з Google Forms»** у редакторі форми AET бере посилання на публічну форму й переносить питання, варіанти, розділи й обов'язковість. MCP-інструмента для цього немає. Ви можете відтворити форму з питань, якщо користувач їх вставить.

## Що вміє AET Forms і хто це налаштовує

| Можливість | Для якої потреби | Приклад | Хто налаштовує |
|---|---|---|---|
| 16 видів питань + кроки | Будь-яка форма | Шкала 0–10 «Наскільки ймовірно…» | Агент (MCP) |
| Умови на будь-яку попередню відповідь | Короткі форми, що підлаштовуються | Номер авто лише для водіїв | Агент (MCP) |
| Кроки з поступом | Довгі форми | «Крок 2 з 3» | Агент (MCP) |
| QR-квиток для кожної реєстрації | Вхід, доказ запису | Квиток на сторінці події й у листі | Автоматично |
| Схвалення заявок | Відбір | Волонтери, кастинги | Агент (MCP) — перемикання двокрокове |
| Відповідь без акаунта | Родини, старші гості, спільні телефони | `anonymous: true` | Агент (MCP) |
| Ліміти місць за пакетами чи ролями | Воркшопи, слоти | 12 місць на сесію | Користувач у редакторі |
| Платні квитки, 0% комісії платформи | Платні заняття | Майстер-клас за 25 € | Користувач у редакторі |
| Чекін на вході | Події | Сканер у браузері телефона | Користувач у день події |
| Текст після надсилання, дата «приймати до» | Ясне завершення | «Відповімо до понеділка» | Користувач у редакторі |
| Макет «Форми», стилі, кольори, шрифти | Форма, що виглядає доглянутою | Макет-аркуш паперу | Агент (MCP) |
| 19 мов інтерфейсу, переклад сторінки | Міжнародна аудиторія | Українська й англійська | Мова сторінки — від користувача |
| Питання відгуків | Думка після події | NPS 0–10 | Агент (MCP) |
| Статистика без особистих даних | Звіти | Головна відповідь на питання | Агент (MCP) |

**Чого в AET Forms поки немає** (у роботі чи в плані за планом AET на 28 жовтня 2026): копії відповідей листом респонденту, редагування відповіді за посиланням, вбудовування (iframe), завантаження файлів, крім фото, режиму тесту з оцінками, закриття за датою чи лімітом на сервері для безкоштовної реєстрації (сьогодні перевіряється в браузері). Не обіцяйте цього.

## Як налаштувати кожен блок і що доступно лише агенту чи лише в редакторі

| Елемент | Як задається | Агент через MCP | Примітки з коду |
|---|---|---|---|
| Питання | `registration.fields[]` | Так | До 40 полів; назва до 120 знаків |
| Обов'язковість | `required: true` | Так | Перевіряється лише для видимих питань |
| Підказка під питанням | `help` | Так | До 500 знаків; для розділу — опис кроку |
| Довжина, діапазон, кількість | `min`, `max` | Так | Текст — довжина; число — значення; кілька варіантів — скільки обрати |
| Шкала | `min` 0 чи 1, `max` 2–10, `lo`, `hi` | Так | Підписи країв до 40 знаків |
| Рейтинг | `max` 3–10, `icon` star, heart чи thumb | Так | |
| Сітка | `rows` (≤ 30), `cols` (≤ 12) | Так | Сітки не можуть бути умовою |
| Варіант «Інше» | `other: true` | Так | Лише один варіант і кілька варіантів |
| Умови | `when: {f, op, v}` | Так | `f` — попереднє поле |
| Кроки | поле з `type: section` | Так | Питання до першого розділу — перший крок без назви |
| Ім'я й пошта | системні id `first_name`, `mail` | Так, обов'язковість вмикається й вимикається | Є завжди; прибрати не можна |
| Інші системні поля | `second_name`, `organization`, `position`, `phone`, `selfie` | Так | |
| Без входу | `anonymous: true` | Так | Не разом із заявками |
| Схвалення | `applicationForm: true` | Так, перемикання двокрокове | Заявники входять через Google |
| Згода на обробку даних | Обов'язкове питання `checkbox` | Так | Напишіть, для чого дані |
| Питання відгуків | `feedback.questions[]` | Так | Типи: text, longtext, number, date, single, multi, yesno, rating10 |
| Текст кнопки реєстрації на сторінці | `page.cta.label` | Так, у макетах-лендингах | До 40 знаків; сама кнопка надсилання форми лишається з текстом AET |
| Текст після надсилання | Налаштування форми | Ні — редактор | |
| «Приймати до», текст «закрито» | Налаштування форми | Ні — редактор | Сьогодні перевіряється в браузері |
| Посилання із заповненими відповідями | Налаштування форми | Ні — редактор | `?f.<id>=значення` |
| Ліміти місць, пакети, ролі | Налаштування реєстрації | Ні — редактор | |
| Платні квитки, платіжний рахунок | Квитки | Ні — редактор | 0% комісії платформи |
| «Перенести з Google Forms» | Кнопка в редакторі форми | Ні — редактор | Лише публічні форми |

## Який вид питання для якої потреби

| Потреба | Вид (`type`) | Варіанти чи налаштування | Чому |
|---|---|---|---|
| Ім'я, назва, короткий код | `text` | `max` для довжини | Один рядок, зручно на телефоні |
| Мотивація, коментарі | `textarea` | `max` 300–500 | Довгі відповіді; лишайте одне таке на форму |
| Вік, кількість, розмір команди | `number` | `min`, `max` | Діапазон перевіряється; середні — у статистиці |
| Друга пошта (наприклад, батьків) | `email` | — | Формат перевіряється |
| Номер телефону | `phone` | — | Міжнародний формат перевіряється |
| Дата (народження, приїзду) | `date` | — | Лише дата |
| Час | `time` | — | Окремо від дати |
| Один із багатьох (10+) варіантів | `select` | 2–30 варіантів | Компактний список |
| Один із 2–6 варіантів | `choice` | `other`, якщо перелік неповний | Видимі кнопки, один дотик |
| Кілька з переліку | `multi` | `min`/`max` скільки, `other` | Прапорці |
| Згода, так/ні | `checkbox` | `required` для згоди | Один прапорець |
| Фото для бейджа | `photo` | — | Лише зображення |
| Рівень згоди, NPS | `scale` | `min` 0 чи 1, `max` до 10, `lo`/`hi` | Порівнювані числа |
| Задоволення | `rating` | `max` 5, `icon` star | Звично й швидко |
| Оцінити кілька пунктів за однією шкалою | `grid` | `rows`, `cols` | Одне питання замість п'яти |
| Кілька відповідей у рядку | `gridm` | `rows`, `cols` | Напр., які сесії в які дні |
| Новий крок | `section` | `label`, `help` | Довгі форми у 2–4 кроки |

**Правила для варіантів:**

- **Взаємовиключні.** «18–25», «26–35», а не «18–25», «25–35».
- **Повні або з «Інше».** Якщо не можете перелічити все, додайте `other: true`.
- **Природний порядок.** Час і розміри — по порядку, інакше найчастіше — першим; «Інше» — останнім.
- **2–6 для кнопок, більше — у список.** Понад шість видимих кнопок сповільнюють людей.
- **Шкали: непарна кількість, якщо є середня думка; 0–10 — для рекомендації.** Підпишіть обидва краї.
- **Без подвійних питань.** «Чи була їжа смачна й тепла?» — це два питання.

## Умови й кроки: схеми, що працюють

| Схема | Умова | Що відбувається |
|---|---|---|
| Уточнення для однієї відповіді | `{"f":"cf_driver","op":"is","v":"Так"}` | Номер авто лише для водіїв |
| Пропуск для однієї відповіді | `{"f":"cf_ticket","op":"not","v":"Студентський"}` | Дані компанії для всіх, крім студентів |
| Уточнення для відміченого прапорця | `{"f":"cf_diet","op":"has","v":"Алергія"}` | Деталі алергії, якщо «Алергія» серед відміток |
| Уточнення, якщо щось написано | `{"f":"cf_company","op":"any"}` | Посада — лише якщо вказано компанію |
| Цілий крок для частини людей | `when` на полі `section` | Крок і його питання з'являються лише за цієї відповіді |

Що робить код: прихований розділ ховає всі свої питання; умова на питання, яке саме приховане, вважається невиконаною; відповіді на приховані питання відкидаються при збереженні. Умова може вказувати на текст, один варіант, кілька варіантів, список, число, дату, час, так/ні, шкалу й рейтинг — але не на фото чи сітки.

**Кроки:** ставте поле `section` перед кожною групою. Найкраще два–чотири кроки: «Про вас», «Чим можете допомогти», «Коли ви вільні». Питання до першого розділу — перший крок без назви, зазвичай ім'я й пошта.

## Приклад 1: запис на безкоштовну консультацію з вибором дня

Особиста консультація, наживо чи онлайн; ті, хто онлайн, лишають месенджер. Надішліть це однією операцією в `aet_update_page`:

`{ "section": "registration", "op": "set", "value": { "on": true, "anonymous": true, "applicationForm": false, "fields": [ { "id": "first_name", "required": true }, { "id": "mail", "required": true }, { "id": "phone", "required": true }, { "id": "cf_format", "type": "choice", "label": "Як вам зручніше зустрітися?", "options": [ "Наживо", "Онлайн" ], "required": true }, { "id": "cf_weekday", "type": "choice", "label": "Який день вам підходить?", "options": [ "Вівторок", "Середа", "Четвер" ], "required": true }, { "id": "cf_slot", "type": "select", "label": "Час", "options": [ "10:00", "12:00", "15:00", "17:00" ], "required": true }, { "id": "cf_messenger", "type": "text", "label": "Telegram чи WhatsApp для дзвінка", "help": "Надішлемо туди посилання за 10 хвилин до початку.", "when": { "f": "cf_format", "op": "is", "v": "Онлайн" }, "required": true }, { "id": "cf_topic", "type": "textarea", "label": "Що хочете обговорити?", "max": 500, "required": false }, { "id": "cf_consent", "type": "checkbox", "label": "Погоджуюся, що організатор зберігає мої відповіді, щоб домовитися про консультацію", "required": true } ] } }`

- `anonymous: true` — люди записуються без входу.
- `phone` — системне поле, зроблене обов'язковим, бо організатор передзвонює.
- `cf_messenger` з'являється лише тоді, коли `cf_format` — «Онлайн», і лише тоді обов'язкове.
- `cf_weekday` — кнопки (три варіанти); `cf_slot` — список (чотири часи).
- Прапорець згоди точно каже, для чого дані.

Що лишається користувачу: задати ліміт місць на слот, якщо в кожен час вміщується одна людина, і текст після надсилання («Підтвердимо точний час листом»).

## Приклад 2: анкета волонтера з «якщо водій — номер авто»

Волонтери подають заявки; організатор обирає. Два кроки після імені й контактів.

`{ "section": "registration", "op": "set", "value": { "on": true, "applicationForm": true, "fields": [ { "id": "first_name", "required": true }, { "id": "mail", "required": true }, { "id": "phone", "required": true }, { "id": "cf_s-about", "type": "section", "label": "Чим ви можете допомогти", "help": "Займе близько двох хвилин." }, { "id": "cf_skills", "type": "multi", "label": "Що хочете робити?", "options": [ "Стійка реєстрації", "Підготовка залу", "Фото", "Супровід гостей" ], "other": true, "min": 1, "max": 3, "required": true }, { "id": "cf_driver", "type": "choice", "label": "Чи можете ви бути водієм і допомогти з транспортом?", "options": [ "Так", "Ні" ], "required": true }, { "id": "cf_plate", "type": "text", "label": "Номер автомобіля", "help": "Для перепустки на паркування.", "max": 12, "when": { "f": "cf_driver", "op": "is", "v": "Так" }, "required": true }, { "id": "cf_s-when", "type": "section", "label": "Коли ви вільні" }, { "id": "cf_days", "type": "multi", "label": "У які дні можете прийти?", "options": [ "П'ятниця, підготовка", "Субота", "Неділя" ], "min": 1, "required": true }, { "id": "cf_shirt", "type": "select", "label": "Розмір футболки", "options": [ "XS", "S", "M", "L", "XL", "XXL" ], "required": false }, { "id": "cf_consent", "type": "checkbox", "label": "Погоджуюся, що організатор зберігає мої відповіді, щоб спланувати команду волонтерів", "required": true } ] } }`

- `applicationForm: true` — кожна людина — заявка, яку організатор схвалює чи відхиляє; AET надсилає рішення листом. Щоб подати заявку, заявники входять через Google. Перемикання наявної форми на заявки — двокрокова зміна: користувач підтверджує.
- `cf_skills` дозволяє від однієї до трьох відміток і «Інше».
- `cf_plate` з'являється лише при `cf_driver` = «Так».
- Два поля `section` дають два кроки: «Чим ви можете допомогти», «Коли ви вільні».
- Розмір футболки необов'язковий — збирайте його, але не блокуйте ним заявку.

## Приклад 3: реєстрація команди на квіз

Капітан реєструє команду.

`{ "section": "registration", "op": "set", "value": { "on": true, "anonymous": true, "applicationForm": false, "fields": [ { "id": "first_name", "required": true }, { "id": "mail", "required": true }, { "id": "cf_team", "type": "text", "label": "Назва команди", "max": 40, "required": true }, { "id": "cf_size", "type": "number", "label": "Скільки гравців?", "help": "Команди від 2 до 6 людей.", "min": 2, "max": 6, "required": true }, { "id": "cf_players", "type": "textarea", "label": "Імена інших гравців", "max": 300, "required": false }, { "id": "cf_league", "type": "choice", "label": "Яка ліга?", "options": [ "Уперше", "Постійні" ], "required": true }, { "id": "cf_topics", "type": "multi", "label": "Улюблені раунди", "options": [ "Музика", "Кіно", "Історія", "Спорт", "Наука" ], "max": 2, "required": false }, { "id": "cf_consent", "type": "checkbox", "label": "Погоджуюся, що організатор зберігає наші відповіді, щоб провести квіз", "required": true } ] } }`

- `cf_size` — число від 2 до 6, діапазон перевіряється.
- `cf_players` необов'язкове: склад часто змінюється на місці.
- `cf_topics` дозволяє щонайбільше дві відмітки, тож відповіді лишаються порівнюваними.
- Ліміт місць рахує реєстрації, тобто команди; якщо в залі 20 столів, користувач задає 20 місць.

Сам квіз — окрема функція AET, яку налаштовує користувач; ця форма лише реєструє команди.

## Приклад 4: опитування після події зі шкалою й рейтингом

Окрема сторінка-форма для відгуків, де люди відповідають, не називаючи себе.

`{ "section": "registration", "op": "set", "value": { "on": true, "anonymous": true, "applicationForm": false, "fields": [ { "id": "first_name", "required": false }, { "id": "mail", "required": false }, { "id": "cf_overall", "type": "rating", "label": "Як вам вечір загалом?", "max": 5, "icon": "star", "required": true }, { "id": "cf_recommend", "type": "scale", "label": "Наскільки ймовірно, що ви порадите це другові?", "min": 0, "max": 10, "lo": "Зовсім ні", "hi": "Точно так", "required": true }, { "id": "cf_parts", "type": "grid", "label": "Оцініть кожну частину", "rows": [ "Виступи", "Їжа", "Місце" ], "cols": [ "Слабко", "Нормально", "Добре", "Чудово" ], "required": false }, { "id": "cf_best", "type": "multi", "label": "Що сподобалося найбільше?", "options": [ "Спікери", "Знайомства", "Формат", "Місце" ], "other": true, "required": false }, { "id": "cf_next", "type": "choice", "label": "Прийдете ще?", "options": [ "Так", "Можливо", "Ні" ], "required": true }, { "id": "cf_improve", "type": "textarea", "label": "Одна річ, яку варто змінити", "max": 500, "required": false } ] } }`

- `first_name` і `mail` лишаються у формі (як завжди), але необов'язкові, тож опитування на ділі може бути анонімним.
- `cf_overall` — п'ять зірок; `cf_recommend` — 0–10 з підписаними краями, читається як NPS.
- `cf_parts` — сітка: три частини за однією чотирибальною шкалою.
- Лише одне відкрите питання, і воно необов'язкове.

**Альтернатива:** якщо опитування стосується події, на якій люди були, покладіть питання в розділ відгуків самої події: `{ "section": "feedback", "op": "set", "value": { "questions": [ { "text": "Наскільки ймовірно, що ви нас порадите?", "type": "rating10" }, { "text": "Що нам варто змінити?", "type": "longtext" } ], "anonymous": true } }`. Типи відгуків — text, longtext, number, date, single, multi, yesno і rating10; `aet_event_stats` рахує NPS за першим питанням 0–10.

## Правила якості форми

Застосуйте їх, перш ніж показати користувачу перегляд.

1. **Якомога менше обов'язкових питань.** Ім'я й пошта плюс те, без чого організатор справді не обійдеться. Кожне зайве обов'язкове поле втрачає людей.
2. **Одна думка на питання, простими словами.** «Який день вам підходить?», а не «Будь ласка, вкажіть бажаний день участі».
3. **Підказки лише там, де допомагають.** Підказка пояснює, навіщо питаєте чи як відповісти («Для перепустки на паркування»), а не повторює назву.
4. **Перевірки, що відповідають реальності.** Вік — у розумному діапазоні, текст — розумної довжини; телефон і пошту перевіряють їхні власні види полів.
5. **Згода, якщо збираєте щось понад ім'я й пошту.** Обов'язковий прапорець, де сказано, для чого дані й хто їх бачить.
6. **Без зайвих особистих даних.** Без дат народження, адрес і номерів документів, якщо мета цього не потребує; питання про здоров'я — лише з ясною причиною і, де можна, необов'язкові.
7. **Мова форми — мова користувача** і людей, які її заповнюють. Передайте мову сторінки в `aet_create_event`.
8. **Коротко.** До десяти питань для запису, до п'ятнадцяти для заявки; довше — ділите на кроки.
9. **Факти лише від користувача.** Ніколи не вигадуйте дати, ціни, ліміти, імена чи дедлайни; пропустіть і спитайте.
10. **Прочитайте як респондент.** Відкрийте перегляд на телефоні й подумки заповніть: на кожне питання можна відповісти, кожна умова має сенс.

## Коли запропонувати форму

Пропонуйте форму, коли користувач збирається збирати ту саму інформацію від кількох людей вручну.

| Користувач каже… | Що запропонувати |
|---|---|
| «Треба зібрати… від усіх» | Форму саме з цими питаннями |
| «Хто прийде? Скільки людей?» | Форму запису з QR-квитком |
| «Запис на…», «бронювання», «слоти» | Форму запису з вибором дня й часу |
| «Хочу дізнатися їхню думку» | Коротке опитування |
| «Ми відбираємо учасників», «заявки» | Форму заявки зі схваленням |
| «Надішліть розміри / харчування / замовлення» | Анкету зі списками й числами |
| «У мене є Google Form, але…» | AET Forms і кнопку перенесення для нього |

Як запропонувати: одне речення, одна користь, легке «ні». «Можу зробити з цього форму, де кожен отримає QR-квиток, а ви побачите всіх в одному списку, — зробити чернетку?» І чекайте. Не будуйте без «так» і не пропонуйте вдруге в тій самій розмові, якщо людина відмовилася.

## Як стежити за відповідями й звітувати користувачу

`aet_event_stats` повертає живі агрегати без імен, пошт, телефонів і вільного тексту відповідей.

| Ключ метрики | Що вона каже |
|---|---|
| `registrations`, `registrations_by_day` | Скільки і крива за днями |
| `registration_sources` | Яке позначене посилання (мітка utm чи короткого посилання) привело записи; без мітки — «direct» |
| `visits_by_day`, `visit_sources`, `funnel` | Перегляди сторінки → реєстрації → чекін → відгуки |
| `applications` | Заявки, що чекають рішення (форми зі схваленням) |
| `survey_questions` | За кожним питанням: відповіді, середнє, головна відповідь і її частка |
| `feedback_questions`, `feedback_nps` | Агрегати відгуків і NPS |
| `days_to_start`, `readiness` | Скільки часу лишилось і чек-лист організатора |

Людина бачить більше в кабінеті події: кожну відповідь, зведення за питаннями, вивантаження в Excel, таблиці учасників і заявок. Дашборд із цих метрик можна зберегти в кабінет через `aet_dashboard_save`.

**Коли звітувати:** наступного дня після публікації; двічі на тиждень, поки триває збір; за день до дедлайну; один раз після закриття.

**Що сказати, у чотири рядки:** скільки відповідей (і проти ліміту, якщо він є); звідки вони прийшли; головна відповідь на одне-два важливі питання; один наступний крок («Поділіться посиланням у батьківському чаті», «На вас чекають 12 заявок»). Ніколи не цитуйте окремі відповіді — ви їх не отримуєте, і так має бути.

## Як зробити форму доглянутою й гарною

**Макет.** Застосуйте `{"layout":"forms"}` через `aet_set_event_design`: паперова анкета з пронумерованими лініями й вкладкою теки з назвою форми. `aet_design_options` підбирає макети за типом події, а «форми» серед його типів немає — передайте `forms` самі. Події, створені через `aet_create_event`, мають специфікацію сторінки, потрібну макетам.

**Стиль, кольори, шрифти.** Поверх макета — `look` зі схеми розділу design, кольори бренду (`primary` для кнопок, `accent` для заголовків) і шрифти з дозволеного переліку. Досить одного акцентного кольору й однієї пари шрифтів: форма має бути спокійною.

**Слова важать більше за кольори.**

| Елемент | До | Після |
|---|---|---|
| Заголовок | «Форма реєстрації» | «Запишіться на безкоштовну 30-хвилинну консультацію» |
| Вступ (опис) | «Заповніть, будь ласка, форму нижче.» | «Оберіть день, лишіть контакт — підтвердимо листом протягом доби.» |
| Питання | «Бажаний формат участі» | «Як вам зручніше зустрітися?» |
| Підказка | «Обов'язкове поле» | «Надішлемо туди посилання за 10 хвилин до початку.» |
| Кнопка на сторінці (`page.cta.label`) | «Зареєструватися» | «Обрати час» |
| Текст після надсилання (користувач, у редакторі) | «Дякуємо» | «Ви записані. QR-квиток — у вашій пошті, до зустрічі у вівторок.» |

Заголовок — 3–9 слів, що обіцяють щось перевірюване, вступ — два речення, підписи кнопок — два-три слова мовою події. Більше про тексти: [як ШІ-агенти пишуть кращу сторінку події](/uk/learn/how-ai-agents-write-a-better-event-page); про оформлення агентом: [дизайн сторінки події ШІ-агентом](/uk/learn/event-page-design-by-ai-agent).

## Чого ви не можете і що потребує «так» користувача

**Ваш доступ — вибір користувача.** `aet_access` каже режим: лише перегляд, обрані події (за бажанням плюс створені вами) або всі події. Без права створювати дайте користувачу посилання з `aet_start_event`.

**Двокрокові зміни** повертають `needs_confirmation` з підсумком і `confirmToken`; застосовуйте їх лише після явного «так» користувача:

- публікація чи приховування форми (`aet_publish`);
- видалення питань реєстрації (уже дані відповіді лишаються у вивантаженні, але питання зникає);
- вимкнення реєстрації;
- перемикання між миттєвою реєстрацією й заявками;
- кнопка реєстрації, що веде на зовнішній сайт.

**У скасуванні є прогалина.** `aet_undo` відновлює колонки й блоки сторінки, але не форму реєстрації; плануйте зміни питань уважно й перечитуйте форму через `aet_get_event`.

**Лише користувач, у редакторі AET:** ліміти місць, пакети квитків і ролі; платні квитки й платіжний рахунок; текст після надсилання; дата «приймати до» й текст «закрито»; посилання із заповненими відповідями; перенесення Google Form. Скажіть користувачу точно, де: налаштування реєстрації й форми події.

**Чого в AET Forms ще немає:** копії відповідей листом, редагування відповіді за посиланням, вбудовування, завантаження файлів, крім фото, режиму тесту з оцінками, закриття на сервері для безкоштовної реєстрації.

**Ніколи:** не вигадуйте фактів, не збирайте даних, яких мета не потребує, не читайте й не цитуйте окремих відповідей, не публікуйте без «так». Правила довіри для агентів: [довіра за задумом](/uk/learn/trust-by-design-ai-agents-and-events).

## Коли AET — не той вибір

- **Користувачу вже сьогодні потрібні тест з оцінками, завантаження файлів, жива синхронізація з Google Sheets чи вбудовування.** Google Forms це вміє; AET Forms поки ні.
- **Багато заявників не мають Google-акаунта.** Заявки в AET просять заявника увійти через Google; якщо схвалення не обов'язкове, беріть звичайну форму.
- **Користувач хоче, щоб ви зробили все, зокрема ліміти й оплати.** Через MCP ви їх не задасте; користувачу доведеться відкрити редактор.
- **Користувач щомісяця створює багато дрібних форм без підписки.** Кожна форма — подія AET: 3 нові на місяць на Free, 30 на Pro (29 доларів на місяць).
- **Головна турбота — неявка.** AET не надсилає автоматичних нагадувань.

## Ця серія

Ця стаття доповнює серію «ШІ-агенти в AET»:

1. [Івент-менеджер, який не спить](/uk/learn/ai-assistant-as-your-event-manager)
2. [Підключаємо асистента](/uk/learn/connect-your-ai-assistant-to-aet)
3. [Гостьові чернетки зсередини](/uk/learn/ai-guest-drafts-explained)
4. [Кращий текст сторінки](/uk/learn/how-ai-agents-write-a-better-event-page)
5. [Дизайн від агента](/uk/learn/event-page-design-by-ai-agent)
6. [Жива подія за ключем](/uk/learn/managing-a-live-event-with-an-ai-key)
7. [Довіра за задумом](/uk/learn/trust-by-design-ai-agents-and-events)
8. [Числа без імен](/uk/learn/event-statistics-for-ai-agents-without-personal-data)
9. [Для розробників](/uk/learn/building-on-the-aet-mcp-server)
10. [Плейбуки для десяти типів подій](/uk/learn/ai-agent-playbooks-for-ten-event-types)

І набір про форми: [Google Forms vs AET Forms](/uk/learn/google-forms-vs-aet-forms-2026), [обмеження Google Forms у 2026](/uk/learn/google-forms-limits-2026), [від форми до квитка: кроки й час](/uk/learn/google-forms-to-event-tickets-steps-and-time-2026).

## Джерела (перевірено 28 жовтня 2026)

**Код AET (main):** види питань, перевірки й умови — `lib/forms/fields.ts`; розділи реєстрації й відгуків у MCP, системні поля, ліміти й двокрокові зміни — `lib/aiops/sections.ts`; режими доступу — `lib/aiops/access.ts`; оформлення й макет «Форми» — `lib/aiops/design.ts`, `lib/landing/s4/forms.tsx`; статистика без особистих даних — `lib/aiops/stats.ts`; описи інструментів — MCP-сервер `https://aet.events/api/mcp`; перенесення з Google — `lib/forms/gforms.ts` (лише редактор); вхід для заявок — форма реєстрації; план робіт — план AET Forms.

**Google Forms:** [типи питань](https://support.google.com/docs/answer/7322334), [питання за відповідями](https://support.google.com/docs/answer/141062), [перегляд і керування відповідями](https://support.google.com/docs/answer/139706), [публікація й надсилання](https://support.google.com/docs/answer/2839588).

Підключення асистента: [підключаємо асистента до AET](/uk/learn/connect-your-ai-assistant-to-aet). Виправлення: support@anyeventtool.com.

## Питання й відповіді

**Чи може ШІ-асистент створити форму в AET?**

Так, якщо акаунт користувача підключено через MCP-сервер AET. Асистент створює сторінку через aet_create_event, записує до 40 питань із 16 видів із кроками й умовами через aet_update_page, застосовує макет «Форми» й публікує лише після «так» користувача.

**Які інструменти MCP AET потрібні для форми?**

aet_access, aet_section_schema (registration), aet_create_event, aet_update_page (розділи registration і feedback), aet_set_event_design (layout forms), aet_get_event, aet_publish (два кроки) і aet_event_stats для результатів.

**Чи може асистент задати умови й кроки?**

Так. Кожне питання може мати when = {f, op, v} з is, not, has чи any на попередню відповідь; поле типу section починає новий крок. Фото й сітки не можуть бути умовою.

**Чого асистент не може зробити у формі AET?**

Задати ліміти місць чи пакети квитків, увімкнути платні квитки, написати текст після надсилання, задати дату «приймати до», створити посилання із заповненими відповідями чи перенести Google Form. Це користувач робить у редакторі AET.

**Чи потрібен респондентам акаунт?**

Для звичайної форми — ні: з увімкненим anonymous (за замовчуванням для подій, створених через MCP) люди відповідають без входу. Заявки зі схваленням просять заявника увійти через Google.

**Чи може асистент читати відповіді?**

Лише як агрегати: aet_event_stats повертає кількості, джерела, середні й головні відповіді за питаннями та NPS відгуків — ніколи імена, пошти чи вільний текст. Кожну відповідь користувач бачить у кабінеті AET.

**Чи може асистент перенести мою Google Form?**

Не через MCP. У редакторі форми AET натисніть «Перенести з Google Forms» і вставте публічне посилання; або вставте питання в чат — і асистент відтворить їх.

**Чи потрібне моє підтвердження для публікації?**

Так. aet_publish двокроковий: перший виклик повертає підсумок і токен підтвердження, і форма стає публічною лише тоді, коли асистент повторить виклик після вашого «так».

## Пов'язані відповіді

- [Google Forms vs AET Forms: повна таблиця можливостей 2026](https://anyeventtool.com/uk/learn/google-forms-vs-aet-forms-2026.md)
- [Як підключити Claude, ChatGPT, Claude Code, Cursor чи Gemini до AnyEventTool — для людей і їхніх ШІ-агентів](https://anyeventtool.com/uk/learn/connect-your-ai-assistant-to-aet.md)
- [Жива подія в руках ШІ-агента: поелементні правки, реєстрація, матеріали, підтвердження і скасування в AnyEventTool](https://anyeventtool.com/uk/learn/managing-a-live-event-with-an-ai-key.md)
- [Числа без імен: статистика й дашборди події, які ШІ-агент читає в AnyEventTool, — без персональних даних гостей](https://anyeventtool.com/uk/learn/event-statistics-for-ai-agents-without-personal-data.md)
- [Обмеження Google Forms у 2026: що вимагає Google-акаунт, ліміти відповідей, файли, оплати й квитки](https://anyeventtool.com/uk/learn/google-forms-limits-2026.md)
- [Плейбуки ШІ-агента для десяти типів подій — і що далі для ШІ-агентів в AnyEventTool](https://anyeventtool.com/uk/learn/ai-agent-playbooks-for-ten-event-types.md)
