Обновление информации о боте

Метод позволяет обновить URL вебхука и настройки получения событий для текущего бота.

HTTP метод: POST

URL: https://botapi.messenger.yandex.net/bot/v1/self/update/

Заголовки

Authorization: OAuth <токен>
Content-Type: application/json

Тело запроса (JSON)

Имя параметра Обязательный Тип Описание Ограничения, значение по умолчанию
webhook_url Нет URL или null URL для получения обновлений. Передайте null, чтобы сбросить вебхук
settings Нет object Настройки получения событий Доступны флаги get_reactions и get_members_changed. Обновление частичное: меняются только переданные флаги

Флаги в settings:

  • get_reactions — отправлять боту события о реакциях на сообщения;
  • get_members_changed — отправлять боту события о входе и выходе пользователей из групповых чатов.

Результат

Результатом успешного запроса является ответ с кодом 200 и телом с JSON, где содержится обновленная информация о боте.

Имя параметра Обязательный Тип Описание
ok Да boolean Флаг успешности выполнения
id Да string Идентификатор бота
login Да string Логин бота
display_name Нет string Отображаемое имя бота
webhook_url Нет string или null URL для получения обновлений через webhook
organizations Нет integer[] Список идентификаторов организаций, к которым подключен бот
settings Нет object Текущие настройки бота

В случае ошибки возвращается соответствующий статус HTTP. Описание ошибки приходит в поле description.

Имя параметра Обязательный Тип Описание
ok Да boolean Флаг успешности выполнения
description Да string Описание ошибки

Пример запроса с установкой webhook_url

curl -H 'Authorization: OAuth AtXXXXXXXXXXX' \
     -H "Content-Type: application/json" \
     -d '{"webhook_url": "https://my-service.ru/bot_webhook", "settings": {"get_reactions": true, "get_members_changed": true}}' \
     'https://botapi.messenger.yandex.net/bot/v1/self/update/'

Пример успешного ответа

{
  "ok": true,
  "id": "103ecea2-e303-478d-91a7-b6d423ace527",
  "display_name": "My bot",
  "webhook_url": "https://my-service.ru/bot_webhook",
  "organizations": [567890],
  "login": "bot@my-service.ru",
  "settings": {
    "get_reactions": true,
    "get_members_changed": true
  }
}

Пример запроса со сбросом webhook_url

curl -H 'Authorization: OAuth AtXXXXXXXXXXX' \
     -H "Content-Type: application/json" \
     -d '{"webhook_url": null}' \
     'https://botapi.messenger.yandex.net/bot/v1/self/update/'