API MAX — методы и объекты для разработки ботов | Мои друзья
Открыть бота

API MAX

API MAX — это HTTP-интерфейс для взаимодействия с платформой MAX. Все методы работают через REST-запросы с JSON-телом. Ниже — структура API, аутентификация и ключевые методы, которые я использую в боте «Мои друзья».

Общая структура

Базовый URL для запросов:

https://platform-api2.max.ru/bot/{TOKEN}/{METHOD}

Где {TOKEN} — токен бота, {METHOD} — название метода.

HTTP-методы

API использует стандартные HTTP-методы:

  • POST — создание ресурсов (отправка сообщений, загрузка файлов)
  • GET — получение данных (информация о боте, сообщения, чаты)
  • PUT — обновление (редактирование сообщений)
  • DELETE — удаление (удаление сообщений, отписка от webhook)
  • PATCH — частичное обновление (изменение информации о чате)

Аутентификация

Токен передаётся в заголовке Authorization или в URL запроса. Передача через query-параметры больше не поддерживается — используй заголовок:

Authorization: ваш_токен_бота

HTTP-коды ответов

  • 200 — успешный запрос
  • 400 — недействительный запрос
  • 401 — ошибка аутентификации
  • 404 — ресурс не найден
  • 429 — превышено количество запросов
  • 503 — сервис недоступен

Отправка сообщений

Основной метод для отправки сообщений — POST /messages. Вот пример с inline-клавиатурой:

{
  "text": "Привет! Чем могу помочь?",
  "chat_id": "12345",
  "format": "markdown",
  "attachments": [{
    "type": "inline_keyboard",
    "payload": {
      "buttons": [[
        {"type": "callback", "text": "🔍 Найти", "payload": "find_match"},
        {"type": "callback", "text": "👤 Анкета", "payload": "my_profile"}
      ]]
    }
  }]
}

Ответ на callback

Когда пользователь нажимает inline-кнопку, бот получает событие message_callback. Чтобы ответить, используй POST /answers:

{
  "callback_id": "abc123",
  "text": "Ищу друзей... 🔍",
  "show_alert": false
}

Работа с Webhook

MAX отправляет события на URL твоего сервера. Подписка через POST /subscriptions:

{
  "url": "https://твой-сервер.ru/webhook",
  "events": ["message_callback", "bot_added", "bot_started"]
}
💡 Мой совет: всегда отвечай 200 OK на webhook в течение 3 секунд. Если не ответил — MAX повторит запрос, и ты получишь дубликаты событий.

Форматирование текста

MAX поддерживает два формата: markdown и html. Указывай формат в параметре format при отправке сообщения. Пример Markdown:

{
  "text": "**Жирный текст** и _курсив_",
  "format": "markdown"
}

Загрузка файлов

Для отправки медиафайлов сначала загрузи их через POST /uploads (multipart/form-data). Максимальные размеры: изображения — 50 МБ, видео — 250 МБ, аудио — 256 МБ / 60 мин, файлы — 4 ГБ. После загрузки получишь token, который используй в attachments при отправке сообщения.

Объекты API

📦 Основные объекты: User — пользователь, Chat — чат/канал, Message — сообщение, Update — событие webhook. Полный список — в сайдбаре слева.

👋 Хочешь увидеть API в действии?

«Мои друзья» используют все эти методы — от отправки сообщений до обработки callback-ов.

Открыть «Мои друзья»