Telegram Channel Scraper - Messages, Views & Reactions avatar

Telegram Channel Scraper - Messages, Views & Reactions

Pricing

$1.50 / 1,000 results

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

Telegram Channel Scraper - Messages, Views & Reactions

Scrape public Telegram channels without login or API keys: posts with text, date, views, reactions, media, links, hashtags, forwards and channel subscriber counts. Search inside a channel and filter by date. $1.50 per 1,000 posts.

Pricing

$1.50 / 1,000 results

Rating

0.0

(0)

Developer

Atesen Software

Atesen Software

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Telegram Channel Scraper - Posts, Views & Reactions

Scrape public Telegram channels without a Telegram account, phone number or API key. Give it channel names like durov or links like https://t.me/telegram and get every post as JSON, CSV or Excel: text, date, views, reactions, photos, videos, links, hashtags, forwards and link previews, plus a free channel profile with the subscriber count.

  • No login, no API key, no browser. Reads the public web preview at t.me/s/<channel>.
  • Search inside a channel (searchQuery) and stop at a date (onlyPostsNewerThan) so scheduled runs only pay for new posts.
  • Start from any post link (https://t.me/channel/500) and go back in history.
  • Channel profiles and problem rows are free. No start fee beyond Apify's minimum.
  • Never fails on bad input: private invite links, users, bots and typos become free status rows.

Use cases

  • Crypto, trading and signal channel monitoring: collect every call with its date and view count.
  • News and OSINT research: archive channels, track what is forwarded from where.
  • Brand and competitor monitoring: search channels for your brand or product names.
  • Marketing analytics: compare views, reactions and posting frequency across channels; find which posts perform.
  • Lead and partner research for Telegram ad buying: subscriber counts and engagement per channel.

Input

FieldDescription
channelsUsernames or links: durov, @durov, https://t.me/durov, https://t.me/durov/500
maxPostsPerChannelDefault 100, newest first. 0 = whole history
onlyPostsNewerThanStop at this date, e.g. 2026-01-01
searchQueryOnly posts containing this text
includeChannelInfoFree profile row per channel (default on)
maxConcurrencyChannels in parallel (default 3)
{
"channels": ["durov", "https://t.me/telegram"],
"maxPostsPerChannel": 100,
"onlyPostsNewerThan": "2026-01-01"
}

Output

One row per post (type: "post"):

FieldDescription
channel, postId, urlChannel username, message ID, link to the post
datePublication time (ISO, UTC)
textPost text with line breaks
viewsView count (e.g. 5820000)
reactions, reactionsTotalEach reaction (emoji or custom-emoji ID, Telegram Stars as telegram-stars) with its count
photoUrls, videoCountPhoto links and number of videos
hasDocument, documentTitle, hasPollFiles and polls
links, hashtags, linkPreviewLinks in the post, hashtags, link preview card
forwardedFrom, forwardedFromUrl, replyToUrlForward source and replied-to post
author, editedSigned author (if the channel signs posts), edited flag

Plus one free type: "channel" row per channel: title, description, subscribers, verified, photoUrl, counters (photos, videos, links, files).

Example post:

{
"type": "post",
"channel": "telegram",
"postId": 460,
"url": "https://t.me/telegram/460",
"date": "2026-08-26T19:12:34+00:00",
"text": "For all the info from today's update ...",
"views": 1980000,
"reactionsTotal": 0,
"links": ["https://telegram.org/blog/welcome-messages-buttons-TG-13"]
}

Status rows (free)

statusmeaning
invalid_inputNot a valid username / link, or a bad date
private_channelInvite links (t.me/+...) point to private chats
no_public_previewA user, bot, group or a channel with web preview turned off
not_foundNo channel with this username
no_postsNothing matched the search or date range
failed / unreachableTelegram did not answer; try again

Pricing

Pay per event: $0.0015 per result ($1.50 per 1,000 saved rows). Each saved data row is one result event. Status rows, error rows and empty lookups are not charged. The run stops when it reaches the maximum cost per run. No Apify proxy and no login.

Tips

  • Schedule the actor daily with onlyPostsNewerThan set to yesterday to collect only new posts.
  • Media files themselves are not downloaded; you get their links (Telegram CDN links expire after some time).
  • Only public channels with web preview are supported. Private groups and chats need an account and are out of scope.

This actor reads only what Telegram shows publicly on t.me. Use the data responsibly and respect Telegram's terms and local law.