Как создать бота в MAX: пошаговая инструкция и Bot API
Кто может завести бота в MAX, как пройти верификацию и модерацию, где взять токен, как отправить первый запрос к Bot API и принять события через вебхук.
Содержание 11 разделов
Создать бота в MAX так же быстро, как в Telegram, не выйдет. Там бота заводят за минуту в @BotFather, а здесь мессенджер сначала хочет знать, какая организация за ботом стоит. Дальше всё привычно: токен, HTTP-запросы, вебхук, кнопки. Наш счётчик калорий по фото perek.us работает в MAX с 16 сентября 2026 года, и ниже шаги запуска по документации dev.max.ru и нашему опыту.
Кто может создать бота в MAX
Ботов создают на платформе MAX для партнёров, и пускают туда только бизнес: юрлица, ИП и, с 15 июня 2026 года, самозанятых. Все должны быть резидентами РФ. Физическому лицу или иностранной компании верификацию пока не пройти. Организация или ИП могут завести до пяти ботов, самозанятый до двух.
Регистрация и верификация на платформе для партнёров
Войти на платформу можно через веб-версию или через мини-приложение «MAX для бизнеса» внутри мессенджера. В веб-версии регистрируются по номеру телефона и коду из SMS. Берите корпоративный номер или рабочий номер ответственного сотрудника, потому что к одному номеру привязан один профиль со всеми ботами и каналами, и вход по личному номеру менеджера уйдёт вместе с ним при увольнении.
Потом вы создаёте профиль организации, ИП или самозанятого и проходите верификацию. Организация и ИП подтверждаются через Госуслуги или банковские T-Business ID и Alfa ID, самозанятые через Госуслуги. Подтвердить организацию может только руководитель или представитель с правом первой подписи, так что маркетологу, которому поручили запуск бота, понадобится директор. На Госуслугах входят в роли руководителя, а сведения из ЕГРЮЛ или ЕГРИП там должны быть свежими, иначе верификация может не пройти.
Как создать бота в MAX и пройти модерацию
После верификации в разделе «Чат-боты» появляется кнопка «Создать». В карточке бота логотип 500×500 пикселей до 5 МБ, название до 59 символов без эмодзи и описание до 200 символов. Мат, контент 18+ и данные других компаний в этих полях запрещены.
Ник пока выбрать нельзя. Платформа делает его сама по шаблону idИНН_bot для организаций и ИП и se(orgid)_bot для самозанятых. Красивого адреса для визитки не будет, выручает QR-код, который платформа выдаёт вместе со ссылкой.
Модерация по документации занимает до 48 часов по рабочим дням, и пока у бота статус «На модерации», его настройки менять нельзя. Исходов два: «Опубликован» или «Нужны исправления» с причиной отказа. Любая правка карточки после публикации снова отправляет бота на проверку, так что если реклама стартует в понедельник, отправляйте бота на модерацию не позже среды на прошлой неделе.
Где взять токен бота MAX
Токен появляется только после модерации. Путь по текущей документации: раздел «Чат-боты», у нужного бота меню ⋮ → «Настройки», значок копирования справа от поля с токеном. Соседний значок выпускает новый токен, если старый мог утечь. Если бота создавали в мини-приложении «MAX для бизнеса», токен выдаёт и одноимённый бот по команде «Получить токен».
Если экран выглядит иначе, ищите поле с токеном в настройках бота: с июня 2026 года MAX дважды переделывал этот раздел. Хранят токен так же, как в Telegram, в переменных окружения на сервере, вне репозитория и переписки. Подробнее в статье про токен Telegram-бота.
Первый запрос к MAX Bot API
Bot API у MAX устроен привычно: HTTPS-запросы, ответы в JSON, токен в заголовке Authorization, а передавать его в адресе больше нельзя. С 19 июля 2026 года запросы идут на platform-api2.max.ru. Код со старым адресом platform-api.max.ru придётся поправить и заодно добавить сертификат Минцифры в список доверенных на сервере.
Проверить токен проще всего запросом GET /me, он возвращает имя и ник бота:
curl -X GET "https://platform-api2.max.ru/me" \
-H "Authorization: $MAX_BOT_TOKEN"
Ответ 401 значит, что токен неверный или недействителен. Лимиты такие: 30 запросов в секунду на бота, два сообщения в секунду в один чат, 4000 символов в сообщении. На лишние запросы API отвечает кодом 429.
MAX Bot API на Python
Официальные библиотеки у MAX есть для JavaScript и Go. Для Python есть спецификация OpenAPI, из которой генератор соберёт клиент, и сторонние библиотеки вроде maxapi. В perek.us мы написали свой небольшой клиент на aiohttp. Минимальный эхо-бот на requests:
import os
import requests
API = "https://platform-api2.max.ru"
HEADERS = {"Authorization": os.environ["MAX_BOT_TOKEN"]}
marker = None
while True:
params = {"timeout": 30}
if marker is not None:
params["marker"] = marker
data = requests.get(f"{API}/updates", headers=HEADERS, params=params, timeout=40).json()
marker = data.get("marker")
for update in data.get("updates", []):
if update["update_type"] != "message_created":
continue
message = update["message"]
requests.post(
f"{API}/messages",
headers=HEADERS,
params={"user_id": message["sender"]["user_id"]},
json={"text": "Получил: " + message["body"].get("text", "")},
)
Разработчика из Telegram здесь ждут три сюрприза: текст лежит в message.body.text, отправитель в поле sender, а время в событиях приходит в миллисекундах.
Вебхук или long polling
Long polling через GET /updates из примера выше: бот сам спрашивает сервер о новых событиях и ждёт ответа до 90 секунд. Для разработки и тестов этого хватает, но документация предупреждает, что способ ограничен по скорости и сроку хранения событий, и рабочему боту нужен вебхук. Включить оба сразу нельзя.
Вебхук подключают запросом POST /subscriptions с адресом, типами событий и секретом, который потом приходит в заголовке X-Max-Bot-Api-Secret. Требования строгие. Только HTTPS на порту 443, сертификат доверенного центра или Минцифры, самоподписанные MAX не принимает. Ответить кодом 200 нужно за 30 секунд, иначе MAX повторит доставку до 10 раз, а после 8 часов без успеха отпишет бота.
В perek.us 30 секунд оказались тесными: разбор фото еды идёт десятки секунд. Поэтому вебхук у нас ничего не считает. Он сверяет секрет, кладёт событие в очередь Redis и сразу отвечает 200, а разбирает события отдельный процесс. Если подписаться на вебхук не вышло, бот падает с ошибкой, потому что тихо уйти в long polling ему нельзя: при живой подписке опрос не получает событий.
Кнопки и мини-приложение
Клавиатура в MAX прикрепляется к сообщению вложением inline_keyboard в массиве attachments. В ней до 210 кнопок и до 7 в ряду, а ссылок и кнопок мини-приложения в ряд помещается не больше трёх. Постоянного меню под полем ввода, как в Telegram, нет, поэтому меню в perek.us приходит сообщением по команде /menu. Ещё одна ловушка: пустой список вложений при правке сообщения снимает с него кнопки. Кнопка запроса контакта годится для регистрации. В сообщении с номером приходит поле hash, и по нему бот проверяет, что номер принадлежит аккаунту в MAX.
Мини-приложение подключают в настройках бота после модерации: указывают адрес на https и подпись кнопки запуска. Внутри работает библиотека MAX Bridge. Стартовые данные MAX подписывает тем же алгоритмом, что и Telegram, HMAC-SHA256 от токена бота, поэтому проверку initData мы сделали общей для двух мессенджеров.
Чем создание бота в MAX отличается от Telegram
| Telegram | MAX | |
|---|---|---|
| Кто создаёт бота | любой пользователь в @BotFather | подтверждённые ООО, ИП и самозанятые из РФ |
| Модерация | нет | до 48 часов по рабочим дням |
| Ник бота | выбираете сами | генерируется по ИНН или номеру профиля |
| Токен | сразу после создания | в настройках, после модерации |
| Длина сообщения | 4096 символов | 4000 символов |
| Меню под полем ввода | есть | нет, только кнопки под сообщением |
Конструктор ботов в MAX или код
Без программиста бота собирают в конструкторе одного из официальных партнёров MAX: сценарий делают из шаблонов на сайте конструктора и подключают к боту токеном. Для ответов на частые вопросы или анкеты заявки этого хватает. Если бот работает с CRM, 1С, оплатой или своей базой клиентов, нужен код. Где граница, мы разбирали в статье конструктор ботов или разработка.
Перенос бота из Telegram в MAX
Если бот уже работает в Telegram, второй с нуля писать незачем. В perek.us подсчёт калорий, база и оплата общие, а для MAX написан отдельный слой: приём событий, отправка сообщений и перевод кнопок. Он запущен отдельным процессом, чтобы падение одного мессенджера не уносило второй.


