# Telegram Public Channel Scraper - No Token (`alex_saite/telegram-public-channel-scraper-no-token`) Actor

Scrape public Telegram channels without API keys or tokens. Extract posts, views, media & channel metadata instantly. telegram scraper, telegram parser, no api key, no token, public channels, web scraping

- **URL**: https://apify.com/alex\_saite/telegram-public-channel-scraper-no-token.md
- **Developed by:** [Alex Vereshchagin](https://apify.com/alex_saite) (community)
- **Categories:** Social media, SEO tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$1.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## TG Telegram Public Channels Scraper - No Token

Scrape public Telegram channels without API keys or tokens. Extract posts, views, media & channel metadata instantly.

### ✨ Key Features

- **No API Key Needed** - Works with public channel previews, no registration required
- **No Authentication** - No phone number or Telegram account needed
- **Rich Metadata** - Extract channel info: followers, bio, avatar, verification status
- **Media Support** - Get images, videos, and link previews
- **Flexible Filtering** - Date ranges, message limits, custom field selection
- **Multiple Formats** - Accepts @username, t.me URLs, channel IDs, web.telegram.org links
- **Fast & Lightweight** - Async HTTP requests, minimal resource usage

### 🎯 Perfect For

- Market Research - Monitor competitor channels and trending topics
- Content Analysis - Study successful Telegram content strategies
- Brand Monitoring - Track mentions and sentiment in public channels
- OSINT & Investigations - Collect public data for research
- Media Monitoring - Aggregate news from Telegram channels
- Academic Research - Study social media trends and communication patterns

### 🔧 Input Formats Supported

The scraper accepts multiple channel identifier formats:

- @username (e.g., @telegram)
- t.me URL (e.g., https://t.me/telegram)
- Numeric ID (e.g., 1691104978)
- Web URL (e.g., https://web.telegram.org/k/#-1949445241)

**To get the URL**: Go to web.telegram.org, open the channel, and copy the URL from the address bar.

### ⚡ Quick Start

1. Add channels to scrape (one per line or use the Add button)
2. Set max messages per channel (default: 50)
3. Choose output fields you need (metadata, messages, etc.)
4. Run and export to CSV, Excel, JSON, or integrate with your apps

### 🛡️ Limitations

- Works only with public channels (private channels require API access)
- Cloudflare protection may require proxy (RESIDENTIAL recommended)
- Rate limiting applies - use delays for large-scale scraping
- Some channels may block automated access

### 💡 Pro Tips

#### Bypassing Cloudflare (403 Errors)

If you encounter 403 errors:

1. Enable proxy in run settings
2. Select RESIDENTIAL proxy group
3. Increase delay between requests

#### Optimizing Costs

- Filter by date range to reduce processed messages
- Disable unused output fields for faster processing
- Use lower memory allocation (1024 MB)
- Run during off-peak hours

#### Large-Scale Scraping

- Split channels across multiple runs
- Use webhooks for real-time processing
- Export to cloud storage (S3, Google Drive)
- Set up scheduled runs for monitoring

### 💰 Pricing

#### Pay Per Result

- $1.00 per 1,000 messages
- All features unlocked
- RESIDENTIAL proxy included
- Guaranteed delivery

### 🔄 Integrations

Works seamlessly with:

- Zapier - Automate workflows with 5,000+ apps
- Make.com - Build complex automation scenarios
- Google Sheets - Export directly to spreadsheets
- Webhooks - Real-time data delivery
- Slack - Get notifications in your workspace

### 🆘 Support

- GitHub: https://github.com/AlexSaite/telegram\_scrapper\_notoken
- Issues: https://github.com/AlexSaite/telegram\_scrapper\_notoken/issues

### 📄 License

MIT License - feel free to use in commercial projects.

### 🔑 Keywords

telegram scraper, telegram parser, channel scraper, message extractor, no api key, no token, public channels, web scraping, data extraction, osint, media monitoring, brand monitoring, market research, content analysis, social media scraping, telegram bot, telegram api alternative, free telegram scraper, telegram data extraction

# Actor input Schema

## `channels` (type: `array`):

Введите @username, URL, ID или ссылку из web.telegram.org. Примеры: @telegram, https://t.me/telegram, 1691104978, https://web.telegram.org/k/#-1949445241

## `maxMessages` (type: `integer`):

Ограничение по количеству последних постов для одного канала.

## `startDate` (type: `string`):

Собирать сообщения только новее этой даты. Формат: YYYY-MM-DD (например, 2024-01-15).

## `endDate` (type: `string`):

Собирать сообщения только старее этой даты. Формат: YYYY-MM-DD.

## `useProxy` (type: `boolean`):

Рекомендуется включить для обхода блокировок Cloudflare. Стоимость прокси включена в цену.

## `outputFields` (type: `array`):

Список полей для извлечения и сохранения в результатах.

## Actor input object example

```json
{
  "channels": [
    "@telegram",
    "https://t.me/breaking911"
  ],
  "maxMessages": 50,
  "useProxy": true,
  "outputFields": [
    "username",
    "fullName",
    "avatarUrl",
    "followers",
    "verified",
    "bio",
    "url",
    "message"
  ]
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "channels": [
        "@telegram",
        "https://t.me/breaking911"
    ],
    "maxMessages": 50,
    "useProxy": true,
    "outputFields": [
        "username",
        "fullName",
        "avatarUrl",
        "followers",
        "verified",
        "bio",
        "url",
        "message"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("alex_saite/telegram-public-channel-scraper-no-token").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "channels": [
        "@telegram",
        "https://t.me/breaking911",
    ],
    "maxMessages": 50,
    "useProxy": True,
    "outputFields": [
        "username",
        "fullName",
        "avatarUrl",
        "followers",
        "verified",
        "bio",
        "url",
        "message",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("alex_saite/telegram-public-channel-scraper-no-token").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "channels": [
    "@telegram",
    "https://t.me/breaking911"
  ],
  "maxMessages": 50,
  "useProxy": true,
  "outputFields": [
    "username",
    "fullName",
    "avatarUrl",
    "followers",
    "verified",
    "bio",
    "url",
    "message"
  ]
}' |
apify call alex_saite/telegram-public-channel-scraper-no-token --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,alex_saite/telegram-public-channel-scraper-no-token"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/1e1FdN6o0Yue6hMdj/builds/x8GYw3GQaoMs5BK5C/openapi.json
