Telegram member scraper for public groups, returning 23-field profiles from the visible participant list and optional message-author discovery. Export IDs, usernames, names, public flags, presence, bot facts, discovery path, and source-group context.
At a glance
| Store brand | AgentX โ apify.com/agentx |
|---|---|
| Pricing model | pay per event |
| Price per result row | $0.0008 on the Free plan |
| 1,000 rows (Free plan) | $0.81 |
| 1,000 rows (Gold plan) | $0.61 |
| Default / max memory | 128 MB / 256 MB |
| Run timeout | 12 h |
| Public runs, last 30 days | 480 ยท 97.3% succeeded |
| Users | 49 in 30 days ยท 1,266 all time |
| First published | August 9, 2025 |
| Last build | 1.0.14 on August 19, 2026 |
What you have to give it
3 of the 3 input fields are required; the rest have defaults and can be left out.
| Field | Type | Required | Accepted values | What it does |
|---|---|---|---|---|
deep_search | boolean | yes | true | Also collect members from the people who posted in the group. Telegram hides the participant list on most groups, so without this a run returns only the few dozen members the group still exposes. Leave it on unless you specifically want just that visible list. |
max_results | integer (profiles) | yes | 1 | Members to return, minimum 1. Telegram hides the participant list on most groups, so the visible list alone returns only a few dozen people however large the group is โ measured at 22 of 5,396 and 38 of 26,305. Turn on Deep Search to read members from the group's message history, which is what reaches larger numbers: measured at 5 to 10 members per second, depending on how many distinct people pos |
telegram_url | string | yes | https://t.me/DatascienceChats | Public Telegram group as a username, @username, t.me username URL, or telegram.me username URL. Invite, joinchat, plus-style, private, and non-Telegram links are rejected. |
A run that works
The values below are the Actor's own prefills, so this input is valid as written:
{
"deep_search": true,
"max_results": 1,
"telegram_url": "https://t.me/DatascienceChats"
} What comes back
Every dataset row carries the 23 fields below. The examples are the ones declared in the Actor's own output schema.
| Field | Type | Example | Meaning |
|---|---|---|---|
group_id | integer | null | 1013954462 | Telegram numeric identifier of the source group. |
group_username | string | null | DatascienceChats | Public handle of the source group without @. |
group_title | string | null | Data Science, ML & AI Chats | Display title of the source group. |
group_member_count | integer | null | 13867 | Member count Telegram reported for the source group. |
group_members_hidden | boolean | null | true | Whether Telegram marks the source group's participant list as hidden. |
found_in | string | null | messages | Discovery path: participants for the visible list or messages for a message author. |
id | integer | null | 1036017898 | Telegram numeric identifier of the account. |
username | string | null | telegram_user | Canonical active public handle without @. |
usernames | array | null | telegram_user | All active public handles in Telegram source order. |
source_url | string | null | https://t.me/telegram_user | Public t.me profile URL when the account has a username. |
first_name | string | null | Alex | First name on the account. |
last_name | string | null | Morgan | Last name on the account when present. |
type | string | null | user | Account kind: user or bot. |
has_photo | boolean | null | true | Whether Telegram returned a profile photo reference. |
flags | array | null | premium | Public account states such as verified, premium, deleted, restricted, scam, fake, or support. |
restrictions | array | null | [object Object] | Telegram restriction reasons with platform, reason, and public text when present. |
last_seen | string | null | recently | Presence as an ISO timestamp or Telegram's online, recently, last_week, last_month, or offline state. |
colors | object | null | {"name":{"color":5}} | Public name and profile color metadata supplied by Telegram. |
emoji_status | object | null | {"document_id":123456789} | Public emoji-status identifiers, collectible metadata, colors, and expiry when present. |
monetization | object | null | {"send_paid_messages_stars":10} | Public paid-message requirement reported for the account. |
bot_info | object | null | {"active_users":2500,"features":["main_app"]} | Public bot audience and capability details when the account is a bot. |
processor | string | null | https://apify.com/username/actor_name | Apify actor URL that processed this record |
processed_at | string | null | 2026-08-10T12:00:00+00:00 | UTC timestamp when this record was processed |
What it costs
| Charged event | Price | When |
|---|---|---|
| Actor Start | $0.01 | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). |
| Result | $0.0008 โ $0.0006 | Single result in the default dataset. |
Per 1,000 rows, by Apify plan
| Plan | Per row | 1,000 rows | 10,000 rows |
|---|---|---|---|
| Free | $0.0008 | $0.81 | $8.01 |
| Bronze | $0.00072 | $0.73 | $7.21 |
| Silver | $0.00064 | $0.65 | $6.41 |
| Gold | $0.0006 | $0.61 | $6.01 |
| Platinum | $0.0006 | $0.61 | $6.01 |
| Diamond | $0.0006 | $0.61 | $6.01 |
Every total includes the $0.01 start fee once. Apify charges that fee per gigabyte of memory, so a 128 MB run pays it a single time.
When not to use it
- Memory is capped at 256 MB, so a very large job should be split into several narrower runs rather than scaled up.
- The dataset carries 23 fields and nothing else; if your analysis needs a field that is not in the table above, no input setting will add it.
- It reads what is public at run time. There is no archive behind it, so a question about last quarter has to be answered from data you already collected.
Closest Actors in the catalog
Same categories, ordered by how many people run them. Compare the field tables before choosing.
| Actor | Brand | Fields | 1k rows (Free) | Users / 30 d |
|---|---|---|---|---|
| SubReddit Info Scraper โ | AgentX | 67 | $20.01 | 3 |
| Subreddit Posts Scraper โ | AgentX | 53 | $4.01 | 2 |
| Subreddit Members Scraper โ | AgentX | 25 | $5.01 | 2 |
| Reddit Profile Scraper โ | AgentX | 33 | $30.01 | 2 |
| Instagram Creator Scraper โ | AgentX | 39 | $2.51 | 1 |
| All Jobs Scraper (39 Sites) | AgentX | 41 | $3.51 | 260 |
Field guides that use this data
- Telegram Community Research: Members, Chats, and Public Group Signals โ A responsible workflow for Telegram community research using public or legitimately accessible member, chat, and group information with source evidence and scope controls.
- Reddit Research APIs Compared: Community, Posts, People, or Search โ Reddit exposes four distinct research surfaces โ community profile, post feeds, people, and keyword search. Which one answers which question, with field counts.
- How to Build a Creator Outreach List from Public Data โ A repeatable pipeline for influencer and creator outreach: discovering creators by niche, enriching profiles across YouTube, Instagram, and TikTok, and extracting published business contacts responsibly.
Prove it on a narrow run
Open the live contract.
Pricing, availability and schema can change between snapshots. The Apify Actor page is the current source of truth.
Catalog snapshot 2026-09-04; Actor contract, pricing and run statistics read 2026-09-04.