Подвох в мелочах. Незнакомый HTML-тег MAX показывает как текст, так что телеграмную цитату пользователь увидит вместе с тегами. Встроенных платежей вроде Stars у ботов MAX нет, оплату мы принимаем по ссылке на ЮKassa. Callback-кнопку, на которую бот в MAX не ответит, лучше не переносить: нажатие ничего не сделает, и человек решит, что бот сломался. Аудитория MAX, по нашим наблюдениям, старше телеграмной, поэтому подписи кнопок мы пишем глаголами и ставим не больше двух в ряд.
Так мы делаем ботов и для клиентов: один бэкенд на два мессенджера, клиенты из обоих в одной базе. Подробности на странице ботов для MAX. Зачем бизнесу второй канал, мы писали в статье о блокировке Telegram в России, а что ещё MAX даёт компании, в обзоре MAX для бизнеса.
Частые вопросы
Как создать бота в MAX?
Зарегистрируйтесь на платформе MAX для партнёров и верифицируйте профиль организации, ИП или самозанятого. Затем в разделе «Чат-боты» нажмите «Создать», заполните карточку и дождитесь модерации: до 48 часов по рабочим дням.
Где взять токен бота в MAX?
В настройках бота на платформе: раздел «Чат-боты», меню ⋮ → «Настройки», значок копирования рядом с полем токена. Появляется он только после модерации.
Может ли физическое лицо создать бота в MAX?
Пока нет. Верификацию проходят только резиденты РФ: юрлица, ИП и, с 15 июня 2026 года, самозанятые.
Есть ли у MAX Bot API библиотека для Python?
Официальные библиотеки есть для JavaScript и Go. Для Python клиент генерируют из спецификации OpenAPI, берут стороннюю библиотеку или пишут свой на обычных HTTPS-запросах.
Можно ли сделать бота в MAX без программирования?
Можно, в конструкторах официальных партнёров MAX: сценарий собирают из шаблонов и подключают к боту по токену. Для связи с CRM, 1С или своей базой бота пишут кодом.