Telegram Channel Posts Scraper

Scrape posts from public Telegram channels for social listening, monitoring, and research.

Data fields

FieldTypeDescription
channelHandlestringValue exported as channelHandle.
channelUsernamestringValue exported as channelUsername.
channelTitlestring | nullValue exported as channelTitle.
postIdstringValue exported as postId.
postUrlstringValue exported as postUrl.
datestring | nullValue exported as date.
postedAtstring | nullValue exported as postedAt.
textstring | nullValue exported as text.

Input preview

channelsChannels *
maxPostsMaximum posts
sinceDateOnly posts since date
untilDateOnly posts until date
includeMediaInclude media URLs
includeRawHtmlSnippetInclude raw HTML snippet

API and agents

This actor can be run through Apify API, datasets, webhooks, schedules, and the official Apify MCP server.

How this actor works

See example inputs, outputs, API usage, and practical limits before running this actor on Apify.

Open Apify page

Export posts from public Telegram channels with text, timestamps, views, reactions, links, media URLs, and source post URLs.

Use this Actor to collect public Telegram channel posts for social listening, news monitoring, crypto and market research, media analysis, brand tracking, and recurring channel dashboards. Results can be downloaded as CSV, JSON, Excel, XML, RSS, or used through the Apify Dataset API.

At a glance

  • Public channel export: Enter Telegram channel handles, usernames, or public channel URLs.
  • Post data rows: Export post IDs, URLs, dates, text, views, forwards, replies, reactions, links, and media URLs.
  • Date filtering: Limit posts with sinceDate and untilDate.
  • Monitoring ready: Schedule recurring channel checks for news, crypto, research, or brand monitoring.
  • API export: Send Telegram post rows to spreadsheets, BI tools, alerting systems, databases, or AI agents.

What can it do?

Telegram Channel Posts Scraper extracts posts from public Telegram channels and saves one dataset row per post.

  • Scrape public channels: Use channel handles, public usernames, t.me links, or public channel URLs.
  • Collect post metadata: Save post text, date, URL, views, replies, forwards, reactions, and links.
  • Include media URLs: Add public media URLs when available and requested.
  • Filter history: Use date inputs to keep runs focused.
  • Export repeatable datasets: Use Apify downloads, API calls, schedules, webhooks, and integrations.

Common workflows

  • Social listening: Monitor public Telegram channels for brand, topic, or market mentions.
  • News monitoring: Track public posts from media, research, and announcement channels.
  • Crypto research: Export public channel posts for project, token, or community analysis.
  • Market intelligence: Watch competitor, vendor, industry, or regional channels.
  • Content archiving: Store public post rows for later review and analysis.
  • AI summaries: Feed post text and links into summarization, classification, or alerting workflows.

What data can you extract?

The Actor returns one dataset row per public Telegram channel post.

Field Description
channelHandle Input channel handle or URL
channelUsername Public Telegram channel username
channelTitle Channel title when available
postId Telegram post ID
postUrl Public post URL
date Post date
postedAt Normalized post timestamp when available
text Public post text
views Public view count when available
forwards Forward count when available
replyCount Reply count when available
replies Reply metadata when available
reactions Public reactions when available
links Links found in the post
mediaUrls Public media URLs when included and available
rawHtmlSnippet Optional raw HTML snippet
scrapedAt Timestamp when the row was saved

Example input

{
  "channels": ["telegram"],
  "maxPosts": 25,
  "sinceDate": "2026-07-01",
  "includeMedia": true
}

Example output

{
  "channelUsername": "telegram",
  "channelTitle": "Telegram News",
  "postId": "123",
  "postUrl": "https://t.me/telegram/123",
  "date": "2026-07-03",
  "postedAt": "2026-07-03T10:00:00.000Z",
  "text": "Example public channel post",
  "views": 12000,
  "forwards": 45,
  "replyCount": 10,
  "reactions": [{"emoji": "like", "count": 100}],
  "links": ["https://example.com"],
  "mediaUrls": ["https://..."],
  "scrapedAt": "2026-07-03T12:00:00.000Z"
}

How to run it

  1. Open the Actor on Apify.
  2. Add one or more public Telegram channels.
  3. Set maxPosts.
  4. Add optional date filters.
  5. Choose whether to include media URLs or raw HTML snippets.
  6. Start the run and export the dataset.

Search tips

  • Use public channels only: Private channels and groups are not supported.
  • Start with one channel: Confirm output shape before adding a large channel list.
  • Use date filters: Keep recurring runs focused with sinceDate.
  • Enable media only when needed: Media URLs can make rows larger.
  • Schedule monitoring: Reuse the same channel list for daily or weekly snapshots.

Limits and caveats

  • The Actor extracts public Telegram channel posts only.
  • It does not access private channels, private groups, user chats, or login-gated data.
  • Some public counters, reactions, replies, or media URLs may be missing depending on Telegram page output.
  • Very large channels may require focused limits and date windows.

API usage

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~telegram-channel-posts-scraper/runs?token=YOUR_APIFY_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"channels":["telegram"],"maxPosts":25,"includeMedia":true}'

MCP and AI agents

This Actor can be used through the official Apify MCP server at https://mcp.apify.com.

For a focused single-Actor tool setup, use:

https://mcp.apify.com?tools=fetch_cat/telegram-channel-posts-scraper

Use the same JSON keys shown in the input configuration table, such as channels, maxPosts, sinceDate, untilDate, and includeMedia.

Support

If a run fails, returns no data, or a field looks wrong, open an issue from the Actor page.

Please include the Apify run ID or run URL, input JSON, one example public URL, query, or input item, what you expected, and what the dataset returned. Small reproducible inputs make parsing or site-layout issues much faster to fix.

Common questions

Questions and answers reused from the canonical actor README.

Can it scrape private Telegram channels?

No. It extracts public channel pages only.

Can it scrape Telegram groups?

No. This Actor is for public Telegram channels.

Can I scrape multiple channels in one run?

Yes. Add multiple values to channels.

Can I export to CSV or Excel?

Yes. Apify datasets can be downloaded as CSV, JSON, Excel, XML, RSS, HTML, or accessed through the API.