Telegram Channel Scraper (No Login) avatar

Telegram Channel Scraper (No Login)

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Telegram Channel Scraper (No Login)

Telegram Channel Scraper (No Login)

Scrape public Telegram channels without an account: posts, views, dates, photos, videos, forwards, links. Keyword search, date filter, only-new mode.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

선도 황

선도 황

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Categories

Security

Limited permissions

Share

Extract posts from public Telegram channels — text, views, dates, photos, videos, documents, forwards, replies and links — without a Telegram account, API key or phone number. Search keywords across many channels at once, filter by date, or run it on a schedule and get only new posts.

Works on any channel that has a public web preview (https://t.me/s/<channel>). Fast, HTTP-only (no browser), so results are cheap and reliable.

What you can do with it

  • Monitor news & alerts — follow crypto, security, deals or regional news channels and push new posts to Slack, Google Sheets, or your own app.
  • Brand / keyword tracking — find every mention of your product, ticker or competitor across dozens of channels.
  • Market & OSINT research — export a channel's full history with view counts to spot what content performs.
  • Content aggregation — build feeds, newsletters or datasets from public channels.
  • AI pipelines — feed clean message text into LLM summarisation, sentiment or classification.

Sample output

One dataset item per message:

{
"channel": "telegram",
"id": 461,
"url": "https://t.me/telegram/461",
"date": "2026-05-11T09:01:00+00:00",
"text": "The text editor allows anyone to use their own prompts with AI. #update",
"views": 1760000,
"forwardedFrom": null,
"forwardedFromUrl": null,
"replyToUrl": "https://t.me/telegram/458",
"replyToText": "Bots are now able to respond",
"linkPreview": { "url": "https://telegram.org/blog/bots", "title": "Bot updates", "description": "All about bots", "siteName": "Telegram" },
"photos": ["https://cdn4.telesco.pe/file/abc123.jpg"],
"videos": ["https://cdn4.telesco.pe/file/video.mp4"],
"videoThumbnails": ["https://cdn4.telesco.pe/file/thumb.jpg"],
"documents": [{ "title": "report.pdf", "extra": "2.1 MB" }],
"links": ["https://telegram.org/blog/bots"],
"isServiceMessage": false,
"channelTitle": "Telegram News",
"channelSubscribers": 9450000,
"scrapedAt": "2026-09-30T08:00:00+00:00"
}

Set Include text as HTML to also get textHtml with bold/italic/links preserved.

Input

FieldDescription
channelsChannel usernames or links (telegram, @durov, https://t.me/telegram). Any number of channels.
maxMessagesPerChannelHow many messages to save per channel (newest first). Default 100.
keywords / keywordMatchKeep only messages containing the keywords — whole-word, case-insensitive (AI won't match details); phrases, #hashtags and $TICKERS work. any or all.
dateFrom / dateToDate range (YYYY-MM-DD). Scraping stops as soon as older posts are reached.
onlyNewMessagesRemember the last seen message per channel and return only newer posts on the next run — perfect for schedules.
includeMediaUrlsPhoto / video / document info (default on).
includeTextHtmlAdd the HTML-formatted text (default off).
includeServiceMessagesInclude system posts such as "Channel created" (default off).
requestDelayMsPause between page requests (default 800 ms).
proxyConfigurationOptional. Only needed if you hit repeated 429/403 errors.
saveDebugHtmlStore raw HTML in the key-value store when a page can't be parsed.

Example: keyword alert across channels, scheduled hourly

{
"channels": ["cryptonews", "bitcoin", "whale_alert_io"],
"keywords": ["ETF", "SEC"],
"keywordMatch": "any",
"onlyNewMessages": true,
"maxMessagesPerChannel": 200
}

Schedule the actor and connect a webhook or the Slack / Google Sheets integration — you will receive only the new matching posts each hour.

Pricing

Pay per event, no subscription:

  • a small fee per run
  • a fee per message saved to the dataset (about $1 per 1,000 messages)

You are charged only for messages that actually match your filters and are saved. Platform usage is included in the price.

Limits & notes

  • Public channels with web preview only. Private channels, groups, and channels that disabled the preview return a no_preview status in the run summary (see SUMMARY in the key-value store).
  • Comments/replies under posts and reactions are not available on the public preview page.
  • Telegram may rate-limit very aggressive scraping; keep the default delay or enable a proxy.
  • Please respect the channels' content rights and applicable law. This actor only reads pages that Telegram publicly serves to any web visitor.

Need something else?

Open an issue in the Issues tab (I answer quickly) — e.g. more fields, other Telegram pages, or a custom integration.