Skip to content
TBTelegramBuddy
Языкru
Основная навигация
← Все гайды

Как получить api_id и api_hash для Telegram

Как получить api_id и api_hash Telegram: оба значения бесплатно выдаёт my.telegram.org за пару минут. Зачем они нужны и почему у каждой установки свои.

6 мин чтения

Ваши api_id и api_hash выдаёт Telegram, а не TelegramBuddy. Войдите на my.telegram.org по номеру телефона, откройте API development tools, заполните короткую форму с описанием приложения, которым вы пользуетесь, — и страница выдаст вам две вещи: число под названием api_id и строку из 32 символов под названием api_hash. Вставьте оба значения в окно первого запуска TelegramBuddy — и на этом настройка закончена. Значения сохраняются на вашем собственном компьютере, и больше их у вас не спросят.

Это короткий ответ. Дальше на этой странице — что представляют собой эти два значения, чем они не являются, почему приложение не может поставляться с уже вписанной парой и что делать, если форма на сайте Telegram доставляет вам сложности.

Что такое api_id и api_hash на самом деле

Telegram публикует API: документированный набор инструкций, который позволяет другим программам общаться с его сетью напрямую — так же, как это делают официальные приложения. Тот, кто пишет такую программу, должен один раз её зарегистрировать. При регистрации появляется пара значений, которая сопровождает каждый запрос программы, чтобы Telegram мог понять, какое именно ПО находится на другом конце линии.

Это всё, что они собой представляют. Они идентифицируют приложение, а не вас. В них нет ни вашего имени, ни ваших чатов, ни ваших контактов; это не лицензия, не подписка и не то, за что вы платите.

Стоит точно сказать, чем они не являются:

  • Это не пароль от Telegram. Только по api_id и api_hash никто не сможет прочитать ваши сообщения. Вход в аккаунт — отдельный шаг, о нём ниже.
  • Это не токен бота. Бот — это отдельный аккаунт со своим собственным набором чатов. TelegramBuddy не бот: он входит как вы и поэтому видит ровно те чаты, которые видите вы.
  • Их выдаёт не TelegramBuddy. Никакого аккаунта TelegramBuddy и никакого сервера TelegramBuddy не существует, поэтому с нашей стороны нечему выдать вам пару или сохранить копию вашей.

Как получить api_id и api_hash в Telegram

Весь процесс происходит на собственном сайте Telegram и занимает пару минут.

  1. Откройте my.telegram.org в любом браузере.
  2. Введите номер телефона в международном формате: со знаком + и кодом страны.
  3. Telegram пришлёт код для входа сообщением внутри самого Telegram, а не по SMS. Откройте Telegram на телефоне или на компьютере, посмотрите код и введите его на странице.
  4. На открывшейся странице нажмите API development tools.
  5. Заполните короткую форму (её поля разобраны ниже) и отправьте её.
  6. Теперь на странице видны App api_id и App api_hash. Никто ничего не проверяет и не одобряет — значения существуют сразу после отправки формы.
  7. Скопируйте оба значения в окно первого запуска TelegramBuddy. Если вы закрыли вкладку слишком рано, вернитесь в API development tools — там будет та же самая пара.

Как заполнить форму

Форма спрашивает про приложение, и это сбивает с толку, когда вы всего лишь хотите им воспользоваться. Здесь ничего ни с чем не сверяется, так что простые и честные ответы вполне подойдут:

  • App title и Short name — что угодно, что вы потом узнаете, например My Downloader. В коротком имени нужны буквы и цифры без пробелов.
  • URL — необязательно. Оставьте пустым.
  • Platform — выберите Desktop.
  • Description — необязательно. Пара слов или вообще ничего.

api_id, вход в аккаунт и токен бота: в чём разница

Эти три вещи путают постоянно, и именно путаница между ними обычно и мешает пройти экран настройки.

Что идентифицирует Откуда берётся Если попадёт к другому человеку
api_id и api_hash Программу, которая делает запросы my.telegram.org, один раз, бесплатно Его запросы будут расходовать ваши лимиты
Ваш вход в Telegram Вас, владельца аккаунта QR-код или код, присланный в Telegram Он сможет читать ваши чаты — это самое важное
Токен бота Отдельный аккаунт бота BotFather в Telegram Он управляет этим ботом, а не вашим аккаунтом

