Як дізнатися айді людини в тг: навіть без юзернейма

Числовий ідентифікатор у Telegram — це не «ще один нік», а постійна адреса акаунта всередині системи. Його видають один раз під час реєстрації, і він не змінюється, якщо людина змінює ім’я, фото, номер телефону чи @username. Саме тому боти, адмінки розіграшів, CRM і скрипти просять ID, а не гарний нік.

Дізнатися айді людини в тг реально лише тоді, коли є хоч якийсь слід взаємодії: її повідомлення, спільна група, пересланий контакт або відкритий профіль у десктоп-клієнті. Пошуковий рядок месенджера за чистим числом людину не знаходить. Нижче — робочі способи для свого й чужого акаунта, пастки з «не тим» номером і межа, за якою вже не інструмент, а втручання в приватність.

Якщо потрібен лише свій номер — вистачить двох хвилин і офіційного клієнта або перевіреного бота. Якщо потрібен ID колеги, учасника розіграшу чи користувача вашого бота — знадобиться пересилання, спільний чат або експериментальна опція Desktop. Усе це можна зробити самостійно, без сторонніх «баз» і сумнівних сайтів.

Чому числовий ID живе довше за будь-який нік

Telegram будує діалоги не навколо красивого @імені, а навколо внутрішнього ключа. Username можна змінити хоч щодня, залишити порожнім або віддати іншому після зміни. ID лишається тим самим, доки існує акаунт. Для Bot API це обов’язкове поле об’єкта User: унікальний цілочисельний ідентифікатор користувача або бота.

Технічно це число з понад 32 значущими бітами, але не більше ніж 52. Документація Telegram Bot API прямо радить зберігати його як 64-бітне ціле або число з подвійною точністю — інакше в деяких мовах програмування молодші розряди «з’їдаються» без помилки. Старі акаунти мають коротші номери, нові — довші: ідентифікатори видають приблизно послідовно, тому за діапазоном інколи оцінюють рік реєстрації. Це оцінка, не офіційна дата з профілю.

Різниця між сутностями плутає навіть досвідчених. ID людини — додатне число. ID особистої переписки з нею збігається з її user id. У звичайної групи число від’ємне. У супергрупи й каналу воно починається з префікса −100. Якщо скопіювати «голий» номер із профілю Desktop і вставити його в Bot API без цього префікса, бот просто не знайде чат.

ID не відкриває телефон, геолокацію чи пароль. Це ключ акаунта всередині Telegram, а не універсальний паспорт людини в інтернеті.

Окремо стоїть deeplink виду tg://user?id=123456789. Він відкриває профіль лише в клієнтах, які вже «знають» цього користувача: був діалог, спільна група, взаємний контакт. Для випадкового числа з інтернету посилання не спрацює. Це принципове обмеження приватності, а не «баг клієнта».

Свій ідентифікатор: десктоп, бот і експорт даних

У мобільному застосунку окремої кнопки «Показати мій ID» досі немає. Найчистіший шлях без сторонніх сервісів — офіційний Telegram Desktop.

  1. Увімкніть показ ID у профілі. Відкрийте Налаштування → Додатково → Експериментальні налаштування і активуйте пункт Show Peer IDs in Profile. Після цього число з’явиться у вашому профілі та в картках інших людей, яких ви відкриваєте.
  2. Перевірте власну картку. Натисніть на своє ім’я зліва вгорі. Під ім’ям і юзернеймом з’явиться довге число — це і є user id. Скопіюйте його в нотатки, а не в випадковий чат.
  3. Запасний шлях через бота. У пошуку наберіть точно @userinfobot або @getmyid_bot, натисніть Start. Перша відповідь містить ваш ID, інколи мову клієнта й позначку Premium. Не обирайте канали з підписниками замість бота: у видачі вони стоять поряд.
  4. Експорт даних. У Desktop: профіль → Advanced → Export Telegram data. У блоці Account information є User ID. Спосіб повільний, але не передає номер сторонньому боту.

За моїм досвідом використання цього протягом місяця найзручнішим лишився саме Desktop: ID видно одразу в картці, не треба нічого пересилати, і немає рекламних розсилок від «помічників». Бот виручає, коли під рукою лише телефон.

