Actor is under maintenance
This Actor may be unreliable while under maintenance. Would you like to try a similar Actor instead?

Telegram Scraper
- mtnfranke/telegram-scraper
- Modified
- Users 1.1k
- Runs 4k
- Created by
Martin Franke
Powerful Telegram scraper to extract data from Chats and Groups. Use it to scrape, filter, search, and backup all your message history. Download Telegram message data as a HTML, JSON, CSV, Excel, or XML doc.
What does the Telegram Scraper do?
The Telegram Scraper lets you extract and search in your personal chat history. This powerful unofficial Telegram API will give you Telegram message data at scale to be used in your own data projects, business reports, and as a basis for new applications.
How much will Telegram Scraper cost?
One run of the Telegram Scraper on the Apify platform will use approximately 0.02 compute units to get 1,000 results. This means that, on average, you can extract about 1,000 results for less than USD 0.05 in platform usage credits.
How to use extracted Telegram data
- Backup your own chat history.
- Find messages in your chat history with specific keywords.
- Engage with your customers through personal accounts instead of Bots.
- Collect survey data from respondents quickly and efficiently.
- Analyse trends and patterns.
How to scrape the Telegram chats
- Enter your Telegram Phone Number via the Input Fields
- Use the Live View to enter the Telegram Auth Code provided in the Telegram App
- Use the configured Live View to get your Chat IDs
-
Abort the current run or the scraper will automatically stop after 10 minutes
-
Configure the Chat IDs and Filters via the Input Fields
- Happy Scraping!
Results
The actor stores its results into the default dataset associated with the actor run. The data can be downloaded in machine-readable formats such as JSON, HTML, CSV or Excel.
Each item in the dataset will contain a separate tweet that follows this format:
{ "_": "message", "id": 12345678901, "sender_id": { "_": "messageSenderUser", "user_id": 123456789 }, "chat_id": -987654321, "is_outgoing": false, "is_pinned": false, "can_be_edited": false, "can_be_forwarded": true, "can_be_saved": true, "can_be_deleted_only_for_self": true, "can_be_deleted_for_all_users": true, "can_get_statistics": false, "can_get_message_thread": false, "can_get_viewers": false, "can_get_media_timestamp_links": false, "has_timestamped_media": false, "is_channel_post": false, "contains_unread_mention": false, "date": 1651159055, "edit_date": 0, "reply_in_chat_id": -987654321, "reply_to_message_id": 12345678902, "message_thread_id": 0, "ttl": 0, "ttl_expires_in": 0, "via_bot_user_id": 0, "author_signature": "", "media_album_id": "0", "restriction_reason": "", "content": { "_": "messageText", "text": { "_": "formattedText", "text": "It's dangerous to go alone! Take this. 🗡️", "entities": [] } }, "message_text": "It's dangerous to go alone! Take this. 🗡️", "sender_user_id": 123456789, "chat_name": "Overworld", "is_group_chat": true, "is_private_chat": false, "sender_user_name": "Sahasrahla", "language": "english", "keywords": [ "dangerous" ] }
Proxies
The Telegram Scraper works well with Apify dataset proxies, which are set as default for all our scrapers. However, if you've noticed your run has been stuck for too long, it's recommended to switch to residential proxies for faster, reliable, and more efficient results.
Personal data
You should be aware that your results might contain personal data. Personal data is protected by GDPR in the European Union and other laws and regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. You can read the basics of ethical web scraping in the Apify blog post on the legality of web scraping.
Your feedback
We will be adding more functionality soon, so feel free to contact us for any suggestions or improvements.