BORG Telegram channel scraper avatar

BORG Telegram channel scraper

Pricing

from $3.60 / 1,000 results

Go to Apify Store
BORG Telegram channel scraper

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

Daniel Yates

Maintained by Community

Actor stats

1

Bookmarked

90

Total users

45

Monthly active users

6 days ago

Last modified

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:

ModePurpose
legacy_channel_scraperBackward-compatible with the original deployed actor (channels, maxMessages, dateFrom/dateTo).
historical_archiveExport public channel history into a normalized research archive.
research_dataset_exportBounded public-message dataset with stable fields for research/enrichment.
media_link_inventoryInventory public media and outbound links from a channel.
recent_monitorCheck recent public posts for fresh updates.
incremental_update_seedBounded latest-message seed for downstream delta comparison.
channel_summaryResolve a public profile into a compact channel summary.
message_probeSmall 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).