Telegram Channel Scraper - Messages, Views & Reactions avatar

Telegram Channel Scraper - Messages, Views & Reactions

Pricing

from $0.50 / 1,000 messages

Go to Apify Store
Telegram Channel Scraper - Messages, Views & Reactions

Telegram Channel Scraper - Messages, Views & Reactions

Export any public Telegram channel: message text, timestamps, view counts, reactions broken out per emoji, forwarded-from attribution, media types, link previews and outbound links. No API key, no phone number, no account. Date range and per-channel caps included.

Pricing

from $0.50 / 1,000 messages

Rating

0.0

(0)

Developer

ApifyActors

ApifyActors

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Telegram Channel Scraper — messages, views and reactions, no API key

Export the full history of any public Telegram channel. No API key, no phone number, no account, no Telethon session — point it at @handle and get rows.

What you get

Text, timestamp, view count, reactions broken out per emoji, forwarded-from attribution with its link, media types, link-preview metadata, outbound links, and a reply flag. Channel title, description and subscriber count come attached to every row at no extra charge — several actors in this category bill a separate "channel info" event for exactly that.

Input

FieldWhat it does
channels@handle, bare handle, t.me/handle or https://t.me/s/handle
maxMessagesPerChannel0 for the whole history, or a cap to control spend
onlyMessagesNewerThanISO date. Paging stops as soon as the channel passes it
onlyMessagesOlderThanISO date upper bound, for a closed range
useProxyOff by default — Telegram serves this without one
delayBetweenPagesSecsPacing for very long histories
{
"channels": ["@durov", "telegram"],
"maxMessagesPerChannel": 500,
"onlyMessagesNewerThan": "2026-09-01"
}

Output

One row per message:

{
"channel": "durov",
"message_id": 528,
"url": "https://t.me/durov/528",
"datetime": "2026-09-18T14:22:07+00:00",
"text": "Telegram now supports…",
"views": "1.25M",
"reactions": { "👍": "106", "❤": "3", "stars": "14.3K" },
"reactions_total": 233765,
"forwarded_from": null,
"forwarded_from_link": null,
"media": ["video"],
"is_reply": false,
"link_preview_site": "Telegram",
"link_preview_title": "Welcome Messages, Buttons in Messages and Signed Gifts",
"link_preview_desc": "Introducing Welcome Messages…",
"link_preview_url": "https://telegram.org/blog/welcome-messages-buttons-TG-13",
"links": ["https://telegram.org/blog/welcome-messages-buttons-TG-13"],
"channel_title": "Durov's Channel",
"channel_description": "Thoughts from the Telegram founder.",
"subscribers": "9.48M",
"scraped_date": "2026-09-24T09:02:11Z"
}

reactions keeps Telegram's own labels: the emoji itself where there is one, stars for paid reactions, and custom:<id> for premium custom emoji. reactions_total is the sum, already expanded from Telegram's shorthand — 14.3K counts as 14,300.

Pricing

$0.50 per 1,000 messages, plus Apify's standard $0.00005 actor start. Channel metadata is free, date filtering is free, and channels that fail are not charged.

Notes and limits

  • Public channels only. Private channels, invite-only channels and groups have no public preview; they come back as an error row rather than an empty dataset, and cost nothing.
  • Two things this surface genuinely does not carry: comment counts and forward/share counts. They exist only through an authenticated Telegram client, which is what actors that ask for your api_id/api_hash are doing. If you need those numbers, this is the wrong tool and the README of a Telethon-based actor is the right one.
  • An album counts as one message, not one per image. That matches how Telegram itself numbers it and how analysts count posts.
  • Very long histories are paged in blocks of roughly twenty messages, so a full 10,000-message archive is a few hundred requests. Use the date bound where you can.

FAQ

Do I need api_id / api_hash / a phone number? No. That is the point.

Can it read a group? No — groups have no public preview surface.

Can it search across all of Telegram by keyword? No. It reads channels you name.

Is the view count real? It is the number Telegram publishes on the message, including its shorthand for large values; views keeps the original string so nothing is invented.