Telegram Channel Intelligence avatar

Telegram Channel Intelligence

Pricing

from $0.0015 / telegram result

Go to Apify Store
Telegram Channel Intelligence

Telegram Channel Intelligence

Pricing

from $0.0015 / telegram result

Rating

0.0

(0)

Developer

BotFlowTech

BotFlowTech

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Telegram Channel Intelligence — Messages, Channel Info, Search & Keyword Monitor

Scrape any public Telegram channel's messages, subscriber counts, and analytics. Monitor keywords across channels, discover channels by topic, and extract message history — no API key or login required.


What It Does

This actor operates in 4 modes, making it the most versatile Telegram intelligence tool on Apify:

ModeInputWhat You Get
channelChannel username(s)Full channel profile (name, description, subscriber count, photo) + recent messages
searchKeyword / topicRanked list of public channels related to that topic
messagesChannel username(s) + filtersBulk message history with date range, minimum views, and keyword filters
monitorChannel username(s) + keywordsOnly messages from the last 24h that match your keywords

All modes work with public channels only — no Telegram login, phone number, or Bot API key needed.


Use Cases

WhoHow They Use It
Crypto tradersMonitor signal channels (e.g. @cryptosignals) for buy/sell alerts in real time
Brand managersTrack brand mentions across Telegram communities using keyword monitor mode
Journalists & researchersExtract full message history from news channels for investigative research
MarketersDiscover top channels in their niche to identify advertising opportunities
Competitive intelligenceMonitor competitor announcement channels for product launches and promotions
AI/ML teamsCollect large text datasets from topic-specific channels for model training

Example Inputs

Mode: channel — Channel Profile + Messages

{
"mode": "channel",
"channels": ["cointelegraph", "bbcnews"],
"maxMessages": 100,
"includeChannelInfo": true
}

Mode: search — Discover Channels by Keyword

{
"mode": "search",
"searchQuery": "crypto trading signals"
}

Mode: messages — Bulk Message Scraper with Filters

{
"mode": "messages",
"channels": ["cointelegraph", "cryptopanic", "wublockchain"],
"maxMessages": 500,
"startDate": "2024-06-01",
"endDate": "2024-06-30",
"minViews": 1000
}

Mode: monitor — Keyword Alert Monitor

{
"mode": "monitor",
"channels": ["cryptosignals", "whaleAlerts", "bitcoinmagazine"],
"filterKeywords": ["BTC", "bullish", "buy signal", "short squeeze"]
}

Example Output

Message Record

{
"type": "message",
"messageId": "48291",
"channelUsername": "cointelegraph",
"channelName": "Cointelegraph",
"date": "2024-06-15T09:43:00Z",
"text": "Bitcoin surges past $70K as institutional demand hits record highs. Analysts expect further rally into Q3 as ETF inflows accelerate.",
"views": 45200,
"forwards": 890,
"repliesCount": 143,
"hasPhoto": true,
"hasVideo": false,
"hasDocument": false,
"photoUrl": "https://cdn5.telegram-cdn.org/file/abc123.jpg",
"messageUrl": "https://t.me/cointelegraph/48291"
}
{
"type": "monitor_match",
"messageId": "12055",
"channelUsername": "cryptosignals",
"channelName": "Crypto Signals VIP",
"date": "2024-06-15T08:17:00Z",
"text": "🚀 BTC signal: Strong bullish divergence on 4H chart. Entry zone $68,500–$69,000. TP1: $72K. Stop: $67,200.",
"views": 8910,
"forwards": 234,
"repliesCount": 67,
"hasPhoto": false,
"hasVideo": false,
"hasDocument": false,
"photoUrl": null,
"messageUrl": "https://t.me/cryptosignals/12055",
"matchedKeywords": ["BTC", "bullish"]
}

Channel Record

{
"type": "channel",
"username": "cointelegraph",
"name": "Cointelegraph",
"description": "Covering the latest news and trends in blockchain, cryptocurrency, and decentralized technology.",
"subscriberCount": 987432,
"subscriberCountText": "987 432 subscribers",
"profilePhotoUrl": "https://cdn5.telegram-cdn.org/file/ct_photo.jpg",
"joinUrl": "https://t.me/cointelegraph",
"isVerified": true,
"scrapedAt": "2024-06-15T10:00:00.000Z"
}

Output Fields Reference

Message Fields

FieldTypeDescription
typestring"message" or "monitor_match"
messageIdstringTelegram message ID
channelUsernamestringChannel username (without @)
channelNamestringDisplay name of the channel
datestringISO 8601 datetime of the message
textstringFull message text content
viewsnumber | nullView count (null if not public)
forwardsnumber | nullNumber of times forwarded
repliesCountnumber | nullReply count
hasPhotobooleanWhether message contains a photo
hasVideobooleanWhether message contains a video
hasDocumentbooleanWhether message contains a file
photoUrlstring | nullDirect URL to photo (if available)
messageUrlstringDirect link to the message on Telegram
matchedKeywordsstring[](monitor mode only) Keywords found in text

Channel Fields

FieldTypeDescription
typestring"channel"
usernamestringChannel username (without @)
namestringChannel display name
descriptionstring | nullChannel bio/description
subscriberCountnumber | nullSubscriber count as integer
subscriberCountTextstring | nullRaw subscriber count text from page
profilePhotoUrlstring | nullURL to channel profile photo
joinUrlstringt.me link to join/view the channel
isVerifiedbooleanWhether the channel has a verification badge
scrapedAtstringISO 8601 timestamp when data was collected

Limitations

  • Public channels only. Private groups, private channels, and password-protected channels cannot be accessed without a Telegram login. This actor uses Telegram's public web preview (t.me/s/) which only works for public channels.
  • ~30 messages per page. Telegram's public preview shows approximately 30 messages per page. Pagination is used to collect more, but very high maxMessages values (1000+) will take several minutes per channel.
  • View counts. View counts are only displayed on Telegram for channels (broadcast channels), not groups. Group messages will have views: null.
  • No real-time data. There may be a delay of a few minutes between a message being posted and it appearing in the public preview.
  • Rate limits. This actor uses polite delays between requests (1–3 seconds) to avoid being rate-limited by Telegram. Very large scrapes will take proportionally longer.
  • Search mode accuracy. Search uses Google/DuckDuckGo to discover t.me links for a query. Results depend on how well-indexed those channels are by search engines.

Pricing

$1.50 per 1,000 results (pay-per-result via Apify's platform charging).

Each channel profile or message counts as one result. You only pay for what you extract.


Technical Notes

  • Built with Apify SDK v3 and Crawlee CheerioCrawler
  • Uses https://t.me/s/{username} (Telegram's public server-side rendered preview) — no browser/JavaScript needed
  • Rotating desktop User-Agent headers for reliability
  • Graceful error handling: private or non-existent channels are skipped with a warning
  • TypeScript, ES2022, Node.js ≥ 18 required