Чек-лист запуска
Авторизация проходит через диалог с ботом: сотрудник пишет боту, бот отвечает кнопкой, сотрудник соглашается, и бот получает токен. Поэтому ломается она чаще всего не на OAuth, а на настройках вокруг него. Пройдите список перед запуском бота и вернитесь к нему, если на этом пути что-то не срабатывает.
Сотрудник может написать боту
- Бот публичный, у сотрудника есть с ботом общий чат, или бот написал сотруднику первым. Переключатель Публичный бот — на вкладке Основное в карточке бота.
- Публикация в витрине сама по себе написать боту не позволяет.
Без этого у бота нет кнопки Сообщение. Подробнее — в разделе Личные сообщения.
Бот узнаёт о сообщении
- Исходящий вебхук включён и указывает на ваш сервер.
- Включено событие Новые сообщения в режиме Любые сообщения или с командой, с которой начинается разговор, например
/start. - Сервер проверяет подпись запросов, а бот игнорирует свои сообщения.
Без вебхука и нужного режима сотрудник пишет, а бот молчит: новый бот слушает только команды, а их список пуст. Как настроить — в разделе Общение с ботом.
Бот отвечает кнопкой
- У бота есть токен с правом
messages:create. - Кнопка ведёт на экран согласия. Как её собрать — в разделе Получение токена.
Без права отправки метод POSTНовое сообщение ответит 403, и кнопка до сотрудника не дойдёт. Подробнее о правах — в разделе Токены бота.
Авторизация проходит
- Сотрудникам разрешено выдавать доступ ботам: в настройках пространства Кто может создавать персональные токены — Все сотрудники. По умолчанию там Только администраторы, и тогда сотрудник вместо согласия видит отказ.
- Авторизация на вкладке OAuth включена, указан хотя бы один адрес возврата.
- Запрашиваемый доступ задан: в нём только права, которые боту действительно нужны.
- Приложение без секрета передаёт PKCE с методом
S256, серверное хранитclient_secretи обменивает код на своей стороне.
Без этого сотрудник не дойдёт до согласия или бот не сможет обменять код на токен. Настройки вкладки — в разделе Настройка авторизации, ошибки обмена — в разделе Ошибки и отказы.