Telegram Channel Monitor
Under maintenancePricing
from $1.00 / 1,000 results
Telegram Channel Monitor
Under maintenanceCollect new posts and media from public Telegram channel previews.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Headless Agent
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Collect new posts from public Telegram channels, including text, timestamps, view counts, author attribution, media links and public post URLs. Schedule repeat runs to receive new posts without repeating posts already delivered.
Supply a channel username, an @username, or its public channel URL. Private channels and channels without a public preview produce a warning while other channels continue. A run fails if every channel fails.
| Input | Description |
|---|---|
channels | Required list of public channels, maximum 50. |
maxPosts | Most recent matching posts per channel per run. Default 100, maximum 1,000. A bounded scan may return fewer. |
sinceMessageId | Optional floor: only message IDs greater than this value are eligible. |
keyword | Optional case-insensitive substring filter on post text. |
includeMedia | Include exposed media URLs. Default true. False keeps the post and media type but returns an empty media URL list. |
stateKey | Monitoring profile name. Keep the same value for scheduled runs; default telegram-channel-monitor-state. |
Example input:
{"channels":["durov"],"maxPosts":100,"includeMedia":true}
| Output | Description |
|---|---|
channelUsername, channelTitle | Public channel username and display title. |
messageId, url | Message identifier and public post link. |
date | Post timestamp in UTC. |
text, textHtml | Plain text and original formatted text. Sanitize HTML before displaying it in a browser. |
mediaType | photo, video, voice, poll, document, or none. |
mediaUrls | Available media links; these can expire. Files are not downloaded. |
linkPreviewUrl | Linked preview destination, or null. |
views | Approximate view count, or null when absent. |
forwards | Null when no forward count is exposed; currently unavailable. |
author, forwardedFrom | Visible author and forwarded attribution, or null. |
isReply | Whether reply markup is shown. |
observedAt | Observation timestamp in UTC. |
Example result:
{"channelUsername":"durov","channelTitle":"Pavel Durov","messageId":531,"url":"https://t.me/durov/531","date":"2026-07-16T20:45:25.000Z","text":"🩵 Telegram now has a Rich Text Editor.\n\nIt supports tables, headings, inline media, lists, AI content, formulas, and more.\n\n😈 Messaging apps will never be the same!","textHtml":"🩵 Telegram now has a <b>Rich Text Editor</b>.<br><br>It supports tables, headings, inline media, lists, AI content, formulas, and more.<br><br>😈 Messaging apps will never be the same!","mediaType":"video","mediaUrls":[],"linkPreviewUrl":null,"views":5850000,"forwards":null,"author":"Pavel Durov","forwardedFrom":null,"isReply":false,"observedAt":"2026-10-27T16:00:00.000Z"}
Each channel's selected posts are delivered oldest-first. The first run collects a recent snapshot up to your limit. Later runs collect only posts newer than the last delivered message; older posts outside the initial snapshot are not backfilled. Changing a keyword does not replay older posts, and edits to delivered posts are not repeated. Use a new monitoring profile to start a fresh snapshot.
Run one schedule at a time for each profile. Interrupted delivery can repeat the last batch. Public preview availability and formatting can change; unrecognized pages are reported as channel warnings. Runs that successfully find no new posts return zero results.