X (Twitter) List Scraper — Members & Tweets
Pricing
from $5.00 / 1,000 x list member founds
X (Twitter) List Scraper — Members & Tweets
Scrape X (Twitter) List members and timeline tweets by List URL or ID. Members include username, bio, followers and verification; tweets include text, likes, media and hashtags.
Pricing
from $5.00 / 1,000 x list member founds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
3
Monthly active users
8 hours ago
Last modified
Categories
Share
X (Twitter) List Scraper - Members and Tweets
This Apify Actor helps analysts, growth teams, and automation workflows collect data from public X/Twitter Lists by List URL or numeric List ID. It accepts one or more list identifiers and can return one record per list, member, or tweet depending on the selected mode. The most useful fields are list metadata, member profile fields like username, bio, followers, and verification status, and tweet fields like text, author handle, engagement counts, media-related content signals, and timestamps. The outcome is structured dataset output ready for review, export, or downstream automation, and the Actor is also usable through Apify MCP.
Best fit and connected workflows
Use this Actor when you want a list-centered view of X activity with a single input that can branch into member discovery, tweet collection, or both.
Good fits
- Public list monitoring for a named topic, company, or community
- Lead discovery from curated list rosters
- Audience research from list member profiles
- Timeline review from a list's latest tweets
- Agentic workflows that need Apify MCP-compatible structured output
Focused standalone workflow
X (Twitter) List Scraper - Members and Tweets is designed as a focused standalone workflow.
Practical scenario
A marketing analyst receives a public X List URL from a colleague who tracks journalists in a niche beat. The analyst runs this Actor in members mode with that list URL and receives rows that include usernames, bios, follower counts, verification status, and profile URLs. After reviewing the roster, the analyst exports the dataset and uses the profile URLs to open a manual outreach and monitoring workflow in their CRM.
Input
The Actor requires at least one public X List URL or numeric List ID. You can choose what to collect, set per-list caps, filter retweets from tweet output, and include raw response data for debugging.
| Field | Type | Required | Description |
|---|---|---|---|
lists | array of string | Yes | One or more X/Twitter List URLs or numeric List IDs. Public lists only. |
mode | string | No | Choose both, members, or tweets. Default: both. |
auth_token | string | No | X.com auth_token cookie value for browser-based member roster extraction. |
ct0 | string | No | X.com ct0 CSRF cookie value used together with auth_token in browser mode. |
maxMembersPerList | integer | No | Maximum members to collect per list. Range: 1 to 1000. Default: 100. |
maxTweetsPerList | integer | No | Maximum tweets to collect per list timeline. Range: 1 to 500. Default: 50. |
excludeRetweets | boolean | No | When enabled, retweets are skipped from tweet output. Default: false. |
includeRaw | boolean | No | When enabled, raw X.com GraphQL response data is added to each row for debugging. Default: false. |
Focused input example
{"lists": ["https://x.com/i/lists/1130857490764091392"],"mode": "both","maxMembersPerList": 100,"maxTweetsPerList": 50,"excludeRetweets": false,"includeRaw": false}
Output
The dataset can contain three record types: lists, members, and tweets. The actor output object also exposes dataset and key-value store references for downstream access.
| Field | Type | Description |
|---|---|---|
recordType | string | Record category such as list, member, or tweet. |
listId | string | X List identifier associated with the record. |
username | string | Member username in member rows. |
name | string | Display name in member or list rows. |
bio | string | Member bio text. |
location | string | Member location text when available. |
followersCount | integer | Follower count for a member row. |
followingCount | integer | Following count for a member row. |
tweetCount | integer | Tweet count for a member row. |
isBlueVerified | boolean | Verification indicator in member rows. |
profileUrl | string | Member profile URL. |
tweetId | string | Tweet identifier in tweet rows. |
authorHandle | string | Tweet author handle. |
text | string | Tweet text content. |
likeCount | integer | Like count for a tweet. |
retweetCount | integer | Retweet count for a tweet. |
replyCount | integer | Reply count for a tweet. |
viewCount | integer | View count for a tweet when available. |
createdAt | string | Tweet creation timestamp. |
tweetUrl | string | Tweet URL. |
name | string | List name in list rows. |
description | string | List description in list rows. |
memberCount | integer | Member count in list rows. |
subscriberCount | integer | Subscriber count in list rows. |
ownerHandle | string | List owner handle. |
listUrl | string | List URL. |
scrapedAt | string | Collection timestamp. |
Illustrative output record
{"recordType": "member","listId": "1130857490764091392","username": "exampleuser","name": "Example User","bio": "Example bio text","location": "Example location","followersCount": 12345,"followingCount": 678,"tweetCount": 910,"isBlueVerified": true,"profileUrl": "https://x.com/exampleuser","scrapedAt": "2026-08-19T12:00:00.000Z"}
How it works
This Actor uses a Playwright browser intercept workflow and provider-backed enrichment. For member discovery, it can use browser mode with X cookies, and it can also enrich profiles by handle through ScrapeCreators and SociaVault when browser member extraction is not used. For tweets, it collects timeline data from the selected list and writes structured records to the dataset. The built-in dataset views separate members, tweets, and lists for easier review.
Pricing
X (Twitter) List Scraper - Members and Tweets uses Pay per event pricing on the Apify platform. Charges are applied for the Actor start event, each member found, and each tweet scraped. Platform usage such as compute and storage also follows the standard Apify platform model. For the current pricing and live event details, open the Pricing tab on the Apify Store page for this Actor.
A simple event example written in words: if a run starts, collects twenty members, and scrapes ten tweets, the billed events include one Actor start event, twenty member-found events, and ten tweet-scraped events, plus any Apify platform usage associated with the run.
Use with AI agents (MCP)
This Actor is an Apify Actor usable through Apify MCP. The tool exposes structured access to public X List members and timeline tweets, which makes it suitable for agent workflows that need a clear list input and dataset-backed output.
The exact Actor identity is khadinakbar/x-list-scraper.
Scrape this public X List by URL, collect both members and tweets, and return the dataset items in a compact structure. Use
mode: "both"and keep the per-list caps moderate.
The output is easiest to interpret as three record families: list metadata rows, member profile rows, and tweet rows. Provenance comes from the selected list input and the resulting Apify dataset rows. Scope is limited to public lists supplied in the input, with optional caps for member and tweet collection. Pagination is handled by the Actor internally, and cost scales with the number of billed events produced by member and tweet records.
Apify API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/x-list-scraper').call({lists: ['https://x.com/i/lists/1130857490764091392'],mode: 'both',maxMembersPerList: 100,maxTweetsPerList: 50,excludeRetweets: false,includeRaw: false,});const dataset = await client.dataset(run.defaultDatasetId).listItems();console.log(dataset.items);
Best results and outcome guidance
Use a public list URL or numeric ID that clearly matches the audience you want to analyze. Choose members when the roster matters most, tweets when you want timeline activity, and both when you need a full list view. Set caps that match the size of the list and the depth of review you need. If you want cleaner tweet output, enable excludeRetweets. If you are troubleshooting field mapping or provider responses, enable includeRaw for one run and inspect the dataset rows.
Focused standalone workflow
X (Twitter) List Scraper - Members and Tweets is designed as a focused standalone workflow for the public input and structured output contract described above.
Design note
I found that the dataset schema cleanly separates the transformed views for members, tweets, and lists, with each view using a distinct field set. That made it straightforward to describe the output as three record families rather than one mixed table.
FAQ
Can I use this Actor with a list URL or only a numeric ID?
You can use either a public X List URL or a numeric List ID.
What content can I collect from a list?
You can collect list members, list timeline tweets, or both, depending on the mode input.
Can I collect members without browser cookies?
The input contract supports browser-based member roster extraction with auth_token and ct0. The contract also describes provider-backed enrichment by handle as part of the implementation.
Is this useful for MCP-based workflows?
Yes. The Actor is MCP-ready and is designed to be used through Apify MCP with structured dataset output.
How are charges applied?
Charges follow the Actor's Pay per event contract. See the live Pricing tab for the current event details and platform usage information.
Responsible use
X and Twitter is a trademark of its owner. This independent Actor is not affiliated with, associated with, or endorsed by X and Twitter.
Use this Actor in ways that respect the source platform, your account context, and applicable law. Public-list collection should be matched to the permissions and obligations that apply to your workflow.