К содержанию

Как создать бота в 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

TelegramMAX
Кто создаёт боталюбой пользователь в @BotFatherподтверждённые ООО, ИП и самозанятые из РФ
Модерациянетдо 48 часов по рабочим дням
Ник ботавыбираете самигенерируется по ИНН или номеру профиля
Токенсразу после созданияв настройках, после модерации
Длина сообщения4096 символов4000 символов
Меню под полем вводаестьнет, только кнопки под сообщением

Конструктор ботов в MAX или код

Без программиста бота собирают в конструкторе одного из официальных партнёров MAX: сценарий делают из шаблонов на сайте конструктора и подключают к боту токеном. Для ответов на частые вопросы или анкеты заявки этого хватает. Если бот работает с CRM, 1С, оплатой или своей базой клиентов, нужен код. Где граница, мы разбирали в статье конструктор ботов или разработка.

Перенос бота из Telegram в MAX

Если бот уже работает в Telegram, второй с нуля писать незачем. В perek.us подсчёт калорий, база и оплата общие, а для MAX написан отдельный слой: приём событий, отправка сообщений и перевод кнопок. Он запущен отдельным процессом, чтобы падение одного мессенджера не уносило второй.

Бот perek.us в мессенджере MAX: приветствие и кнопки под сообщением
Кнопки под сообщением в MAX
Бот perek.us в MAX посчитал калории завтрака по текстовому сообщению
Запись еды текстом и карточка с КБЖУ
Наш бот perek.us в MAX, там он называется «Ем и худею: легко». Кнопки под сообщениями и карточка приёма пищи, логика та же, что в Telegram

Подвох в мелочах. Незнакомый 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С или своей базой бота пишут кодом.

ИИ-бриф

Нужен похожий бот? Опишите задачу

Бланк заявки Смета за 1 рабочий день
Чем занимается ваш бизнес?

Описание можно не писать: оставьте телефон или Telegram, и мы сами свяжемся и всё уточним.

Ответим в Telegram или по телефону