Обзор

API (Application Programming Interface) — это посредник между разработчиком приложений и средой, с которой это приложение должно взаимодействовать. API упрощает написание кода за счёт набора готовых классов, функций или структур для работы с данными

API MAX — это интерфейс, который позволяет ботам взаимодействовать с платформой и получать необходимые данные с помощью HTTPS-запросов к серверу. В этом разделе расскажем, как подготовиться к использованию API приложения

Методы

HTTPS-запросы на домен botapi.max.ru вызывают методы — условные команды, которые соответствуют той или иной операции с базой данных. Например, получение, запись или удаление какой-либо информации
Параметры запроса должны содержать HTTP-метод, соответствующий необходимой операции:

В зависимости от конкретного метода, параметры запроса будут отображаться в пути, URL-параметрах или теле запроса

Примеры запросов:

JSON — это формат записи данных в виде пар <ИМЯ_СВОЙСТВА>: <ЗНАЧЕНИЕ>. Прочитайте об особенностях формата JSON, если вы ещё не работали с ним
Пример ответа на запрос к методу GET /me:

JSON
Скопировать
{ "user_id": 1, "name": "My Bot", "username": "my_bot", "is_bot": true, "last_activity_time": 1737500130100 }

Также, помимо JSON, сервер вернет трёхзначный HTTP-код, информирующий об успешном выполнении запроса или ошибке.

Коды ответов HTTP

Клавиатура

Клавиатура позволяет отправлять боту запросы кнопками, а не сообщениями. Чтобы клавиатура была удобной для пользователей, рекомендуем заранее продумать её наполнение и учитывать обязательные параметры:

Вы можете подключить к чат-боту в MAX inline-клавиатуру. Она позволяет разместить под сообщением бота до 210 кнопок, сгруппированных в 30 рядов — до 7 кнопок в каждом (до 3, если это кнопки типа link, open_app, request_geo или request_contact)

Виды кнопок для чат-бота:

Чтобы добавить кнопки, отправьте сообщение с InlineKeyboardAttachment

JSON
Скопировать
{ "text": "It is message with inline keyboard", "attachments": [ { "type": "inline_keyboard", "payload": { "buttons": [ [ { "type": "callback", "text": "Press me!", "payload": "button1 pressed" } ], ] } } ] }

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

Текст сообщения в чат-боте можно улучшить с помощью базового форматирования. Для этого вы можете использовать либо Markdown, либо HTML

Markdown

Чтобы включить разбор Markdown, установите свойство format в NewMessageBody на значение markdown

MarkdownОтображение
курсив*empasized* или _empasized_
жирный**strong** или __strong__
зачёркнутый~~strikethough~~
подчёркнутый++underline++
моноширинный`code` (переводы строк внутри этого блока обрабатываются как пробелы)
блок моноширинного текста```code```
выделенный^^highlighted^^ (по умолчанию выделяется красным)
ссылка[Inline URL](https://dev.max.ru/)
@упоминание пользователя[User mention](max://max.ru/%user_id%) (ссылка откроется, если у вас установлен MAX)
Заголовок# Header

HTML

Чтобы включить разбор HTML, установите свойство format в NewMessageBody на значение html

MarkdownОтображение
курсив<i> или <em>
жирный<b> или <strong>
зачёркнутый<del> или <s>
подчёркнутый<ins> или <u>
моноширинный<pre> или <code>
выделенный<mark> (по умолчанию выделяется красным)
ссылка<a href="https://dev.max.ru">Docs</a>
@упоминание пользователя<a href="max://max.ru/%user_id%">User mention</a>
(ссылка откроется, если у вас установлен MAX)
Заголовок<h1>

ℹ️ Если у вас возникли вопросы, посмотрите раздел с ответами