Zapnoty — уведомления, OTP, формы и поддержка через Telegram и Max
Telegram + Max · 7 возможностей в одной платформе

Всё общение с пользователями
через Telegram и Max

Уведомления, OTP без SMS, формы без бэкенда, поддержка, авторизация и рассылки по расписанию — единый REST API и общий кабинет. Telegram и Max, один API.

// Уведомление подписчику
POST /v1/send
{
"subscriber_id": "550e8400-...",
"text": "Заказ #1042 отправлен!",
"buttons": [[{"text": "Отследить", "url": "..."}]]
}

Возможности

Всё, что нужно для
уведомлений

Telegram Max

Два мессенджера, один API

Telegram и Max через единый интерфейс. Подписчик выбирает канал, вы отправляете одинаково.

Telegram
Max

OTP без SMS

Коды подтверждения через мессенджер. Дешевле SMS, мгновенная доставка, контроль попыток. Кастомный шаблон с {{code}}.

OTP Code
4
8
2
9
1
6

Broadcast с прогрессом

Массовая рассылка через очередь. Отслеживайте статус, sent/failed в реальном времени.

sent 2,847
failed 12
status completed

Auth через ботов

OAuth-авторизация пользователей через Telegram и Max. Статические ссылки, API-сессии с state, QR-polling для кросс-девайс.

1 Клик по ссылке
2 Подтверждение в боте
3 Данные получены

Helpdesk

Встроенная система тикетов. Клиенты пишут в бот — вы отвечаете через API или дашборд. SLA-таймеры, статусы, вебхуки.

#1024 new

Формы

Принимайте заявки с сайтов без бэкенда — безопасно и просто

fetch('/f/form_id', {
method:'POST',
body:JSON.stringify({
name, email, message
})
})

Мультиязычность

Бот отвечает на языке подписчика. Встроенные локали ru/en, переключение через /lang.

RU EN

Расписание

Отложенные сообщения, автоматические цепочки при подписке и повторяющиеся рассылки по расписанию

Отложенные
Цепочки (drip)
🔄 Повторяющиеся

Гранулярные permissions

Типы уведомлений на уровне проекта. Подписчик контролирует, что получать.

Deep link подписка

Ссылка вида t.me/bot?start=proj_SLUG. Подписка в один клик с привязкой subscriber_id.

Медиа и кнопки

Фото, видео, документы. Inline-кнопки с URL или callback_data. До 3 рядов по 3 кнопки.

Шаблоны сообщений

Создайте шаблон с переменными: {{order_id}}. Переиспользуйте без дублирования текста.

Вебхуки

12 типов событий: подписки, доставка, рассылки, кнопки, auth, helpdesk. HMAC-SHA256 подпись. Настройка через дашборд или API.

Markdown и HTML

Форматирование текста: жирный, курсив, код, ссылки. Поддержка plain, markdown и html.

Брендинг отправителя

Подпись с именем, описанием и логотипом: готовая аватарка из набора или свой логотип. Автосообщения при подписке и отписке на двух языках.

Аналитика доставки

Статистика отправок: total, failed, по каналам, по дням за 30 дней.

Сегменты (теги)

Предустановленные теги для сегментации. CRUD через дашборд и API, до 20 на проект.

API

Простой REST API

Bearer-токен, JSON in/out. Несколько эндпоинтов покрывают все сценарии.

api.zapnoty.com
POST /v1/send
 
{
"subscriber_id": "550e8400-...",
"text": "Заказ #1042 отправлен!",
"buttons": [[{
"text": "Отследить",
"url": "https://..."
}]]
}
POST /v1/send
POST /v1/otp/send
POST /v1/otp/verify
POST /v1/broadcast
GET /v1/subscribers
PUT /v1/subscribers/:id/tags
GET /v1/auth/link
POST /v1/auth/verify
POST /v1/helpdesk/tickets
POST /v1/helpdesk/tickets/:id/reply
GET /v1/templates
POST /v1/webhooks

Как это работает

От регистрации до первого уведомления за 5 минут

Создайте проект

Зарегистрируйтесь через Яндекс или ВК, создайте проект и получите API-ключ.

Подключите подписчиков

Отправьте пользователям deep link. Они подписываются в один клик через Telegram или Max бот.

Отправляйте

Один HTTP-запрос с Bearer-токеном — и уведомление мгновенно доставлено.

Бесплатный старт

Три строки кода — и уведомления работают

Без привязки карты. 100 кредитов в месяц бесплатно — этого хватит, чтобы попробовать все возможности. Интеграция за 5 минут.

