Отправка текстового сообщения
Метод позволяет создавать текстовые сообщения, настраивать их параметры и отправлять в чат. Для каждого сообщения можно указать, помечается ли оно важным, является ли ответом на другое сообщение или входит в состав треда, нужно ли отключить уведомление для сообщения или запретить открытие ссылок, а также необходимо ли вместе с сообщением формировать инлайн-кнопки для быстрых ответов.
HTTP метод: POST
URL: https://botapi.messenger.yandex.net/bot/v1/messages/sendText/
Заголовки
Authorization: OAuth <токен>
Content-Type: application/json
Тело запроса (JSON)
Имя параметра | Обязательный | Тип | Описание | Ограничения, значение по умолчанию |
---|---|---|---|---|
chat_id |
Нет* | string |
ID группового чата | Бот должен быть участником чата |
login |
Нет* | string |
Логин пользователя | — |
text |
Да | string |
Текст сообщения | — |
payload_id |
Нет | string |
ID запроса | ID должен быть уникальным для каждого запроса. Запросы с одинаковым ID трактуются как дубликаты |
reply_message_id |
Нет | integer |
ID сообщения, на которое будет ответ | Сообщение должно быть из того же чата |
disable_notification |
Нет | boolean |
Нужно ли отключить уведомление | Значение по умолчанию: false |
important |
Нет | boolean |
Является ли сообщение важным | Значение по умолчанию: false |
disable_web_page_preview |
Нет | boolean |
Отключить раскрытие ссылок в сообщении | Значение по умолчанию: false |
thread_id |
Нет | integer |
ID сообщения, под которым будет открыт тред | — |
inline_keyboard |
Нет | Button[] |
Массив инлайн-кнопок под сообщением, с помощью котрых можно отправить быстрый ответ | — |
(*) Параметры chat_id
и login
являются необязательными, но необходимо заполнить хотя бы один из двух:
- При заполнении
chat_id
сообщение будет отправлено в групповой чат, заданный этим ID. - При заполнении
login
сообщение будет отправлено пользователю в приватный чат.
Ограничения
- Бот может отправлять сообщения только в те чаты, в которых он является участником или админом.
- Бот не может отправлять личные сообщения пользователям, для которых это запрещено настройками приватности.
- Бот не может отправлять личные сообщения пользователям вне своей организации.
Результат
Результатом успешного запроса является ответ с кодом 200 и телом с JSON, где содержится информация об отправленном сообщении.
Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|
ok |
Да | boolean |
Флаг успешности выполнения |
message_id |
Да | integer |
ID сообщения в чате |
В случае ошибки возвращается соответствующий статус HTTP. Описание ошибки приходит в поле description
.
Имя параметра | Обязательный | Тип | Описание |
---|---|---|---|
ok |
Да | boolean |
Флаг успешности выполнения |
description |
Да | string |
Описание ошибки |
Пример запроса
curl -X POST -H 'Authorization: OAuth AtXXXXXXXXXXX' -H "Content-Type: application/json" -d '{"chat_id":"0/0/4f24b544-697c-4e18-a9c1-b39432ee9bf9", "text": "Привет!"}' 'https://botapi.messenger.yandex.net/bot/v1/messages/sendText/'
Пример успешного ответа
{"ok": true, "message_id": 1647523230504005}
Пример ответа с ошибкой
{"ok": false, "description": "Bot is not a member of the chat"}