BORG Telegram channel scraper
Pricing
from $3.60 / 1,000 results
BORG Telegram channel scraper
Extracts data without a Telegram account or API key. Collect channel metadata, posts, media links, view counts, forwards, replies, timestamps, and date-filtered history from public channels. Good for market research, community monitoring, content archiving, lead intelligence, competitive analysis.
Pricing
from $3.60 / 1,000 results
Rating
0.0
(0)
Developer
Daniel Yates
Maintained by CommunityActor stats
1
Bookmarked
90
Total users
45
Monthly active users
6 days ago
Last modified
Categories
Share
Telegram Historical Archive / Research Dataset Export
Export public Telegram channel profiles and message history as a normalized, reusable research dataset — for archival analysis, indexing, and downstream intelligence workflows.
Public and credential-free: the actor reads only Telegram's server-rendered public
web preview (https://t.me/s/<channel>) with a plain HTTP fetch parsed by Cheerio. No
login, no cookies, no API keys, no proxy escalation, no headless browser. It never
accesses private content and never asks for your Telegram credentials.
Task modes (polymorphic templates)
One extraction engine serves several Telegram surfaces. Pick a mode:
| Mode | Purpose |
|---|---|
legacy_channel_scraper | Backward-compatible with the original deployed actor (channels, maxMessages, dateFrom/dateTo). |
historical_archive | Export public channel history into a normalized research archive. |
research_dataset_export | Bounded public-message dataset with stable fields for research/enrichment. |
media_link_inventory | Inventory public media and outbound links from a channel. |
recent_monitor | Check recent public posts for fresh updates. |
incremental_update_seed | Bounded latest-message seed for downstream delta comparison. |
channel_summary | Resolve a public profile into a compact channel summary. |
message_probe | Small public-message sample for schema validation / triage. |
Input
See .actor/INPUT_SCHEMA.json. Common fields: telegramChannelOrProfile (or legacy
channels), mode, messageLimit (or legacy maxMessages), includeMedia,
includeReplies, dateRange (or legacy dateFrom/dateTo). proxyConfiguration is
accepted for compatibility but non-escalating.
Output
Records are pushed to the dataset (.actor/dataset_schema.json) with Messages,
Media & Links, and Channels views. Each message row carries text, author, date,
views, edited/album flags, media references (photo/video/document/voice/sticker/poll),
link previews, and outbound links. A per-run summary is written to the default
key-value store under OUTPUT (.actor/output_schema.json).
Standby mode
The actor supports the Apify Standby Actor spec: when started in Standby mode it runs a warm HTTP server instead of a one-shot run, answering requests without cold starts.
GET /?channel=<@handle|url>&mode=<task>&messageLimit=<n>POST / (JSON body = actor input)
The server answers the platform readiness probe and returns scraped records as JSON in the HTTP response (it does not push to the shared dataset). Enable Standby in the Actor's Settings tab in the Apify Console.
Deployment
Deployment-ready Apify Actor scaffold. Runs on apify/actor-node:22 via npm start
(tsx src/main.ts).