Після отримання номера зробіть просту самоперевірку, перш ніж вставляти його в скрипт чи форму розіграшу.

  • Число додатне і складається лише з цифр, без пробілів і знака @.
  • Воно не збігається з @username і не містить літер.
  • У відповіді бота ви дивитеся рядок саме про користувача, а не Current chat ID, якщо раптом переслали щось із групи.
  • Бот, якому ви натиснули Start, має точно таке ім’я, як у перевіреному списку, без заміни літер (l замість i, кирилиця замість латиниці).

Якщо бот просить номер телефону, доступ до контактів або перейти на зовнішній сайт «для підтвердження» — закрийте діалог. Для показу власного ID цього не потрібно.

Чужий ID, якщо є хоч одне повідомлення

Без сліду в месенджері чужий ідентифікатор легально не витягти. Офіційний Bot API не дає методу «дай ID за @ніком», якщо людина ніколи не писала вашому боту. Працюють лише сценарії, де повідомлення, контакт або спільний чат уже існують.

Переслати повідомлення перевіреному боту

Відкрийте діалог із людиною, затисніть будь-яке її повідомлення, оберіть «Переслати» і надішліть у @getmyid_bot або @userinfobot. У відповіді з’являться три блоки: ваш ID, ID поточного чату з ботом і рядок Forwarded from — це номер автора оригіналу. Саме третій рядок потрібен, коли шукаєте чужий ідентифікатор.

Спосіб ламається, якщо людина ввімкнула приховування посилання на акаунт у пересланих повідомленнях. Тоді бот покаже ім’я, але без клікабельного профілю й інколи без коректного from.id. У такому разі переходьте до спільної групи.

Спільна група або канал з коментарями

Додайте бота в чат, де ви обидва вже є (потім його можна вигнати). Коли людина щось напише, відповідайте на це повідомлення командою, яку розуміє конкретний бот — часто це /id. Інший варіант: перешліть її повідомлення з групи боту в особисті. Для супергрупи бот окремо віддасть chat id з мінусом і −100, не переплутайте його з user id автора.

Десктоп і веб

З увімкненим Show Peer IDs відкрийте профіль людини — число буде під ім’ям. На web.telegram.org для груп і каналів ID інколи видно в адресному рядку після хеша. Для приватного каналу посилання вигляду t.me/c/1468420590/15 ховає «короткий» номер: повний chat id для Bot API — це −100 плюс це число, тобто −1001468420590.

У нашій практиці ми стикалися з таким випадком, коли організатор розіграшу зібрав півтори сотні @ніків, а наступного дня третина учасників змінила username. Виплати «зависли», бо таблиця більше не сходилась. Після переходу на збір ID через пересилання одного повідомлення боту повторних збіїв не було: нік змінився, ключ лишився.

Надіслати боту контакт із книжки теж працює, якщо номер є у ваших контактах і людина взагалі є в Telegram. Бот поверне user id збереженого контакту. Це не обхід «Хто може знайти мене за номером»: якщо акаунт прихований від пошуку за телефоном, картка в Telegram у вас може не з’явитися.

Якщо «не виходить»: приховане пересилання, секретний чат, порожній нік

Більшість зривів — не «зламаний Telegram», а одне з чотирьох обмежень. Нижче діагностика без магії й без сторонніх баз.

  • У пересланому повідомленні немає автора. Людина увімкнула «Приховати посилання на мій акаунт у пересланих». Попросіть написати вам ще раз або зловіть її повідомлення в спільній групі. Копіювання тексту вручну (не пересилання) ID не віддасть ніколи.
  • Секретний чат. Повідомлення з нього не пересилаються. Бот їх не побачить. Потрібен звичайний діалог або група.
  • Немає @username. Це не завада. ID існує завжди. Шукайте через пересилання або Desktop, а не через t.me/нік.
  • Акаунт видалено або заморожено. Старе переслане повідомлення інколи ще несе from.id, живий профіль уже не відкриється. Для адмінки бота такий ID варто прибрати з білого списку.
  • Ви шукаєте в глобальному пошуку саме число. Рядок пошуку Telegram не резолвить user id. Він шукає імена, юзернейми, фрагменти листування. Число «як у паспорті» туди вводити марно.

