Telegram Keyword Search Scraper
Pricing
from $2.50 / 1,000 results
Telegram Keyword Search Scraper
The most versatile Telegram scraper. Search message by keyword across all public channels, or scrape any channel's full history by username. No API key needed. 43 countries, 30 languages, real-time streaming.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer

Lofomachines
Actor stats
0
Bookmarked
24
Total users
10
Monthly active users
11 days ago
Last modified
Categories
Share
Telegram Search and Channel Scraper
The most versatile Telegram scraper on Apify. Extract posts from any public Telegram channel — search across thousands of channels by keyword, or paginate through the full history of specific channels. No Telegram API key. No account. No setup. Results stream in real time.
Why This Actor?
Most Telegram scrapers force you to already know which channel you want. This actor lets you discover channels you didn't even know existed — by searching the web for any keyword and pulling the matching Telegram posts instantly.
| Feature | This Actor | Channel-only scrapers |
|---|---|---|
| Search by keyword across all channels | ✅ | ❌ |
| Scrape known channels by username | ✅ | ✅ |
| No Telegram API key required | ✅ | ❌ |
| Real-time streaming results | ✅ | ❌ |
| 43 countries + 30 languages targeting | ✅ | ❌ |
| Channel metadata (subscribers, stats) | ✅ | Partial |
| Date range filters (absolute or relative) | ✅ | Partial |
Two Scraping Modes
🔍 Mode 1 — Keyword Search
Find Telegram posts across all public channels matching your keywords.
- Enter one or more keywords (e.g.
bitcoin,Ukraine frontline,crypto airdrop) - The actor searches the web for public Telegram posts matching each keyword
- Results start streaming into your dataset within the first 15–20 seconds
- Filter by country, language, and date range for precision targeting
Best for: market research, brand monitoring, news tracking, geopolitical intelligence, competitor analysis, topic discovery.
📢 Mode 2 — Channel Scraping
Paginate through the complete message history of channels you already know.
- Enter one or more channel usernames (e.g.
cointelegraph,@bbcnews,truexazaporozie) - The actor paginates backwards through each channel's history
- Stops at a configurable message limit or date cutoff — whichever comes first
- Results returned sorted oldest → newest
Best for: channel archiving, historical analysis, community monitoring, disinformation tracking, influence mapping.
Use Cases
- 📊 Market Research — Track discussions about your product, industry, or competitors across hundreds of Telegram channels simultaneously
- 🗞️ News & Media Monitoring — Follow breaking news from Telegram-first sources in Ukraine, Russia, Iran, Turkey, Brazil, India, and beyond
- 🔍 OSINT & Geopolitical Intelligence — Monitor conflict zones, political movements, and regional narratives (Ukraine, Gaza, Myanmar, Venezuela…)
- 📈 Crypto & Financial Intelligence — Extract signals, pump announcements, and sentiment from trading and DeFi channels
- 🎯 Brand Monitoring — Detect mentions of your brand, product, or keywords across any public channel in 30+ languages
- 🤖 AI Training Data — Build multilingual datasets from real social media conversations at scale
- 📦 Content Archiving — Create full backups of public channels for compliance or research
- 🕵️ Disinformation Research — Track narrative propagation, coordinated messaging, and influence campaigns across regions
- 👥 Community Analysis — Understand audience sentiment, engagement patterns, and content trends in niche communities
Input Parameters
Keyword Search Mode
| Field | Required | Description |
|---|---|---|
mode | ✅ | Set to "keyword" |
keywords | ✅ | List of search terms — one search query per keyword |
afterDate | ❌ | Lower date bound — absolute (2025-03-01) or relative (7 days, 1 month) |
beforeDate | ❌ | Upper date bound — absolute date only |
countryCode | ❌ | Country bias for results — 43 supported (e.g. us, ua, tr, br, in) |
languageCode | ❌ | Language preference — 30 supported (e.g. en, ru, ar, uk, fa) |
maxResultsPerKeyword | ❌ | Max posts per keyword (10–100, default 100) |
Channel Scraping Mode
| Field | Required | Description |
|---|---|---|
mode | ✅ | Set to "channel" |
channels | ✅ | Channel usernames — with or without @ (e.g. cointelegraph, @bbcnews) |
channelMaxMessages | ❌ | Max messages per channel (10–10 000, default 10) |
channelAfterDate | ❌ | Only collect messages from this date onward (absolute or relative) |
Input Examples
Keyword search — track crypto news in English, last 7 days:
{"mode": "keyword","keywords": ["bitcoin ETF", "crypto regulation", "DeFi exploit"],"afterDate": "7 days","countryCode": "us","languageCode": "en","maxResultsPerKeyword": 100}
Keyword search — monitor the Ukraine conflict in Ukrainian and Russian:
{"mode": "keyword","keywords": ["фронт", "наступ", "обстріл", "фронт сегодня"],"afterDate": "1 day","countryCode": "ua","languageCode": "uk","maxResultsPerKeyword": 100}
Channel scraping — archive last 500 posts from multiple channels:
{"mode": "channel","channels": ["cointelegraph", "bbcnews", "truexazaporozie"],"channelMaxMessages": 500,"channelAfterDate": "1 month"}
Output Fields
One item per Telegram post.
| Field | Type | Description |
|---|---|---|
id | integer | Telegram post ID |
date | string | Publication timestamp (ISO 8601) |
text | string | Full post text content |
view_count | integer | Total number of views |
reactions | object | Emoji reactions map — e.g. {"🔥": 142, "👍": 38, "❤️": 21} |
media_url | string | Direct URL to attached photo or video (if any) |
pinned | boolean | Whether the post is pinned in the channel |
source_name | string | Channel display name |
source_id | integer | Numeric channel ID |
source_url | string | t.me/s/ page URL (keyword mode only) |
channel_info | object | Channel metadata — subscribers, photos, videos, files, links, description |
sender | string | Numeric channel ID (as string) |
silent | boolean | Whether the message was sent silently |
processed_at | string | Timestamp when this item was scraped (ISO 8601) |
channel_info object
{"subscribers": 274000,"photos": 16300,"videos": 11200,"files": 6,"links": 30500,"description": "Офіційний канал..."}
Supported Countries (43)
🇺🇸 US · 🇬🇧 GB · 🇨🇦 CA · 🇦🇺 AU · 🇩🇪 DE · 🇫🇷 FR · 🇮🇹 IT · 🇪🇸 ES · 🇵🇹 PT · 🇳🇱 NL · 🇧🇪 BE · 🇨🇭 CH · 🇦🇹 AT · 🇸🇪 SE · 🇳🇴 NO · 🇩🇰 DK · 🇫🇮 FI · 🇵🇱 PL · 🇨🇿 CZ · 🇭🇺 HU · 🇷🇴 RO · 🇬🇷 GR · 🇺🇦 UA · 🇷🇺 RU · 🇹🇷 TR · 🇮🇱 IL · 🇸🇦 SA · 🇦🇪 AE · 🇪🇬 EG · 🇿🇦 ZA · 🇳🇬 NG · 🇮🇳 IN · 🇵🇰 PK · 🇧🇩 BD · 🇯🇵 JP · 🇰🇷 KR · 🇨🇳 CN · 🇮🇩 ID · 🇻🇳 VN · 🇹🇭 TH · 🇧🇷 BR · 🇲🇽 MX · 🇦🇷 AR
Supported Languages (30)
English · Deutsch · Français · Italiano · Español · Português · Nederlands · Svenska · Norsk · Dansk · Suomi · Polski · Čeština · Magyar · Română · Ελληνικά · Українська · Русский · Türkçe · العربية · עברית · فارسی · हिन्दी · বাংলা · Bahasa Indonesia · Tiếng Việt · ภาษาไทย · 中文 · 日本語 · 한국어
Integrations
This actor works with all standard Apify integrations:
- Make (Integromat) — trigger runs and pipe results to Google Sheets, Airtable, Slack, or any app
- n8n — automate Telegram monitoring workflows with no-code pipelines
- Zapier — connect results to 5 000+ apps
- Python / JavaScript / TypeScript — use the Apify client SDK to call this actor programmatically
- REST API — integrate directly into any backend or data pipeline
- MCP (Model Context Protocol) — connect directly to AI agents and LLM pipelines
FAQ
Does this require a Telegram account or API key? No — no account, no phone number, no API key needed.
Can I scrape private channels or groups? No. Only public channels can be scraped.
How fast are results? In Keyword Search mode, results start appearing within 15–20 seconds.
What's the maximum number of posts I can collect? Up to 100 posts per keyword (keyword mode) or 10 000 messages per channel (channel mode).
Does it work for non-English channels? Yes — it fully supports any language that Telegram renders in the web preview, including Arabic, Persian, Ukrainian, Russian, Chinese, Hindi, and all 30 supported language codes.
How do I search channels in a specific country?
Set countryCode (e.g. ua for Ukraine, tr for Turkey, br for Brazil) and languageCode to bias search results toward that region.
Can I run multiple keywords at once?
Yes — add multiple entries to the keywords array. Each keyword triggers a separate search and the results are all stored in the same dataset.
Can I schedule recurring runs? Yes — use Apify's built-in scheduler to run this actor daily, hourly, or on any cron schedule for continuous monitoring.
Legal & Compliance
This actor only accesses publicly available Telegram channels via the official web preview interface. It does not bypass authentication, access private data, or use unofficial Telegram APIs. Users are responsible for ensuring their use complies with applicable laws including GDPR, CCPA, and Telegram's Terms of Service.