# Telegram Channel Scraper

> Telegram Channel Scraper is a paid API for AI agents from agent-data.centorprat.workers.dev, paid per call via x402, $0.03/call, status unknown (last checked 2026-10-27).

Scrapes public Telegram channels for posts, engagement metrics, and channel-level analytics without requiring login or API credentials

## Facts

- Endpoint: POST https://agent-data.centorprat.workers.dev/tools/telegram-channel-scraper?utm_source=zero.xyz
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-27
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/telegram-channel-scraper-2d9cdee6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_iJu_3scOJzpQlSuxf-p9x

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability telegram-channel-scraper-2d9cdee6 -d '<json body>'
```

Example prompt: Can you scrape the last 30 posts from the Telegram channel @durov since 2024-01-01 and pull out any posts mentioning 'privacy', along with the channel's subscriber count and engagement stats?

## When to prefer this

Use this endpoint when you need to extract public Telegram channel content or engagement metrics without registering for the Telegram API or managing credentials. It is ideal for competitive intelligence, media monitoring, disinformation research, or community analytics on up to 2 channels per call. Prefer this over generic web scrapers because it understands Telegram's structure natively, returning structured fields like reactions, hashtags, view rates, and linked domains rather than raw HTML.

## Known failure modes

- Channel is private or does not exist — returns a failed lookup (not charged)
- Channel username misspelled or using incorrect format — no results returned
- Date filter excludes all available posts — empty post list returned
- Keyword filter matches no posts — empty filtered list but channel analytics still populated
- Exceeds maxItems limits (2 channels, 5 keywords, 50 posts) — input rejected with validation error

## How this service works

Pay-per-call data and tools for AI agents, $0.002-0.01 per call in USDC via x402 (Base, Polygon or Solana), no account or API key; MAX tiers ($0.05-0.25) run deeper jobs. Agent toolkit: web search, search + read top pages, any page as clean markdown with a prompt-injection check, which-x402-API-to-call recommender, seller check. Data: Google Maps places with contacts, YouTube video data and transcripts, job listings (Indeed, LinkedIn, 13 boards), Google Ads Transparency, TikTok comments, Pinterest, Airbnb, Redfin, AliExpress, app stores, live sports, website and SEO checks, Shopify store tech stacks, and onchain token / address risk checks.

## Output

Returns per-channel data including individual posts (with date, text, view count, reactions, embedded links, hashtags, and media indicators) and channel-level analytics (subscriber count, posts per day, median views, view rate, top hashtags, and most-linked domains). Channels that fail to resolve are not charged.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "since": {
   "type": "string",
   "description": "Only posts on or after this date (YYYY-MM-DD)."
  },
  "channels": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "maxItems": 2,
   "description": "Public channel usernames or links, e.g. [\"durov\", \"https://t.me/telegram\", \"@bloomberg\"]."
  },
  "keywords": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "maxItems": 5,
   "description": "Keep only posts whose text contains any of these (channel analytics still use all scraped posts)."
  },
  "maxPostsPerChannel": {
   "type": "integer",
   "maximum": 50,
   "description": "Newest posts first, going back through the history. 0 = channel stats only."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "items": [
   {
    "url": "https://t.me/durov",
    "type": "channel",
    "files": null,
    "links": 200,
    "title": "Pavel Durov",
    "avatar": "https://cdn4.telesco.pe/file/YPQbnDImYE7p5Tn3W2GMhkoA38DnlEgMKnD4TZc1C-4Q_fEEba_ycojnCT_6KPPzbCE4TpuakZoRRHyOkS6D9ByTo5-lTy3Wbm7LYVA2h0sRJu9fA34hrDsSwEgnHrMpIrWYlI9wv3_A6K0f_SlCy3E9k5OvQoy1W28Y9qXFYe5foI24iyZZa8V9o7o1KTRXLp0ewp7ZMhfLHLZSTIV5v9YlAK5lKD2ek_mZmQLS7KvTHCWOHfsgGC-GKSWOMj5_s9BjfyjvtYxSZ-8dd1BRXz7yoA9GrKq4eorE3owMnZPwynN3M5XEOvYjGdfBglwFQerj2Jiw7fGYC0IjqzlFvw.jpg",
    "photos": 102,
    "videos": 47,
    "username": "durov",
    "isVerified": true,
    "description": "Founder of Telegram.",
    "subscribers": 10300000,
    "firstPostDate": "2026-08-14T13:49:28+00:00",
    "postsAnalyzed": 10
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/telegram-channel-scraper-2d9cdee6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-data.centorprat.workers.dev](https://www.zero.xyz/host/agent-data.centorprat.workers.dev/llms.txt)
