Telegram Info Scraper
Pricing
$0.01 / 1,000 public entities
Telegram Info Scraper
Get public Telegram profile data from usernames, @handles, t.me links, channels, groups, and bots. Export Telegram IDs, titles, bios, member counts, verification flags, photos, preview dates, and source URLs.
Pricing
$0.01 / 1,000 public entities
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
214
Total users
12
Monthly active users
8.7 hours
Issues response
2 days ago
Last modified
Categories
Share
🔎 Telegram Info Scraper for public entity profiles
Researchers, marketers, moderators, and developers can look up known public Telegram users, bots, channels, groups, and supergroups. The Actor saves one structured row for each successfully resolved public entity with IDs, usernames, titles, bios, audience or activity metrics, trust flags, profile photos, preview details, bot details, and source URLs. Use the dataset for profile checks, community research, monitoring, and enrichment.
- Look up public profile details with Telegram Public Profile.
- Normalize known usernames and links with Telegram Username Scraper.
- Check public audience counts with Telegram Member Count Scraper.
- Review public bot details and activity with Telegram Bot Scraper.
- Collect public channel metadata and preview metrics with Telegram Channel Scraper.
📦 Public Telegram entity rows
Each successful lookup becomes one structured dataset row with the values Telegram makes public.
▶️ Look up known Telegram targets
Paste one known public Telegram username, @handle, t.me URL, or telegram.me URL per line. Mix users, bots, channels, groups, and supergroups in one run. The Actor saves a row when Telegram returns a public entity.
Run steps
- Open the Input tab.
- Add 1 to 1,000 public targets in Telegram targets.
- Start the Actor and open the dataset when the run finishes.
Private /c/ links and invite-only chats are not supported. The Actor reads public Telegram pages only.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
targets | array of strings | Public Telegram usernames, @handles, t.me URLs, or telegram.me URLs, with one value per line. The list accepts 1 to 1,000 targets. |
Example input
{"targets": ["@telegram","https://t.me/durov","@BotFather","telegram","https://telegram.me/telegram"]}
🧾 Output
The Output tab exposes results, a link to the default dataset. Each successful entity uses this documented 26-field set. Fields that do not apply may be null or omitted.
Output link
| Field | Type | What it does |
|---|---|---|
results | string URL | Opens the default dataset of saved Telegram entity rows. |
Dataset row shape
| Field | Type | What it does |
|---|---|---|
input | string | The submitted target that produced this successful row. |
telegramId | string or null | Telegram's source-native entity ID when visible. |
username | string or null | The primary public username without the @ prefix. |
usernames | array of strings | Public Telegram usernames associated with the entity. |
entityKind | string or null | The public kind: user, bot, channel, group, or unknown. Member-labelled communities use group because public HTML does not distinguish groups from supergroups. |
title | string or null | The public display title, channel name, group name, or bot name. |
bio | string or null | Public profile bio, about text, or channel or group description. |
memberCount | integer or null | The visible member or subscriber count reported by Telegram. |
onlineCount | integer or null | The visible online member count when Telegram exposes it. |
profilePhotoUrl | string or null | The direct public profile photo URL when visible. |
sourceUrl | string | The canonical public Telegram URL for the resolved entity. |
isVerified | boolean or null | Whether Telegram marks the entity as verified. |
isScam | boolean or null | Whether Telegram marks the entity as scam. |
isFake | boolean or null | Whether Telegram marks the entity as fake. |
isRestricted | boolean or null | Whether Telegram marks the entity as restricted. |
isBot | boolean or null | Whether the entity is a Telegram bot. |
latestPostDate | string or null | The date of the latest visible preview post when available. |
previewPostCount | integer or null | The number of public preview posts observed for the entity. |
previewUrl | string or null | The public Telegram preview URL when available. |
visibleMetricText | string or null | The source text for a visible audience or activity metric. A handle alone is not a metric, so this is null when no genuine metric text is shown. |
botActiveUsers | integer or null | The Telegram bot active-user count when visible. |
photoCount | integer or null | The visible channel photo count when Telegram exposes it. |
videoCount | integer or null | The visible channel video count when Telegram exposes it. |
fileCount | integer or null | The visible channel file count when Telegram exposes it. |
linkCount | integer or null | The visible channel link count when Telegram exposes it. |
latestMessageId | integer or null | The newest public channel message position when Telegram exposes it. |
The rows below are genuine examples from successful current beta runs.
Channel row
{"input": "@telegram","telegramId": "1005640892","username": "telegram","usernames": ["telegram"],"entityKind": "channel","title": "Telegram News","bio": "The official Telegram on Telegram. Much recursion. Very Telegram. Wow.","memberCount": 9510000,"onlineCount": null,"profilePhotoUrl": "https://cdn1.telesco.pe/file/Hf30wPozZCvXRHFqPUNLxNUP6ZPHRfJG59a5ObFKT1BXpLjh8tpJk2s82vV-rOrpJwMQn4qZbDa5xPnemgPHMtD81VQuM4xrxAVtRDegRofzwZroM7_ySk1UEp0Ko1CqXUaCeg_Cpyw37RX-Ka2x79piA6fsbU9q8BJkOVfrvIC0DGOKaKRpuAgKrb9HuFfUN5x0IJ8rZAAEYRwLYJDT5hlnX8OTWGMxGehWZf0XPUFZnvVr7VnUSPtLGTfuWYuX3DdkYJtT7NR7yXGwYVwqvx8NCKAkBiJX6xfCzdhUPVkf1BEnDPXfARxU3ribToXSE2R8OBBDfR0t3iSpCov4fg.jpg","sourceUrl": "https://t.me/telegram","isVerified": true,"isScam": false,"isFake": false,"isRestricted": false,"isBot": false,"latestPostDate": "2026-08-26T19:12:34+00:00","previewPostCount": 20,"previewUrl": "https://t.me/s/telegram","visibleMetricText": "9.51M subscribers","botActiveUsers": null,"photoCount": 16,"videoCount": 228,"fileCount": null,"linkCount": 378,"latestMessageId": 460}
Group row
{"input": "@FilesChat","telegramId": null,"username": "FilesChat","usernames": ["FilesChat"],"entityKind": "group","title": "#TeamFiles Chat","bio": "This is the main chat group for #TeamFilesMake sure to check out @modulesrepo for all the files you want and need!#TeamFiles announcements:@teamfilesannouncementsMore from #TeamFiles:@filesfederationDiscord Server: https://discord.gg/bbbx7KnnHs","memberCount": 4328,"onlineCount": 150,"profilePhotoUrl": "https://cdn5.telesco.pe/file/S1u-ChEjmhfTHM9_DU_HROBwhfGUNn3V2seYp5CqDqGcqczhNz_V6p_vpKtKAwkcANpMooytm2JCCZB8yiPpKxzpIFULVR0z38VhAo21Jfh7ff70b8QBiT3m5Vq6jmLqC1jJEgI0A1V6Yd2tKG6FPaC5i9KAxfJ6KpwLlKIVH5RJ1P92AgNMaVUQGtp81D9IEhT-gBt6q-5lrHGY9Zl8eHv9ukmOR_4MFNvPLpJbc3ryhGlMtwPlz-YswH_hY0MJCiukreGC9sfeeK5GkkF2619ZQWva_PoS3JGhTtoOZZU4-spAi98ANmqIt-aotMkcBX-pilZds0lzglk6DGRjaQ.jpg","sourceUrl": "https://t.me/FilesChat","isVerified": false,"isScam": false,"isFake": false,"isRestricted": false,"isBot": false,"latestPostDate": null,"previewPostCount": null,"previewUrl": null,"visibleMetricText": "4 328 members, 150 online","botActiveUsers": null,"photoCount": null,"videoCount": null,"fileCount": null,"linkCount": null,"latestMessageId": null}
User row
{"input": "R_Wije98","telegramId": null,"username": "R_Wije98","usernames": ["R_Wije98"],"entityKind": "user","title": "Laksi","bio": "You can contact @R_Wije98 right away.","memberCount": null,"onlineCount": null,"profilePhotoUrl": null,"sourceUrl": "https://t.me/R_Wije98","isVerified": false,"isScam": false,"isFake": false,"isRestricted": false,"isBot": false,"latestPostDate": null,"previewPostCount": null,"previewUrl": null,"visibleMetricText": null,"botActiveUsers": null,"photoCount": null,"videoCount": null,"fileCount": null,"linkCount": null,"latestMessageId": null}
Bot row
{"input": "@BotFather","telegramId": null,"username": "BotFather","usernames": ["BotFather"],"entityKind": "bot","title": "BotFather","bio": "BotFather is the one bot to rule them all. Use it to create new bot accounts and manage your existing bots.","memberCount": null,"onlineCount": null,"profilePhotoUrl": "https://cdn1.telesco.pe/file/UqH6HoZctdkwxGs1UgH8FfMOptDIIxKtHA8SaUuWcIN2JpwyYIPnkadKziQeQPG0OsLswJi27nqAlS1HIXQWUL3qfmh3gQ7UlSkMahhLeW-i1eYmIArzAsYoqcZB_VygntxiYwL2vVAmoJDmJ9ypT__DA7fksb0RcbFKQoJJgbpMyHHOc69wrew_adCYaTkqWzOHxNP42d6-hDwcW7aVKcVxF8yno2cGMqxkF3KLpCFYwGA7O-v3XtxO2OSC8XEmqzImdQneNNy5JY9fPWJgTE8IYZ-oSHym8bVt5L1ywcYXfUxT8OVZ6EelB6ZYxrpoAsGmALp50owg5ceAZcvhbQ.jpg","sourceUrl": "https://t.me/BotFather","isVerified": true,"isScam": false,"isFake": false,"isRestricted": false,"isBot": true,"latestPostDate": null,"previewPostCount": null,"previewUrl": null,"visibleMetricText": "8 645 196 monthly users","botActiveUsers": 8645196,"photoCount": null,"videoCount": null,"fileCount": null,"linkCount": null,"latestMessageId": null}
💳 Pricing
Pay per saved entity
This Actor charges one telegram-entity-row event for each public Telegram entity successfully saved to the dataset. An invalid, private, missing, unavailable, or skipped target does not create an entity-row charge because no entity row is saved.
🔌 Integrations
Apify access
Open saved rows in the Apify dataset, or use the Apify API, schedules, and webhooks with your runs. Export the dataset from Apify for use in your own sheet, warehouse, dashboard, or workflow.
Video guide
❓ FAQ
What does visibleMetricText contain?
It keeps text that Telegram shows for an audience or activity metric, such as 9.6M subscribers. A submitted handle is not metric text. If no genuine metric is visible, the field is null.
How does the Actor handle repeated targets?
It saves the first eligible occurrence of an entity immediately. If another username, URL, or equivalent target later refers to the same entity, that later match is ignored. The row describes only the first saved match.
Can it collect Telegram members or private chats?
No. The Actor reads public profile and preview data. It does not log in, join chats, send messages, or collect private member lists.
What happens when a target is unavailable?
Invalid, private, missing, unavailable, or temporarily unreachable targets are skipped. The dataset contains only successful public entity rows, not placeholder failure rows.
Does it need a Telegram account or API key?
The input accepts public targets and has no Telegram login or API-key field. Keep private credentials out of the run input.
Can I schedule runs?
Yes. You can schedule runs on Apify and compare saved rows over time in your own sheet, warehouse, dashboard, or workflow.
📝 Changelog
v2.0 (08-09-2026)
- Public Telegram lookups now return one structured row for each successfully resolved entity, with profile, audience or activity metrics, preview details, and bot details when visible.
- Visible metric text now contains only audience or activity text shown by Telegram, or
nullwhen no genuine metric is available.
v1.0
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Telegram Channel Scraper - Find or enrich public Telegram channels with titles, descriptions, audience counts, and visible flags.
- Telegram Channel Messages Scraper - Collect public channel posts with text, dates, views, links, and media metadata.
- Telegram Media Downloader - Get source-hosted media links and post details from public Telegram posts.
- Telegram Info Scraper - Compare another public Telegram profile workflow for mixed known targets.
- Telegram Channel Info Scraper — members, bio & invite links - Review public channel or group member counts, bios, and visible details.
Made with ❤️ by Maxime Dupré