Перейти к статье
Подключение и API

Как узнать ID канала МАКС и получить данные через API

Отличаем числовой ID от публичной ссылки, получаем идентификатор из событий и проверяем канал. Отдельно разбираем подключение к MaxPosty без собственного бота.

Чтобы узнать ID канала МАКС для собственной интеграции, получите chat_id из события бота и сохраните его. В рабочем сервисе события доставляются через Webhook. После этого можно запросить данные канала методом GET /chats/{chatId}. Публичная ссылка сама по себе этот идентификатор не заменяет.

Если ваша задача — подключить канал к MaxPosty для публикаций, начните с инструкции подключения. В этом сценарии работает общий помощник сервиса; создавать своего бота и вручную выполнять запросы ниже не требуется.

Какие данные нужны читателю, а какие — интеграции
ЗначениеДля чего нужноМожно передать как chatId?
Название каналаПоказывает читателю, чей канал он открыл.Нет: метод ожидает число.
Публичная ссылка или usernameПомогает найти и открыть канал в МАКС.Нет документированного прямого преобразования в ID.
chat_idОпределяет конкретный чат или канал в запросах API.Да: тип параметра — целое число int64.

В описании GET /chats/{chatId} указан числовой параметр chatId. Метод получения данных по ссылке или @username в проверенной документации не описан. Поэтому попытка подставить ссылку вместо числа не соответствует контракту метода. Условный ID в примерах ниже отрицательный; копировать его для своего канала нельзя.

Что делать после отключения GET /chats

Готового запроса для списка всех каналов, куда добавлен бот, сейчас нет. МАКС предлагает разработчику собирать идентификаторы из событий и поддерживать собственное хранилище. Это позволяет интеграции показывать каналы, о которых она получила события, но не означает поиск любых публичных каналов мессенджера.

Сохраняйте новый chat_id без дублей. При событии bot_removed обновляйте запись о доступе: например, помечайте канал отключённым и прекращайте использовать его как доступный боту. Такой подход следует рекомендациям по замене GET /chats.

Как получить chat_id канала через Webhook

  1. Подготовьте собственного бота и приём событий. Настройте подписку методом POST /subscriptions. Если ограничиваете update_types, включите bot_added и bot_removed.
  2. Добавьте бота в нужный канал администратором. Убедитесь, что выполняете действия именно с ботом, для которого настроена подписка. Для получения событий каналов боту нужны права администратора.
  3. Обработайте событие bot_added. Проверьте update_type, возьмите chat_id и убедитесь, что is_channel равно true. Это отличает канал от группового чата.
  4. Сохраните ID и проверьте данные. Используйте полученное значение в запросе информации о канале и сравните название с ожидаемым, прежде чем настраивать публикации.

Ниже — сокращённый фрагмент условного события, а не полный ответ API. Поля timestamp и user здесь опущены. Их описание и структуру bot_added смотрите в объекте Update.

{
  "update_type": "bot_added",
  "chat_id": -1234567890123,
  "is_channel": true
}

По требованиям Webhook сервер принимает HTTPS-запросы на порту 443 с доверенным TLS-сертификатом и отвечает HTTP 200 в течение 30 секунд. Укажите secret при создании подписки и проверяйте заголовок X-Max-Bot-Api-Secret на своём сервере. Повторная доставка события возможна, поэтому сохранение должно быть устойчивым к повторам.

Как проверить получение ID при разработке

Для отдельного тестового бота без активной Webhook-подписки доступен GET /updates. Этот способ ограничен скоростью и сроком хранения событий. Официальная документация разрешает его для разработки и тестирования, а для production требует Webhook.

Задайте BOT_TOKEN в окружении безопасным способом; это токен вашего собственного бота. Пример не содержит действительного токена. Запустите запрос и добавьте тестового бота администратором тестового канала, чтобы получить новое событие bot_added.

: "${BOT_TOKEN:?Задайте токен собственного бота в окружении}"
curl --fail-with-body --silent --show-error \
  'https://platform-api2.max.ru/updates?types=bot_added&timeout=30' \
  -H "Authorization: ${BOT_TOKEN}"

