Если CRM, конструктор или сервис автоматизации просит «API-ключ Telegram-бота», обычно ему нужен токен от официального @BotFather. Получить его можно без программирования за несколько минут.
Ниже два маршрута. В первой части вы создадите бота и скопируете токен. Во второй проверите его прямым запросом к Telegram Bot API. Если выбранному сервису нужен только токен, вторую часть можно пропустить.
Bot API token - секретная строка, которая авторизует конкретного бота в Telegram Bot API. Сам по себе токен не добавляет ответы, кнопки или связь с CRM. Он только разрешает подключённой системе действовать от имени бота.
Названия кнопок в разных клиентах могут отличаться, поэтому основные действия ниже даны через стабильные команды @BotFather.
Какой ключ нужен: токен бота или api_id и api_hash
Для обычного подключения Telegram-бота к CRM, конструктору или сервису автоматизации нужен Bot API token. Его выдаёт @BotFather после создания бота.
api_id и api_hash нужны для другого сценария: авторизации пользователя и разработки клиента на Telegram API, также известном как MTProto. Эту связку получают через my.telegram.org, но она не заменяет токен бота.
| Данные | Назначение и источник |
|---|---|
| Bot token | Управление ботом через Telegram Bot API. Выдаёт официальный @BotFather |
api_id и api_hash | Авторизация пользователя и разработка клиента через MTProto. Выдаёт my.telegram.org |
Различие подтверждают документация BotFather и документация по регистрации Telegram-приложения. Если сервис просит одновременно номер телефона, api_id и api_hash, это уже не обычное подключение Bot API. Сначала уточните, зачем ему доступ к пользовательскому аккаунту.
Перед выбором сценария полезно отдельно разобраться, чем чат-бот отличается от ассистента и агента. Создание учётной записи бота ещё не определяет, кто и как будет отвечать пользователю.
Что подготовить перед созданием бота
Понадобятся четыре вещи:
- Telegram-аккаунт, к которому у вас останется постоянный доступ.
- Отображаемое имя, например «Бот поддержки магазина».
- Два или три варианта уникального username с окончанием
bot. - Понимание, какой сервис или разработчик получит токен и где будет хранить его.
Отображаемое имя и username выполняют разные задачи. Имя видят пользователи. Username используется в ссылке и командах, поэтому подчиняется отдельным ограничениям Telegram.
Лучше создавать рабочего бота на аккаунте владельца процесса или ответственного администратора. Если сотрудник уйдёт, доступ к @BotFather и возможность перевыпустить токен должны остаться у компании.
Часть 1. Как создать бота через BotFather и получить токен
Шаг 1. Откройте официальный BotFather
Перейдите по ссылке t.me/BotFather или найдите пользователя с точным username @BotFather. Это официальный бот Telegram для создания и управления ботами.
Проверьте написание username до начала работы. Не отправляйте будущий токен аккаунтам с похожим именем.
Шаг 2. Запустите создание нового бота
Нажмите Start или отправьте /start, затем отправьте команду:
/newbot
@BotFather попросит указать отображаемое имя. Команда /newbot и дальнейшая выдача токена описаны в официальной инструкции Telegram.
Шаг 3. Задайте имя бота
Отправьте имя, которое увидят пользователи. Оно не обязано быть уникальным и может отличаться от username.
Хорошее имя объясняет роль бота: «Запись в сервис», «Поддержка клиентов», «Уведомления о заказах». Не обещайте в имени функции, которых ещё нет в подключённом сценарии.
Шаг 4. Придумайте уникальный username
Отправьте username длиной от 5 до 32 символов. Telegram разрешает латинские буквы, цифры и знак _. Username не зависит от регистра и должен заканчиваться на bot.
Например, можно построить его из названия компании и задачи: company_support_bot. Если имя занято, @BotFather попросит другой вариант. Измените смысловую часть, а не добавляйте случайную длинную последовательность цифр.
Шаг 5. Скопируйте токен
После принятия username @BotFather создаст бота и покажет токен. Скопируйте значение целиком, без пробелов и кавычек.
Токен авторизует запросы от имени бота. Telegram рекомендует хранить его как пароль: человек или система с этим значением получает контроль над ботом.
Как безопасно передать и хранить токен
Если CRM или конструктор предоставляет специальное поле для токена, вставьте значение непосредственно туда. Проверьте домен, владельца сервиса и список людей с доступом к настройкам.
Для собственной разработки храните секрет в менеджере секретов или в переменной окружения на сервере. Не помещайте токен:
- в Git и файлы исходного кода;
- в общий рабочий чат или публичный документ;
- в скриншоты интерфейса;
- в задачу с широким доступом;
- в клиентский JavaScript, который загружается в браузер пользователя;
- в публичные логи запросов.
Если разработчику нужен токен, безопаснее использовать корпоративный password manager или одноразовую защищённую ссылку. После передачи удалите лишние копии секрета.
Что делать, если токен утёк
Удаления сообщения или файла недостаточно. Откройте @BotFather, отправьте /token, выберите нужного бота и создайте новый токен. Такая команда предусмотрена официальным интерфейсом BotFather.
Затем замените токен во всех CRM, конструкторах, backend-сервисах и автоматизациях. Старое значение нужно считать скомпрометированным, даже если вы не заметили чужих действий.
Если сервис просит только токен
Вставьте токен в защищённое поле в настройках интеграции. Если сервис попросит запустить чат с ботом, нажмите Start из аккаунта, на котором проверяете подключение.
На этом подготовка бота закончена. Ответы, команды и обработка данных настраиваются уже внутри выбранного сервиса.
Часть 2. Как проверить токен через Telegram Bot API
Метод getMe проверяет токен без дополнительных параметров и возвращает базовые данные бота. Успешный ответ подтверждает доступ к Telegram Bot API, но не проверяет настройку конкретной CRM или конструктора.
Сохраните токен во временной переменной окружения
В PowerShell 7.1 или новее на Windows 11 выполните команду ниже. Параметр -MaskInput появился в PowerShell 7.1, поэтому встроенный Windows PowerShell 5.1 для этого примера не подходит.
$env:TELEGRAM_BOT_TOKEN = Read-Host -MaskInput "Введите токен Telegram-бота"
В Bash, включая WSL, Linux и macOS, ключ read -s отключает отображение вводимых символов:
read -rsp 'Введите токен Telegram-бота: ' TELEGRAM_BOT_TOKEN
export TELEGRAM_BOT_TOKEN
printf '\n'
Так токен не появляется в самой команде и не сохраняется в обычной истории оболочки. При запросе он всё равно подставляется в URL процесса curl, поэтому не включайте подробное логирование и не публикуйте диагностический вывод.
Проверьте токен методом getMe
Telegram Bot API принимает HTTPS-запросы по такому шаблону:
https://api.telegram.org/bot<token>/METHOD_NAME
Для проверки используется метод getMe.
PowerShell 7.1+:
curl.exe "https://api.telegram.org/bot$env:TELEGRAM_BOT_TOKEN/getMe"
Remove-Item Env:TELEGRAM_BOT_TOKEN
Bash:
curl "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/getMe"
unset TELEGRAM_BOT_TOKEN
Успешный ответ выглядит примерно так. Значения ниже вымышлены и не содержат токен:
{
"ok": true,
"result": {
"id": 123456789,
"is_bot": true,
"first_name": "Example Bot",
"username": "example_integration_bot"
}
}
Сверьте username с ботом, которого собираетесь подключать. Поле ok: true подтверждает, что Telegram принял токен.
Типичные ошибки getMe
Если ok: true не приходит, проверьте по порядку:
- Токен скопирован полностью, без пробела или перевода строки.
- В переменной окружения есть значение.
- После команды
/tokenиспользуется новое значение, а не отозванное. - В CRM или терминал вставлен токен нужного бота.
- Сеть не блокирует обращение к
api.telegram.org.
Не присылайте токен в поддержку вместе со скриншотом ошибки. Передавайте только текст ошибки, время запроса и username бота. Если секрет уже попал в переписку, перевыпустите его.
Какие права и настройки могут понадобиться позже
Получение токена не требует добавлять бота в группу, делать его администратором или отключать Privacy Mode. Эти действия зависят от будущего сценария.
Start в личном чате
Обычно бот не может первым начать личную переписку. Пользователь должен открыть чат и нажать Start или отправить сообщение. Это ограничение указано в официальном учебнике Telegram.
Группы и права администратора
Добавляйте бота в группу только тогда, когда он должен работать именно там. Выдавайте лишь те права администратора, без которых сценарий не выполняется. Для обычной личной переписки права в группе не нужны.
Privacy Mode
Privacy Mode включён по умолчанию и ограничивает набор сообщений, которые бот получает в группах. Отключайте режим только если интеграции нужны обычные групповые сообщения, а не только команды, ответы и обращения к боту.
Администратор группы получает все сообщения независимо от Privacy Mode. После отключения режима Telegram рекомендует удалить бота из группы и добавить снова. Подробности есть в документации о Privacy Mode.
Чек-лист перед подключением
- Бот создан через точный аккаунт
@BotFather. - Username заканчивается на
botи соответствует нужному проекту. - Токен не лежит в Git, документах, скриншотах или общих чатах.
- Метод
getMeвозвращаетok: trueи правильный username. - Токен добавляется в сервис через защищённое поле.
- Боту выданы только необходимые права.
- Ответственный знает, как перевыпустить токен и где затем заменить его.
Официальные источники
- BotFather: создание бота, username и перевыпуск токена
- Telegram Bot API
- Telegram Bot Tutorial: токен и первый контакт с ботом
- Privacy Mode для ботов в группах
- Получение
api_idиapi_hash