Тема
Are you an LLM? You can read better optimized documentation at /guide\broadcast.md for this page in Markdown format
Массовая рассылка
MaxBotStat умеет отправлять одно и то же сообщение всем контактам бота — текстом или с медиа.
Через кабинет
- Откройте бота → Рассылки → Создать.
- Введите текст (до 4000 знаков).
- По желанию прикрепите файл:
- изображение — JPG/PNG до 20 МБ;
- аудио — MP3/M4A до 20 МБ;
- файл — любой тип до 20 МБ.
- Выберите платформу: все, только Telegram-боты или только Max.
- Нажмите Отправить.
После запуска вы увидите счётчик: отправлено / не доставлено / всего. Каждое исходящее сообщение записывается в базу с direction='out'.
Ограничения и лимиты
Telegram ставит жёсткие пределы на отправку:
- 30 сообщений в секунду на одного бота для разных пользователей;
- 20 сообщений в минуту в одну группу.
- При превышении — ответ
429 Too Many Requestsс заголовкомRetry-After.
MaxBotStat не разгоняет рассылку искусственно: отправляем последовательно, пишем в failed_count каждый отказ. На 5000 контактов рассылка займёт несколько минут.
WARNING
Если бот заблокирован пользователем (Forbidden: bot was blocked by the user) — это считается неудачной попыткой. Контакт остаётся в базе, но при следующих рассылках снова будет среди недоставленных.
Через открытый API
bash
curl -X POST "https://app.maxbotstat.ru/api/v1/bots/<botId>/broadcast" \
-H "X-API-Key: mbs_..." \
-H "Content-Type: application/json" \
-d '{"text":"Привет! Скидка 20% по промокоду SPRING до конца недели."}'Ответ:
json
{
"id": "8c3a...",
"total_count": 412,
"sent_count": 408,
"failed_count": 4,
"created_at": "2026-04-30T12:00:00Z"
}Метод синхронный — вернётся, когда отправит всем. Для больших аудиторий используйте кабинет: там видно ход рассылки.
Защита от повтора
Чтобы не повторить рассылку при повторном вызове, на стороне клиента храните id ответа. Повторный вызов создаст новую рассылку — система не делает автоматическое объединение.
Сегментация
В кабинете можно ограничить аудиторию:
- по источнику (UTM);
- по намерению;
- по дате последнего сообщения (например, «активные за 30 дней»).
В открытом API рассылка идёт по всем контактам бота. Для сегментов используйте кабинет.
Отчёты
Все рассылки сохраняются в таблицу broadcasts:
| Поле | Описание |
|---|---|
id | публичный идентификатор |
text | текст рассылки |
total_count | сколько контактов было выбрано |
sent_count | сколько успешно доставлено |
failed_count | сколько не доставлено |
created_at | время старта |
Этикет
- Не шлите одно и то же сообщение чаще раза в неделю — растёт число недоставленных.
- Используйте сегменты по намерениям, чтобы попадать в нужную аудиторию.
- Не отправляйте холодным контактам — Telegram активно банит ботов с массовым спамом.