В ответе ищите объект в массиве updates. При следующих запросах передавайте полученный marker, как описано в документации: без него возвращается только последнее обновление. Long Polling не восстанавливает полный список ранее подключённых каналов. Не отключайте действующий Webhook ради проверки этого примера на рабочем боте.

Как запросить сведения о канале по известному ID

Подставьте сохранённый chat_id в GET /chats/{chatId}. Запрос возвращает данные, включая chat_id, type, title, status и description. Для канала ожидается type: "channel"; поля, допускающие null, обрабатывайте отдельно.

: "${BOT_TOKEN:?Задайте токен собственного бота в окружении}"
# Замените пример на chat_id из полученного события
CHAT_ID='-1234567890123'
curl --fail-with-body --silent --show-error \
  "https://platform-api2.max.ru/chats/${CHAT_ID}" \
  -H "Authorization: ${BOT_TOKEN}"

Текущие примеры МАКС используют домен platform-api2.max.ru и заголовок Authorization с самим токеном. Передача токена через URL больше не поддерживается. Если проверка TLS не проходит, настройте доверенные сертификаты по официальной документации; не отключайте проверку сертификата в запросе.

Если событие не приходит или ID не сохранился

  • Проверьте нужного бота. Токен, Webhook-подписка и администратор канала должны относиться к одной интеграции.
  • Проверьте доставку. Убедитесь, что сервер доступен по HTTPS и фильтр типов подписки включает bot_added.
  • Учтите выбранный способ получения событий. При активном Webhook GET /updates не работает. Смотрите журналы своего приёмника.
  • Для давно добавленного бота ищите сохранённые данные. Проверьте хранилище интеграции и журнал принятых событий. Не рассчитывайте, что новый запрос автоматически вернёт пропущенную историю.

Сам ID не заменяет доступ к каналу. Перед действиями проверяйте состояние подключения и необходимые права. Токен даёт доступ к управлению ботом: храните его на сервере, не вставляйте в публичный код, скриншоты или обращения в поддержку.

Как подключить канал к MaxPosty без собственного бота

Для редакционной работы в MaxPosty используется общий «MaxPosty Помощник». Добавьте его в канал, назначьте администратором по инструкции подключения канала МАКС, затем выберите канал в мастере сервиса. Разработка приёмника событий и передача токена собственного бота в этот сценарий не входят.

Мастер MaxPosty на шаге выбора каналов после подтверждения профиля и добавления помощника
Интерфейс MaxPosty: выбор доступного канала после подключения общего помощника. Это экран сервиса, а не инструмент поиска каналов в документации MAX API.

Подробнее о роли помощника — на странице «Бот для канала МАКС», о принципах доступа — на странице безопасности MaxPosty. После подключения можно организовать управление каналом и автопостинг в МАКС.

Официальные источники и дата проверки

Материал проверен 4 октября 2026 года по документации MAX для разработчиков. Перед изменением собственной интеграции сверяйте требования и параметры методов:

Частые вопросы

Можно ли получить ID канала МАКС по публичной ссылке?

В проверенной официальной документации нет метода, который превращает публичную ссылку или username канала в chat_id. Метод GET /chats/{chatId} принимает числовой идентификатор. Для собственной интеграции сначала получите его из события бота, а затем запросите сведения о нужном канале по сохранённому ID.

Почему GET /chats больше не возвращает список каналов?

Документация МАКС указывает, что метод GET /chats не поддерживается с июня 2026 года. Готового списка каналов для бота теперь нет. Разработчику нужно собирать chat_id из событий через Webhook, хранить идентификаторы, обрабатывать повторы и обновлять записи, когда бот удалён из канала.

Нужно ли искать chat_id и передавать токен для подключения к MaxPosty?

Для обычного подключения к MaxPosty создавать собственного бота и передавать его токен не требуется. Добавьте общего помощника MaxPosty в нужный канал, назначьте ему права по инструкции и выберите канал в мастере подключения. Раздел статьи с запросами API относится к разработчикам собственной интеграции.

Публикации без разработки интеграции

Подключите канал к MaxPosty

Используйте общего помощника сервиса и настройте работу с публикациями по инструкции подключения.

Открыть инструкцию