Получение результатов

После заполнения пользователей полей в представлении и отправки их, в ваше приложение отправляется исходящий вебхук. Вебхук будет отправлен на Webhook URL , который вы указали в настройках бота во вкладке «Исходящий Webhook», от имени которого было отправлено сообщение с кнопкой (нажатие на которую и вызвало открытие представления).

Задача вашего приложения - обработать входяший вебхук в короткое время и дать ответ. Это может быть как успех и команда на закрытие представления пользователю в интерфейсе Пачки, так и набор ошибок, которые необходио отобразить пользователю в представлении.

Ваше приложение должно дать ответ на вебхук в течение 3 секунд. В ином случае, пользователь получит ошибку отправки в интерфейсе Пачки. Все значения полей будут сохранены и пользователь повторит попытку отправки формы. О том, как закрыть представление или отобразить ошибки по конкретным полям, вы можете прочитать в разделе Закрытие и отображение ошибок.

Вебхук содержит информацию, которая была заложена при открытии представления пользователю (такие поля, как private_metadata и callback_id), и данные заполненных полей представления.

Каждый исходящий вебхук защищён с помощью подписи, основанной на хешировании содержимого. Подробнее об этом, а также о других методах проверки подлинности исходящего вебхука, вы можете прочитать в блоке Безопасность.
Структура исходящего вебхука о заполнении формы
type string Тип объекта (для представлений всегда view)
event string Тип события (для отправки пользователем формы всегда submit)
private_metadata string Строка, заданная при отправке представления
callback_id string Идентификатор для распознавания этого представления, заданный при отправке представления
user_id integer Идентификатор пользователя, который заполнил форму
data object JSON карта заполненных полей представления, где каждый ключ - значение поля name.
name string
или array of strings
или array of objects
или null или []
Значение, которое указал пользователь в поле (или массив значений, если это был множественный выбор или загруженные пользователем файлы). Если пользователь не указал значение, тогда null (или пустой массив, если это поле файлов или чекбоксов)
... ... ...
webhook_timestamp integer Дата и время отправки вебхука (UTC+0) в формате UNIX
Пример вебхука о заполнении формы
{
  "type": "view",
  "event": "submit",
  "private_metadata": "{'timeoff_id':4378}",
  "callback_id": "timeoff_reguest_form",
  "user_id": 1235523,
  "data": {
    "date_start": "2025-07-01", // поле типа date
    "date_end": "2025-07-14", // поле типа date
    "request_doc": [{ // поле типа file_input (массив объектов)
      "name": "request.png", // название файла
      "size": 19153, // размер файла (в байтах)
      "url": "<url>" // прямая временная ссылка на скачивание файла
    }], 
    "accessibility": "phone_only", // поле типа radio
    "info": "Поеду в сибирь на свадьбу лучшего друга", // поле типа input
    "newsletters": ["new_tasks", "project_updates"], // поле типа checkbox (массив строк)
    "team": "success", // поле типа select
    "time": "22:00" // поле типа time
  },
  "webhook_timestamp": 1755075544
}
Срок жизни прямых ссылкок на скачивание файлов ограничен и составляет 1 час