Telegram Channel Scraper - No Login, No API Key, Messages
Pricing
Pay per event
Telegram Channel Scraper - No Login, No API Key, Messages
Scrape any public Telegram channel with no login and no API key — get every post, view count, media, link and timestamp in clean JSON or Excel. No phone, no account, no token needed. Built for OSINT, market research and competitor tracking. Pay only for what you scrape.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Renzo Madueno
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Telegram Channel Scraper - No Login, No API Key, Messages & Views
Telegram channel scraper with no login and no API key — extract public channel messages, view counts and media without a phone number or bot token.
Scrape public Telegram channels at scale — full message text, view counts, post dates, media (photos, videos, documents, stickers), outbound links, hashtags, link previews, forwards and replies, plus channel metadata (subscriber count, description, photo).
No API key. No login. No phone number. No MTProto. This actor reads Telegram's own public web preview, so setup is zero — just give it a channel username.
Why this scraper
Most Telegram scrapers force you through api_id / api_hash registration, a logged-in phone session, or flaky MTProto libraries that get your account banned. This one doesn't touch any of that. It pulls the public channel feed that Telegram already serves to the open web at t.me/s/{channel}, so it's:
- Plug and play — paste a channel name, hit run. No credentials, ever.
- Safe — no account to ban; it never logs in.
- Cheap & fast — pure HTTP (no headless browser), so runs cost cents.
- Rich — every field Telegram exposes publicly, normalized into clean JSON.
- Robust — paginates backwards through history, deduplicates by message id, reports private/nonexistent channels instead of crashing.
Input
{"channels": ["durov", "telegram"],"maxMessages": 200,"searchKeyword": "","dateFrom": "2026-01-01","dateTo": "","includeChannelMetadata": true}
| Field | Type | Description |
|---|---|---|
channels | array | Channel usernames or URLs. Accepts durov, @durov, or https://t.me/durov. |
startUrls | array | Alternative way to pass t.me URLs (merged with channels). |
maxMessages | integer | Max messages per channel (paginates back through history). Default 100. |
searchKeyword | string | Optional. Keep only messages whose text/hashtags contain this keyword. |
dateFrom / dateTo | string | Optional ISO dates (e.g. 2026-01-01) to bound the time range. Scraping stops early once it pages past dateFrom. |
includeChannelMetadata | boolean | Emit a channel-level record (title, description, subscribers, photo). Default true. |
proxyConfiguration | object | Optional. Public pages work without a proxy; enable for very large jobs. |
Output
A channel record (one per channel, when metadata is enabled):
{"_type": "channel","channel": "durov","title": "Pavel Durov","username": "durov","description": "Founder of Telegram.","photo": "https://cdn4.telesco.pe/file/...jpg","subscribersLabel": "11M","subscriberCount": 11000000,"counters": { "subscribers": "11M", "photos": "99", "videos": "45", "links": "189" }}
A message record (one per post):
{"_type": "message","channel": "durov","messageId": 505,"url": "https://t.me/durov/505","text": "🫴 TON is #1 in annual staking rewards among the 50 largest cryptocurrencies. And that's on top of the coin's price growth — which doubled over the past week.","date": "2026-05-08T17:41:53+00:00","viewCount": 3770000,"viewsLabel": "3.77M","author": "Pavel Durov","hasMedia": true,"media": [{ "type": "photo", "url": "https://cdn4.telesco.pe/file/...jpg", "link": "https://t.me/durov/505" }],"links": null,"hashtags": null,"linkPreview": {"url": "https://telegram.org/blog/...","siteName": "Telegram","title": "Android Redesign, Group Ownership Transfer, Gift Crafting...","description": "This update adds the biggest interface update...","image": "https://cdn4.telesco.pe/file/...jpg"},"forwardedFrom": null,"replyTo": null,"isEdited": false}
Media types captured: photo, video (with thumbnail + duration), voice, document (title + size), sticker. View counts are returned both as the raw label ("3.77M") and a parsed integer (3770000).
Use cases
- OSINT & research — archive and search public channel history, track narratives over time.
- Crypto monitoring — watch token/project announcement channels, capture views and engagement signals.
- News & media monitoring — pull breaking-news channels into your own dashboards.
- Sentiment & trend analysis — feed clean message text into NLP pipelines.
- Brand & competitor tracking — monitor what channels post about you or your competitors.
- Dataset building — collect labeled, timestamped, view-weighted message corpora.
How pagination works
The actor starts at the channel's latest posts and walks backwards using Telegram's own ?before={message_id} parameter, deduplicating by message id, until it reaches maxMessages (or dateFrom, or the start of the channel).
Errors & reliability
- Private, deleted, or nonexistent channels are reported, not crashed — details land in the
FAILURESkey of the run's key-value store. - If no channel yields any data, the run fails loudly (so you never silently pay for an empty dataset).
- Messages are deduplicated, so reruns and overlapping pages won't double-count.
Pricing (Pay Per Event)
- Actor start: $0.005 per run
- Per message scraped: $0.002
HTTP-only means runs are cheap and predictable — you pay for data, not for a browser idling.
FAQ
How do I scrape messages from a public Telegram channel?
Enter one or more channel usernames (it accepts durov, @durov, or https://t.me/durov), set maxMessages, and run. The actor pages backwards through the channel's history and returns full message text, view counts, dates, media, links, and hashtags as clean JSON you can export to CSV or Excel.
Do I need an API key, bot token, or phone number for this Telegram scraper?
No. There is no api_id/api_hash registration, no bot token, no phone number, and no MTProto session. The actor reads Telegram's own public web preview at t.me/s/{channel}, so setup is zero — just give it a channel username.
Why use this instead of the official Telegram API (MTProto / Bot API)?
The official Telegram API requires registering an api_id/api_hash and a logged-in phone session, and flaky MTProto libraries can get your account banned. This actor never logs in — there is no account to ban — and it cleanly returns every field Telegram exposes publicly, including parsed view counts the Bot API does not give you.
What is a good Telegram API alternative for scraping channels? This actor is a no-login Telegram API alternative: instead of MTProto registration and a risky phone session, you pass a channel name and immediately get message text, view counts, media, and channel metadata, with private/nonexistent channels reported rather than crashing the run.
Can I monitor a channel for new posts or filter by keyword and date?
Yes. Use searchKeyword to keep only messages matching a term, and dateFrom/dateTo to bound the time range. Schedule the actor to re-run and capture new posts; messages are deduplicated by id, so reruns and overlapping pages never double-count.
Is scraping public Telegram channels legal? This tool reads only publicly available channel content that Telegram serves to anyone on the open web — it cannot access private channels, groups, or anything behind login. You are responsible for respecting Telegram's Terms of Service and applicable laws in your jurisdiction.
Automate it
Add this Telegram scraper to an Apify Schedule to monitor a crypto, news, or competitor channel automatically every day or hour — capturing new messages and view counts as they post. Connect the output to Make, n8n, Zapier, Google Sheets, Slack, or a webhook through Apify integrations so fresh channel data flows straight into your OSINT dashboards, alerts, or NLP pipeline. Built-in deduplication means recurring runs only add what is new.
Related actors
- Reddit Sentiment Scraper -- Pair Telegram channel monitoring with Reddit posts and comments for broader sentiment and OSINT coverage.
- Instagram Scraper -- Add Instagram profiles and posts to your social listening across Telegram and Instagram.
- TikTok Profile & Post Scraper -- Track TikTok creators and hashtags alongside the channels you watch on Telegram.
- YouTube Channel & Video Scraper -- Capture YouTube channel stats and video metadata to round out cross-platform monitoring.
- Google News Scraper -- Cross-reference breaking-news Telegram channels with Google News headlines for media monitoring.
Notes
This actor only reads publicly available channel content that Telegram serves to anyone on the open web. It cannot access private channels, groups, or any content behind login. Respect Telegram's Terms of Service and applicable laws in your jurisdiction.