Почему у каждой установки должна быть своя пара

Telegram считает лимиты запросов по api_id. Когда программа просит слишком много и слишком быстро, Telegram отвечает flood wait — паузой от нескольких секунд до нескольких минут, прежде чем снова начнёт отвечать, — и эта пауза привязана к тому id, который делал запросы.

Раздайте один api_id тысячам установок — и весь трафик окажется в одном общем ведре: один человек, выкачивающий видео за десять лет, замедлит всех остальных, а один ограниченный id потянет за собой все установки сразу. Своя пара оставляет ваши лимиты вашими. Это две минуты работы один раз — в обмен на то, что вас не будут задевать посторонние. На странице загрузки то же самое сказано короче.

Flood wait — это нормально и ожидаемо, а не признак поломки. TelegramBuddy сам их выжидает и продолжает работу, поэтому большую массовую загрузку можно спокойно оставить без присмотра; в статье о возобновлении прерванных загрузок разобрано, что происходит, когда передача останавливается по другим причинам.

Если вы пользуетесь TelegramBuddy на двух компьютерах, отдельная пара для каждого не даст их лимитам пересекаться.

Как сохранить оба значения в тайне

Относитесь к api_hash так же, как к любому ключу. Не публикуйте его в ветке форума, в баг-репорте или в публичном репозитории кода, а перед тем как делиться скриншотом экрана настройки, обрежьте или замажьте его. api_id — короткое число и гораздо менее чувствительное, но публиковать ни то ни другое незачем.

Если пара всё же утечёт, ущерб будет ограниченным и косвенным: чужие запросы станут расходовать ваши лимиты, а значит, загрузки пойдут медленнее. До ваших сообщений без входа в ваш аккаунт всё равно не добраться. Вы можете создать новую пару на my.telegram.org и ввести её вместо старой.

На вашем компьютере эти значения лежат в настройках TelegramBuddy и никуда не отправляются, кроме самого Telegram — в составе тех запросов, для идентификации которых они и существуют.

Вход в аккаунт — отдельный шаг

После того как учётные данные на месте, TelegramBuddy попросит вас войти в ваш собственный Telegram: либо отсканировать QR-код телефоном, либо ввести номер телефона и код, который пришлёт Telegram. Этот вход превращается в файл сессии на вашем компьютере. Он никуда не загружается, потому что загружать его некуда: приложение обращается к Telegram напрямую и записывает скачанные файлы прямо на ваш диск.

То есть две половины настройки делают разную работу. api_id и api_hash говорят, какая программа обращается. Вход говорит, от чьего имени. Ни одно из них не даёт никому доступа к другому, а в FAQ есть ответы на остальные вопросы о приватности, которые обычно возникают дальше.

Если с формой возникли сложности

  • Страница выдаёт ошибку при отправке. Подождите и попробуйте снова, лучше в приватном окне или в другом браузере, отключив для сайта блокировщик рекламы или скриптов.
  • Код для входа не приходит. Смотрите внутри Telegram, а не в SMS. Код приходит сообщением от Telegram в приложении.
  • Приложение говорит, что данные неверны. Проверьте, не попал ли лишний пробел в начало или конец одного из значений. api_id — только цифры. api_hash — ровно 32 символа из букв и цифр.
  • Вы не можете найти, куда делись значения. Откройте API development tools на my.telegram.org снова — зарегистрированное приложение по-прежнему там, вместе со своей парой.

Что дальше

Когда учётные данные введены, а аккаунт подключён, приложение может открыть любой чат, участником которого вы являетесь, включая приватные каналы и группы, доступные по пригласительной ссылке. Дальше можно пролистать всю историю, забрать медиа массово или экспортировать сообщения чата в HTML или JSON. Обзор того, что умеет приложение, — на странице возможностей. И одно стоит сказать прямо: приложение с удовольствием сохранит всё, что вы можете увидеть, поэтому храните только то, что вы имеете право хранить.