Why this one
Most Telegram scrapers on the Store either need a Telegram API key and phone number or run a headless browser and charge you for it. This one reads the public web preview that Telegram serves for every open channel, so it needs no credentials, finishes a 1,000-post pull in well under a minute, and costs a fraction of a cent per post.
- Keyword search runs on Telegram's side, so a monitoring run for "your brand" returns only matching posts and you pay only for those.
- A date cut-off stops pagination the moment older posts appear, which makes hourly or daily incremental runs cheap.
- Polls, link previews, forwards, replies, photo and video URLs and view counts come back as structured fields, not as a text blob.
- A private or deleted channel produces an error record and the run keeps going for the other channels.
What people use it for
- Brand and competitor monitoring across crypto, finance, tech and local-news channels, pushed to Slack or a sheet every hour.
- Building datasets for research or model training from thousands of posts per run, with views as an engagement signal.
- Feeding an AI agent or RAG pipeline with fresh Telegram content through the Apify MCP server.
- Archiving a channel's posts and media links before they are edited or deleted.
Input
| Field | Type | Default | What it does |
|---|---|---|---|
channels | array | ["durov", "telegram"] | Public channel usernames or links, e.g. |
maxPostsPerChannel | integer | 100 | Stop after this many posts for each channel. |
postedAfter | string | Optional ISO date such as `2026-01-01` or `2026-01-01T12:00:00Z`. | |
searchQuery | string | Optional keyword filter applied by Telegram on the server side (same as the search box on t.me). | |
includeChannelInfo | boolean | true | Also output one record per channel with title, description, subscriber count and media counters (`type: "channel"`). |
proxyConfiguration | object | Telegram's public preview rarely blocks, so no proxy is needed by default. |
Output
Each result is one JSON record. The main fields: type, channelUsername, postId, url, datetime, text, views, mediaCount, isForwarded, forwardedFromTitle, author. Download as JSON, CSV or Excel, or read it through the API.
Pricing
$0.60 / 1,000 results, charged per result with no Apify platform usage added on top. A run that returns nothing costs nothing beyond Apify's default start fee of $0.00005.
Frequently asked
Can it read private channels or groups?
No. It only reads what Telegram shows to anyone without logging in, which means public channels with the web preview enabled. Private channels, restricted channels and most groups return an error record.
Does it return comments and reactions?
Comments live in a separate discussion group and reactions are not part of the public preview, so neither is included. Views, forwards, replies, media and polls are.
How far back can it go?
As far as the channel's history. Telegram serves about 20 posts per page, so a 100,000-post archive takes a few minutes and is paginated automatically.
Full reference documentation, sample output and the changelog live on the Apify listing.