curl -X POST /v1/send
-H "Authorization: Bearer zn_..."
-d {"text": "Привет!"}
Начать бесплатно

FAQ

Часто задаваемые вопросы

Да, подписчику нужен Telegram или Max. Он переходит по deep link, нажимает Start в боте — и подписан. Никакой регистрации или установки дополнительных приложений.

Бесплатный тариф — 100 кредитов в месяц (1 кредит = 1 сообщение в Telegram/Max, 3 кредита = email). Платные тарифы от 290 ₽/мес (300 кредитов), с квартальной (−13%) и годовой (−33%) скидками. 11 ступеней вплоть до корпоративного тарифа — подробности на странице «Тарифы».

Уведомления доставляются через мессенджеры, а не SMS. Дешевле в 5-50 раз (0.14-0.84 ₽ за сообщение против 4-7 ₽ за SMS), мгновенно, с open rate 90-95%. Поддерживает кнопки, медиа, форматирование — чего SMS не умеет.

Команда /stop в боте отписывает от всех проектов. Также подписчик может управлять подписками через /settings.

Да, API работает глобально. Сервер в России, но отправлять уведомления можно подписчикам в любой стране, где доступен Telegram или Max.

Да. Можно отправлять inline-кнопки с URL или callback_data, а также изображения, видео и документы через поле media.

POST /v1/otp/send генерирует 6-значный код и отправляет подписчику. POST /v1/otp/verify проверяет введённый код. Встроенная защита от перебора: по умолчанию 3 попытки (диапазон 1–10), TTL 5 минут. Если пользователь ещё не подписан, используйте POST /v1/otp/request — сервис сам сгенерирует deeplink, бот предложит подписаться и пришлёт код одной кнопкой.

Да. Лимит — 300 запросов в минуту на проект. При превышении вернётся 429 с заголовком Retry-After и полем retryable: true в JSON. Все ошибки API содержат поле retryable, помогающее определить стоит ли повторить запрос.

Да. Management API позволяет CRUD-операции для шаблонов, разрешений, тегов, вебхука, форм (и маршрутов доставки) и конфигурации helpdesk (настройки, SLA, типы обращений, готовые ответы, правила маршрутизации). Аналог setWebhook в Telegram Bot API. Подробности в разделе «Управление (API)» документации.

Пользователь кликает ссылку бота → подтверждает вход в мессенджере → автоматически подписывается на уведомления → ваш сервер получает данные (имя, username, subscriber_id). Три варианта: статическая ссылка, API-сессия с state, QR-polling для кросс-девайс. Подробности в разделе «Auth через ботов» документации.

Helpdesk — встроенная система тикетов поддержки. Клиенты пишут в бот — создаётся тикет, пользователь автоматически подписывается на уведомления. Вы отвечаете через API (POST /v1/helpdesk/tickets/{id}/reply) или дашборд. Есть статусы (new, in_progress, waiting, closed), типы обращений (Баг, Предложение, Вопрос, Финансы — настраиваются), SLA-таймеры и вебхук-события. Поддерживается канал virtual для тикетов от пользователей сайта/приложения без мессенджера — ответы доставляются через webhook. Включается в настройках проекта.

Да! Zapnoty поддерживает три типа: отложенная отправка (конкретная дата/время), цепочки при подписке (drip), повторяющиеся рассылки (каждые N часов).

Да! Создайте форму в кабинете или через API (POST /v1/forms) и получите публичный endpoint. Отправляйте данные через fetch() прямо из HTML — без API-ключа, безопасно. Заявки приходят в Telegram, Max или на email.

Да — режим Custom Bots (white-label) на платных тарифах. Подключаете свой Telegram/Max бот по токену: своё имя, аватар, приветствие, команды и брендинг Mini App. Подписчики общаются с вашим ботом, а не с системным. Режим выбирается при создании проекта и неизменяем. Подробности — в разделе «Custom Bots» документации.

У каждого проекта два API-ключа: боевой zn_live_ и тестовый zn_test_. Запрос с тестовым ключом проходит всю API-логику (валидация, ответы, коды ошибок, вебхуки), но реальное сообщение в Telegram/Max не отправляется — это режим песочницы (sandbox). Через поле _test_directives можно форсировать исход доставки (success/failed), ответ /v1/otp/send возвращает реальный код в поле sandbox_code, а эндпоинт /v1/test/simulate-event триггерит любое webhook-событие. Важно: тест-ключ умеет читать (GET) и делать runtime-операции (отправка, OTP, broadcast), но не может изменять настройки проекта — такой запрос вернёт 403, настройки делаются боевым ключом. Подробности — в разделе «Тестирование интеграции» документации.