Бот присылает подписчику вопрос с кнопками. По клику — свой follow-up текст, маршруты уведомлений и webhook. Встраивайте подтверждения записей, доставок и заказов без своего бэкенда на обработку кнопок.
· Сразу или к назначенному времени · TTL · approved / declined / reschedule
Без нас
Inline-кнопки в боте — это callback-и, вебхуки, хранение состояния и тексты ответов. Написать и поддерживать всё это ради «Придёте? Да / Нет» — недели работы.
Администратор обзванивает клиентов ради подтверждения записи. SMS-опросы стоят 4-7 ₽ и не дают нажать кнопку — только перезвонить.
Без быстрого подтверждения клиент забывает про запись. Слот простаивает, доставка едет впустую, заказ зависает — а вы узнаёте постфактум.
Что внутри
Задайте prompt с {{переменными}} и кнопки approve / decline / reschedule со своими подписями. Обязательна только approve — остальные по желанию.
Для каждого исхода — свой текст. Нажал «Приду» → «Ждём вас в 18:00», «Не приду» → «Слот освобождён». Бот отвечает сам, без вашего сервера.
Запускайте согласование мгновенно или к назначенному времени через scheduled_at. TTL ограничивает срок ответа — по истечении срабатывает исход expired.
Как в формах: на approved / declined / reschedule / expired — уведомить email, мессенджер, конкретного подписчика или всю команду.
approval.sent, .approved, .declined, .reschedule, .expired с HMAC-подписью. Обновляйте CRM, календарь или заказ в реальном времени.
{{плейсхолдеры}} подставляются из vars при запуске — имя, время, номер заказа. В вопросе можно приложить медиа и выбрать формат текста.
Как это работает
POST /v1/approval-templates — вопрос, кнопки, тексты follow-up и TTL по умолчанию. Добавьте маршруты уведомлений по исходу.
POST /v1/approvals с template_id и подписчиком (subscriber_id или external_id). Передайте vars и, при необходимости, scheduled_at.
Бот присылает вопрос, подписчик жмёт кнопку. Вы получаете webhook и можете опросить GET /v1/approvals/{id} — статус и outcome.
FAQ
Нет. Zapnoty сам показывает кнопки, ловит нажатие, отправляет follow-up и шлёт вам webhook с исходом. Вы только создаёте шаблон и запускаете согласование через API.
Обычное сообщение с inline-кнопками требует, чтобы вы сами обрабатывали callback-и. Согласование — это готовый сценарий: исходы approved / declined / reschedule / expired, тексты follow-up, маршруты и события из коробки.
Да. Укажите scheduled_at при запуске — вопрос уйдёт в это время (например, за сутки до записи). Без него отправка происходит сразу. TTL (ttl_minutes) ограничивает срок ответа.
По истечении TTL согласование получает исход expired: отправляется follow-up для expired (если задан), срабатывают маршруты expired и приходит webhook approval.expired.
Запускайте согласование по subscriber_id или по вашему external_id. Оба возвращаются в статусе и в webhook, плюс любое поле metadata — так вы связываете ответ со своей записью или заказом.
Вопрос подписчику — 1 кредит, follow-up после ответа — ещё 1 кредит. Маршрут-уведомление на email — 3 кредита; в мессенджер или подписчику — 1 кредит.
Без привязки карты. 100 кредитов в месяц бесплатно — этого хватит, чтобы попробовать все возможности.
Решения и кейсы
Частые сценарии, в которых Zapnoty заменяет связку из 3-4 отдельных сервисов.
До 14 раз дешевле SMS, доходчивее email
OTP, статусы заказов, брошенные корзины, промо
Формы с уведомлением сразу в Telegram, без забытых ящиков
Drip-уроки, напоминания, Q&A и вход через бот
Поддержка в Telegram/Max без тяжёлого чат-виджета