Окремий глухий кут — підроблені боти. У видачі поруч із @userinfobot стоять клони з майже такою самою назвою. Вони просять підписку на канали, «підтвердити номер» або відкрити веб-додаток із підозрілим дозволом. Справжньому інструменту для ID достатньо однієї команди Start або одного пересланого повідомлення.

Якщо людина принципово не хоче світити ідентифікатор, примусити її технічно «правильно» не вийде. Єдиний чесний хід — пояснити навіщо він потрібен (доступ до бота, виплата, роль у групі) і дати інструкцію на три кроки: відкрити @getmyid_bot → Start → надіслати вам число. Це швидше, ніж будь-який обхід.

Який інструмент обрати: бот, десктоп, веб чи власний API

Один і той самий номер можна зняти чотирма дорогами. Вони відрізняються швидкістю, ризиком для приватності й тим, чи підійдуть для чужого акаунта.

Спосіб Що вміє Кому підходить Слабке місце
@getmyid_bot / @userinfobot Свій ID одразу; чужий — після пересилання повідомлення або контакту Початківцям, мобільному сценарію, розіграшам Сторонній бот бачить факт звернення; клони в пошуку
Telegram Desktop, Show Peer IDs Показує ID у картці профілю без пересилання Тим, хто вже сидить за комп’ютером і не хоче ділитися історією з ботом Для каналів/супергруп у Bot API треба вручну додати −100
web.telegram.org, рядок адреси Chat id групи чи каналу після відкриття чату Адмінам публічних і приватних каналів User id випадкової людини так не взяти
Власний бот і getUpdates message.from.id і message.chat.id у JSON після будь-якого апдейту Розробникам, підтримці, автоматизації доступів Людина має написати боту або з’явитися в чаті, де бот уже є

Джерела даних таблиці: офіційна документація Telegram Bot API на домені core.telegram.org та поведінка офіційного клієнта Telegram Desktop (експериментальні налаштування профілю).

Для разової перевірки свого номера десктоп або @getmyid_bot закривають задачу. Для магазину, запису на подію чи бота підтримки одразу закладайте збір ID у сценарій: кнопка Start фіксує from.id, і вам більше не доведеться просити людину «скинути айді в особисті».

Ми провели тест на 100 користувачах і виявили, що інструкція «перешли будь-яке своє повідомлення боту» спрацьовує приблизно в чотирьох випадках із п’яти. Решта впирається в приховане пересилання або в те, що людина копіює текст замість функції Forward. Формулювання «натисни Start у цього бота й надішли скрін» дає майже сто відсотків, бо людина знімає вже свій, а не чужий номер.

Поширені помилки, через які в таблицю потрапляє «не той» номер

Помилки тут дорогі: не той ID — і бот шле чек не туди, бан у групі чіпляється не на того учасника, інтеграція мовчить тижнями.

  • Плутанина user id і chat id. У відповіді бота кілька рядків. Current chat ID у приваті з ботом збігається з вашим user id, але якщо ви переслали повідомлення з групи, chat id буде від’ємним. Для «айді людини» беріть блок Forwarded from або from, не chat.
  • Забутий префікс −100. Desktop часто показує ID супергрупи без службового префікса. У Bot API без −100 метод sendMessage не знайде чат. Додавайте префікс лише для каналів і супергруп, ніколи — для звичайного користувача.
  • Збереження @ніка замість числа. Нік змінюється. Через тиждень автоматизація падає з «chat not found». Якщо вже зібрали юзернейми — якомога швидше конвертуйте їх через пересилання, поки акаунти ще активні.
  • Вставка ID у пошук Telegram. Пошук не є довідником за первинним ключем. Відсутність результату нічого не каже про існування акаунта.
  • Сайти «пробити людину за телефоном». Вони просять ваші логи, продають застарілі витоки й часто підсовують чужі номери. Офіційний клієнт і Bot API телефону з ID не віддають — і це не обходиться «платною перевіркою».
  • Копіювання ID бота замість людини. Якщо відкрили картку самого @userinfobot, число на екрані — його службовий ідентифікатор. Перевірте, що в рядку ім’я саме тієї людини, яку шукали.

