Discord Member Scraper
2 hours trial then $18.00/month - No credit card required now
This Actor may be unreliable while under maintenance. Would you like to try a similar Actor instead?
See alternative ActorsDiscord Member Scraper
2 hours trial then $18.00/month - No credit card required now
Get a list of all members in a Discord server, with detailed profile information such as social media profiles, name, bio & avatar. Perfect for analytics, lead generation, and community insights. Efficient, reliable, and up-to-date.
Get a list of all members in a Discord server, including detailed user profile information. This is the most complete & easiest way to get a list of all members in a server.
✨ Features
- Complete Member Data: Extract detailed member information including:
- User profiles and IDs
- Role assignments
- Connected (social media) accounts
- Premium status
- User avatars and banners
- Multiple Collection Methods: Uses three different approaches to maximize member discovery:
- Member list collection
- Role-based collection
- Message history analysis
- Clean JSON Output: Results in easily parseable JSON format
💡 Use Cases
- Lead Generation: Get a list of all members in a server with social media handles
- Server Analytics: Track member composition and roles
- Community Insights: Analyze member profiles and engagement
- Role Distribution: Understand how roles are assigned across members
- Member Discovery: Comprehensive member list extraction
- Profile Analysis: Get detailed member profile information
📊 Output Format
The scraper provides detailed member data in JSON format with the following fields:
user
: Discord user profile informationid
: User IDusername
: Username handleglobal_name
: Global name, display nameavatar
: Avatar URL segement, complete image URL:https://cdn.discordapp.com/avatars/{user.id}/{user.avatar}
avatar_decoration_data
: Avatar decoration datadiscriminator
: Discriminatorpublic_flags
: Public flagsprimary_guild
: Primary guildclan
: Clanflags
: Flagsbanner
: Banner URLbanner_color
: Banner coloraccent_color
: Accent colorbio
: Bio
connected_accounts
: Connected (social media) accountspremium_since
: Premium statuspremium_type
: Premium typepremium_guild_since
: Premium server sinceprofile_themes_experiment_bucket
: Profile themes experiment bucketuser_profile
: User profile informationbadges
: Badgesguild_badges
: Server badgesmutual_guilds
: Mutual serverslegacy_username
: Legacy username
1{ 2 "user": { 3 "id": "636370983460274219", 4 "username": "sauain", 5 "global_name": "Saurav Jain", 6 "avatar": "6a6cb07c7deaace0278061593f8979c0", 7 "avatar_decoration_data": null, 8 "discriminator": "0", 9 "public_flags": 64, 10 "primary_guild": null, 11 "clan": null, 12 "flags": 64, 13 "banner": null, 14 "banner_color": null, 15 "accent_color": null, 16 "bio": "23 yo, Male, Indian \n\nDeveloper Community Manager" 17 }, 18 "connected_accounts": [ 19 { 20 "type": "spotify", 21 "id": "31mqywy6cbgugrspa4oskq75an2u", 22 "name": "Saurav Jain", 23 "verified": true 24 }, 25 { 26 "type": "twitter", 27 "id": "1401210504354304000", 28 "name": "Sauain", 29 "verified": true 30 }, 31 { 32 "type": "youtube", 33 "id": "UCSHZW0jTfvy9uKiFZgPa3XA", 34 "name": "Saurav Jain", 35 "verified": true 36 } 37 ], 38 "premium_since": null, 39 "premium_type": 0, 40 "premium_guild_since": null, 41 "profile_themes_experiment_bucket": 4, 42 "user_profile": { 43 "bio": "23 yo, Male, Indian \n\nDeveloper Community Manager", 44 "accent_color": null, 45 "pronouns": "he/him" 46 }, 47 "badges": [ 48 { 49 "id": "hypesquad_house_1", 50 "description": "HypeSquad Bravery", 51 "icon": "8a88d63823d8a71cd5e390baa45efa02", 52 "link": "https://discord.com/settings/hypesquad-online" 53 }, 54 { 55 "id": "legacy_username", 56 "description": "Originally known as sauain#0354", 57 "icon": "6de6d34650760ba5551a79732e98ed60" 58 } 59 ], 60 "guild_badges": [], 61 "mutual_guilds": [ 62 { 63 "id": "801163717915574323", 64 "nick": null 65 } 66 ], 67 "legacy_username": "sauain#0354" 68}
🛠️ Configuration Options
Parameter | Type | Description |
---|---|---|
serverIds | Array | Array of Discord server IDs to scrape |
authToken | String | Your Discord authorization token (required) |
maxMessagesPerChannel | Integer | Optional limit on messages to scan per channel for member discovery |
The scraper automatically handles:
- Rate limiting
- Multiple collection methods
- Permission checking
- Retries on failure
🔑 Obtaining Your Discord Authentication Token
In order for the scraper to work, you need to obtain your Discord authentication token. There are three possible ways to get it: through the Network section of the browser's Developer Tools, by pasting some JavaScript code in the browser console or through a browser extension. All three methods are described below.
The token looks something like this:
MTk4NjI0MzY5ODc1NDMyOTYw.HjKL9_.QWxZcVBnTmFsUHFaWXhDdkJyTnE2RHNqS3M0-8
Javascript Browser Console
- Go to Discord and make sure you are logged in: https://discord.com/channels/@me
- Open Developer Tools by one of these three methods:
- Press 'F12' on your keyboard
- Press 'Ctrl + Shift + I' on your keyboard (Cmd + Shift + I on Mac)
- Press '...' in the top right corner of the browser and select 'More tools' -> 'Developer tools'
- Go to the 'Console' tab
- Paste the following code:
webpackChunkdiscord_app.push([[Symbol()],{},e=>{t=Object.values(e.c).find(x=>x?.exports?.default?.getToken)?.exports?.default?.getToken();console.log(t);copy(t);}]);
- Press 'Enter'
- The token will be automatically copied to your clipboard and also printed in the console
Browser Extension Method
These are third party extensions that will get you the token. We are not affiliated with them.
Developer Tools: Network Tab
- Go to Discord and make sure you are logged in: https://discord.com/channels/@me
- Open Developer Tools by one of these three methods:
- Press 'F12' on your keyboard
- Press 'Ctrl + Shift + I' on your keyboard (Cmd + Shift + I on Mac)
- Press '...' in the top right corner of the browser and select 'More tools' -> 'Developer tools'
- Go to the 'Network' tab
- Click on the 'Fetch/XHR' tab
- Refresh the page
- Look for a request with the name '@me'
- Find the 'Authorization' header in the 'Request Headers' section
- Copy the token value associated with 'Authorization'
🚀 Getting Started
- Obtain your Discord authentication token
- Gather the channel URLs you want to scrape
- Run the actor and receive your data in JSON or CSV format
📈 Benefits
- Efficiently extract member information from large servers
- Get structured, analyzable member data
- Track server growth and composition
- Generate insights about your community
⚙️ Workings
As there is no way to get a list of all members in a server. We use a combination of methods to get as a complete list of members as possible. All other scrapers rely at most on one of these methods and are thus a lot less complete.
- Member List Connection: Uses Discord's Web Socket Gateway to extract an extensive initial list of members.
- Role-Based Collection: We go through each role in the server and extract up to a 100 members from eachrole.
- Message Analysis: Scans message history on all public text channels to find authors and users mentioned in the messages.
The scraper respects Discord's rate limits and includes automatic retries for failed requests. All data is processed and returned in a clean, structured JSON format that preserves complete member information including profiles, roles, and connected accounts.
🔒 Privacy & Compliance
- Only accesses servers you have permission to view
- Requires valid Discord authentication
- Respects Discord's rate limits
- Collected data is only accessible to you
💪 Why Choose This Scraper?
- Comprehensive: Uses multiple methods to maximize member discovery
- Efficient: Optimized to handle large servers
- Detailed: Captures complete member profiles and metadata
- Reliable: Built on Apify's robust infrastructure
- Up-to-date: Maintained and updated regularly
Ready to analyze your Discord server members? Start scraping now! 🚀
Actor Metrics
1 monthly user
-
1 star
Created in Jan 2025
Modified 2 days ago