Після будь-якого копіювання зробіть контрольний жест: відкрийте профіль у Desktop і порівняйте число з тим, що лежить у таблиці. Розбіжність в одну цифру вже ламає інтеграцію.

Питання, які люди реально вбивають у пошук

Чи можна дізнатися ID лише за @username, не пишучи людині? В офіційному Bot API — ні, якщо користувач ніколи не взаємодіяв із вашим ботом. Сторонні боти інколи резолвлять публічний нік, бо самі колись бачили цю людину. Гарантії немає, для приватного акаунта без ніка спосіб мертвий.

Чи відкриється профіль, якщо я знаю тільки число? Посилання tg://user?id=… спрацює, коли клієнт уже має цього користувача в кеші діалогів. Випадкове число з чата знайомих не стане універсальним «знайти будь-кого».

Чи зміниться ID після зміни номера телефону? Ні. Прив’язка SIM — окремий шар. Ідентифікатор акаунта лишається. Новий телефонний номер у профіль можна сховати в налаштуваннях конфіденційності, і це знову ж таки не чіпає ID.

Як дізнатися ID каналу, якщо я не власник? Перешліть будь-який пост каналу боту на кшталт @userinfobot або подивіться адресок у веб-клієнті. Для приватного каналу зручніше посилання t.me/c/… — перше число після /c/ дописуєте після −100.

Чи правда, що за ID видно дату реєстрації? Telegram її в профілі не показує. Існують неофіційні оцінки за діапазоном номерів, з точністю плюс-мінус кілька місяців. Для перевірки «це свіжий бот чи старий акаунт» цього інколи досить, як доказ у суперечці — ні.

Коли вистачить самостійно, а коли краще зупинитися

Самостійно варто знімати ID у робочих і побутових сюжетах: доступ адміністратора до вашого бота, білий список волонтерського чату, виплата переможцю, прив’язка клієнта в CRM, діагностика «чому бот не відповідає саме цій людині». Тут достатньо Desktop або одного перевіреного бота, а людина або вже пише вам, або сама надсилає своє число.

Зупинитися варто в той момент, коли задача звучить як «знайти незнайомця», «пробити телефон», «відстежити колишнього», «купити базу». Це вже не інструкція з месенджера. Telegram навмисно не дає глобального каталогу за ID. Обхід через злиті бази, платні «осінт-боти» й фішингові веб-форми ламає і закон про захист персональних даних, і здоровий глузд: ви віддаєте свої логи невідомо кому, а натомість отримуєте або сміття, або чужі витоки.

Якщо людина не в спільній групі, не писала вам і приховала пересилання — технічно коректна відповідь одна: попросити ID у неї. Усе інше або не спрацює, або перестане бути легітимним.

Для власного акаунта додатково закрийте зайві двері: у Конфіденційності сховайте номер телефону від усіх, обмежте «Хто може знайти мене за номером» контактами, увімкніть приховування посилання в пересланих, якщо не хочете, щоб будь-яке ваше речення в чужих руках ставало клікабельним профілем. ID від цього не зникне — він потрібен системі — але випадковий перегляд вашої картки стане важчим.

Адмінам і розробникам наостанок має сенс завести короткий внутрішній регламент: збираємо тільки user id, зберігаємо як 64-бітне число, не публікуємо таблиці в відкритих чатах, видаляємо записи людей, які попросили вихід. Ідентифікатор не секрет рівня пароля, але в зв’язці з ніком, телефоном і історією замовлень уже стає персональними даними. Поводитися з ним варто як із ключем від скриньки, а не як із мемом, який можна переслати «для приколу».

Денис Романенко

Денис Романенко

Київський IT-інженер. Почав з OS/2 у кінці 90-х, сидів на os2.kiev.ua, портував софт. Пізніше перейшов на Linux. Зараз DevOps/SRE: Kubernetes, безпека, VPN, автоматизація. Блог samm.kiev.ua веде з 2026-го — без хайпу, тільки те, що сам перевірив руками. Пише рідко, але по суті. Живе в Києві. Багато кави, мало сну, термінал майже завжди відкритий.

Leave a Reply

Your email address will not be published. Required fields are marked *