GitHub Followers and Following Export avatar

GitHub Followers and Following Export

Pricing

from $1.70 / 1,000 user rows

Go to Apify Store
GitHub Followers and Following Export

GitHub Followers and Following Export

Export the full followers and following lists of any public GitHub account as flat rows: login, name, company, location, bio, profile URL, and user ID. Reads past the page 100 point where the Next link ends, and reports whether each list was read to the end.

Pricing

from $1.70 / 1,000 user rows

Rating

0.0

(0)

Developer

Mamba Labs

Mamba Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Security

Limited permissions

Share

Give GitHub usernames and get their followers and following lists back as flat rows: one row per person, with login, name, company, location, bio, profile URL, and user ID. A free report per list states the count GitHub declares and whether the list was read to the end. Mamba Labs pays the platform and proxy costs; you pay per row returned.

Features

  • Reads past page 100. On GitHub's list pages the Next link stops at page 100, about 5,000 people, and the pages after it are still served. This actor keeps reading until a page is empty. A test run returned 5,200 unique rows past that point. In a page read of an account with 24,955 followers, page 500 held the last 5 rows and page 501 was empty, which matches the declared count exactly.
  • One report per list. list_report gives declared_count, rows_returned, pages_read, and list_complete, so you can see whether an export is whole. list_complete is true only when the actor reached the end.
  • Published profile fields with no extra requests. Name, company, location, and bio come from the list page itself.
  • Users and organizations. An organization has a followers list and no following list.
  • Cost guards. A maximum per list, a maximum charge per run, and the actor stops 90 seconds before the run's timeout and delivers what it has.

How the data is read

The actor reads the same public list pages a logged out visitor sees, through the Apify proxy, at one exit address and a steady pace of about 8 pages a minute. One request per list goes to the GitHub REST API for the declared count. No GitHub login is needed, and no other developer's actor is called. If GitHub answers 429, the actor waits for the time GitHub states, up to 120 seconds, up to 3 times, then stops that list and says so in its report. It does not switch to other addresses to keep going.

With your own github_token, the lists come from the GitHub REST API instead, at up to 5,000 requests an hour. Those rows carry login, user ID, profile URL, and avatar only, because the API list does not include the other fields. The token goes only to api.github.com, and it is never stored or logged. The token route was tested with fixtures and the refused token path; your own token is its first live test.

Input

FieldTypeDefaultWhat it does
usersarrayUsernames or profile URLs of public GitHub accounts, up to 100 a run. Clay users: wrap a column in a one item list.
liststringbothfollowers, following, or both (default).
max_results_per_liststring1000Rows to return per list, from 1 to 100000. Default 1000. Each row is charged. Large lists also need a longer run timeout: about 400 rows a minute.
github_tokenstringOptional. Your own GitHub token reads through the REST API at up to 5,000 requests an hour, with login, user ID, and avatar only: no name, company, location, or bio. Never stored or logged.
max_charge_usdstringOptional. The run stops before a charge that would pass this amount. Summary rows are always returned.

Give at least one username. max_results_per_list takes a number as text, which is what Clay sends.

Output

FieldTypeWhat it holds
row_typestringOne of: user, list_report, run_summary. run_summary is the one free row written when the input is refused.
target_userstringThe account whose list this row belongs to.
list_typestringfollowers or following.
loginstringuser: the GitHub username of this follower or followed account.
namestringuser: the display name the account published. Empty on a github_token run.
companystringuser: the company the account published. Empty on a github_token run.
locationstringuser: the location the account published. Empty on a github_token run.
biostringuser: the bio the account published. Empty on a github_token run.
profile_urlstringuser: the account page.
avatar_urlstringuser: the profile image.
user_idintegeruser: the numeric GitHub account ID.
positionintegeruser: place in the list as read, starting at 1.
declared_countintegerlist_report: the count GitHub states for this list. Empty when that read was refused.
rows_returnedintegerlist_report: user rows returned for this list.
pages_readintegerlist_report: list pages read.
list_completebooleanlist_report: true only when the actor read to the end of the list.
read_routestringlist_report: github_list_pages, or github_rest_api on a github_token run.
row_statusstringok, or why this row carries no data: no_results, no_change, partial, blocked, or error.
error_reasonstringWhy the row is not ok. A refused input reads input_invalid: followed by what to fix.
billable_events_jsonstringWhat this row was billed as, for example {"user-row":1}. {} means free.
scraped_atstringWhen the row was written, UTC.

Pricing

Pay per event. You pay for each user row and for the run start. A list_report row, a user with no public account, and a refused input are free. A list with 25,000 followers costs about 50 USD at this price, so set max_results_per_list or max_charge_usd before you run a large account.

EventFree planBronzeSilverGold
user-row, one follower or followed account returned$0.002$0.0019$0.0018$0.0017
apify-actor-start, once per run (one per GB of memory; the default 256 MB is one)$0.0015$0.0015$0.0015$0.0015

Per 1,000 rows of user-row: $2.00 on the free plan, $1.70 on Gold.

Free plan cap: 1.50 USD of evaluation a month, about 750 rows. Any paid Apify plan removes the cap, and it resets on the 1st. The run stops before a charge that passes your maximum charge per run in Apify or your max_charge_usd input.

Mamba Labs pays the platform costs of your run, Apify proxy traffic included.

Usage examples

Apify Console or API.

{
"users": ["sindresorhus"],
"list": "following",
"max_results_per_list": "20"
}

Clay. Number inputs are text fields, which is what Clay sends. A list input takes a JSON list, so put the column inside a one item list.

MCP. The Mamba Labs MCP server @mambalabsdev/mcp-github-followers-following-export exposes this actor to Claude and other MCP clients.

Error handling

CaseWhat you get
Missing or unreadable inputOne free row, row_type run_summary, error_reason starting input_invalid: with what to fix. The run ends successfully and charges nothing but the run start
A username with no public accountOne free list_report row with row_status no_results and error_reason starting not_found:. The next user runs
GitHub rate limits the runThe rows read so far, and a free list_report with error_reason rate_limited and list_complete false
GitHub refuses your tokenOne free list_report per list, with error_reason starting token_refused:
The run is close to its timeoutThe actor stops starting new work 90 seconds before the timeout and delivers what it has

Limitations

  • About 400 rows a minute without a token, measured at 5,200 rows in 755 seconds. A list of 25,000 needs a run timeout of about 70 minutes, so raise the timeout for a large list.
  • No email addresses. The actor reads list pages, which do not show email, and it does not open each profile.
  • Rows carry only what each account chose to publish. A person can change or remove these fields at any time.
  • declared_count is empty when GitHub refuses that one REST read, which allows 60 reads an hour per address. The list is still read.
  • A list can change during a long run. The actor removes repeats between neighboring pages, and declared_count is read at the start of the list, so the final count can differ slightly.
  • On the Apify free plan the actor stops at 1.50 USD of charges a month, about 750 rows. Any paid Apify plan removes the cap.
  • GitHub's Acceptable Use Policies restrict automated collection and forbid using GitHub information for spam, including unsolicited email and selling personal information to recruiters, headhunters, and job boards. You are responsible for how you use this data.

Mamba Labs actor suite

ActorActor ID
Account Hiring WatchgRAZA5WBi1r6L0gy7
Agent Accessibility AuditoranxbRv0lKrpQ1pnua
Agent to Brokerage ResolverePRRGLxOGyaVHO4dI
AI Answer Visibility TrackerRJZvzKniYK4nswcMg
AI Tooling DetectorEwkHhmqiuJgRoVEbE
Amazon Product, Price, and Stock TrackerMtJPZoyjJ3IeqTFyo
API Deprecation and Breaking Change MonitorpHsbS3xXUK8Jqutz5
App Store and Google Play Review MonitorMaCMEhGrbchxQZ92G
B2B Reddit Conversation MonitorSoDryzzsjmY3SsiyG
Bluesky Brand Presence MappereLpxzP4IuXznlFVND
Brand Sponsor FinderPPgK6xrgOmvL7Nrys
Bulk WHOIS and RDAP Domain Age LookupMTrkG5FLU6SjqLdJY
Career Change Signal EnginevX2Yga1a6wGaXaP14
Company Careers Page Jobs, 17 ATS BoardsizP0rfIgf5YaRZfIh
Company Change Event FeedoX44rS0fkEJ3rXLWe
Company Discovery List Builderjch0HdaZnpbMqlcGS
Company Firmographic EnricherYlUtLWjfPpqykmB8g
Company Funding RecordOFS4Mt1gyYNtGfUbE
Company Headcount EstimatoraHC4GROnNt6kfZe5r
Company Identity Resolverlr8fTRAmZCBZmuwwh
Company Role Email, Phone and Address Finder4mMncKaJykiq94grz
Company Social Presence Mapper4k6CCemkgBDz18m2h
Competitor Price, Stock, and Changelog MonitoryxdgCbUQ4PYQWwRNU
Contact Classifier0lGSeYJmniXhGANnO
Contractor License Search, CA, TX, WA, OR, LAWBYK3CPI2kdeq4bP1
CRM Contact Job Change CheckerL8UbEmMJC1XYPSZOb
Domain Deliverability Checker0tVgxI7A6o9jMlxmc
Domain to LinkedIn URL Resolver3HtnSaqPHOg1Qg5gx
Ecommerce Platform Profiler5G2NeYjBbQTjaTn9L
Ecommerce Store DiscoveryPeHu4sLyFvQHXUUrX
Email List Verifier, Bring Your Own KeyCzVJ4NlaCKk80xpgE
Event Presence IndexWLhMy8fMDgsxdYxv5
Expert Witness Finder, US and AustraliaLIpwlgfE3LaQBaXd4
Funding and Press Signal ScannerFS13X6dhQVgX3XOM6
GDPR Cookie Banner and Consent CheckerTrKyOS0KBoGC35nbr
GitHub Followers and Following ExportSGNxDmFb9v3tRDaFI
GitHub Organization Signal ScannerahF8RRpv5mzPao5CN
Google Ads Transparency Center Scraper by Domain1eOwxhBVxzvOXAm4s
Google Trends ScraperOeDzaACKmBYJXzHZk
GTM Hiring Signal ScraperD7O1SA2EqwHGsGr1P
GTM Signals AggregatorxKdRfnfFNkdMpFuNs
Healthcare Provider NPI EnricherMrgbHzcpDq3mOv9Df
ICP Fit ScorerW161DT8W4kW55dMFh
Influencer Change Monitord2VVgahNL6UmcLkhg
Influencer Lead List BuilderKnmByszcv135yM30G
Influencer Profile ScraperEqEnklDVMIcB1V499
Influencer Search Across TikTok, Instagram and YouTubetpkedmloIIWtXx6sg
Influencer Talent Agency LookupzCuX4Mgyg6JvXgGzd
Instagram Facebook Brand Presence MapperHXh65I0JBjPsunbY8
Integration and Marketplace Presence MapperV0guNuvM85Q61f2gj
Job Board Keyword Signal Scanner4DvqpvhMR74NLcDDY
Job Posting MonitorQCfICD9kOPiOdj5iI
Journalist and Media List BuildermAfizsZC8qRoR0ecS
Launch Directory List BuildercRq3bmvEZxZtioQ7U
Lead File Import CheckerRwlGVXTf46LqZdUgt
Legal Entity ResolverKHFyPCDIx7CyqULYm
Link in Bio Scraper and Newsletter DetectorOorucdheTIgu7RFzK
LinkedIn Company Page MapperzOPm6A9JEhUGcIdFW
LinkedIn Jobs FeedSH6N0d8cz46BhCC8B
LinkedIn Post TrackeroiGLNPuaf5BRaz9K5
Local Business Lead BuilderqMN97aoHhsAS5bznV
Local Rank and Map Pack Trackergv0kyHGDIg8XscclB
Lookalike Companies from Seed Domainse2O426WBAbLLQL4Z2
Manufacturer and Supplier FinderQcsdmd0lUfPzVkonh
MCP Server Change and Health MonitorIeqjWF9U0BdDQFY08
Media URL TranscriberSyfr7Ya3EsHgWfrB6
Meta Ad Library Ads by Company, Graph APIJ1GWlSXfSGU3u8Wng
Mobile Phone Waterfall6OOgPktf7RIa5XCOP
New Hire FindercKuc38p4nYHNF3IW8
Newly Registered Companies, UK, Norway, Finland, Franceg2WfZhWvCtc57g2Jo
News and Media Mention Monitorgol1PPUKrsIk4QLBd
Newsletter Sponsor TrackerqSwpqxD1TiPZpLQHv
Open Tender and RFP FinderkPTGz6t6TFoUUyfaO
Outbound Stack Detectorv43UJC8r7qW7cBSTG
Page Finder and ExtractorTpurgcOZbVnknlaiC
Partner and Member Directory ExtractorZX0XJPPUvnFJxeC1a
People Finder & Email VerifierLEgloG7tWgQl4o6TD
Person LinkedIn URL ResolverssuyPV8LnEsL8qbnb
Person Social Footprint MapperjfQXa2zW9FHCJot9K
Personal Email to Company ResolverAefT5Ye6YNPFQwJBf
Pinterest Brand Presence Mapperd1HvjZfKhgvWsoEwn
Podcast Guest and Host Findero2MGSvgbSLeeXOsIo
Product Hunt Daily Launches with Maker DomainsO4VX63drWK9Y9x641
Prospect Engineq9rT6v64nUJdPexOQ
Public Feature Board and Roadmap MonitorrcHF5gj5r2Vqnry35
Publishing Frequency TrackerTbLwaUUATdYb6wp4N
Recent Funding Rounds FeedKueVp9MOz7iOoAgDp
Reddit Brand Presence MapperpKQZmDaT70SEb54bZ
Reddit Search and Thread Scraper4Gsth5cP2Xt9V2xDN
Reporting Window FinderuINxR7a1IW8qUTRUX
Research Topic Institutions and AuthorsOH8ANqt7bCKbo72Gk
Sequencer Event PollerS6s8Rjd61tGdrMRk4
Sequencer Lead Push0Jv27VeWM5tSZQs9x
Shopify App Store and Chrome Web Store ListingsgaY0BzkLyN77mD3wI
Site Crawler for Links and TableslLLJ6JxZ4XqN8ULz0
Substack Newsletter and Posts ScraperUEFsdwiPLmPNVy9xd
Team Page People Extractorj8a9zX0k4mNbvDbWK
Tech Stack Signal Detectorqyd7nNyqFPelQViBx
Threads Posts by Keyword, Exact Match2OT8K8RiEEWtaj2MW
TikTok Brand Presence Mapperfco8FvoJcSafbeyd1
Trustpilot Reputation Enricher3lIqfCt61j4hqE1xz
US and UK Contract Award Winners by CompanyzhEtllASykOcx9hJ8
US Import Records Buyer FinderVIMafpKF5ggOw0COU
VC and Accelerator Portfolio List BuilderchH8hrfuoqqolW06m
Website Accessibility Checker, WCAG 2.2 AAP3jBj3FRghKEhX52z
Website Phrase and Business Model ClassifierCBuZ9k7sRwBeiKiCS
Website Traffic Rank EstimatorGnOFUzlNVIoXgeJjH
Work Email WaterfallOT6xqTFThC0Rjf7Zj
Workplace Program DetectorLi6pPDhqbdzFz3h7G
X Brand Presence MapperoLOgadhHUkNAyDA3w
YouTube Channel from Company Domain6hSpD3kd2s2IQ4VSs
Zillow Listing DetailsyG4zM0Enfsw2NefJ1

Built by Mamba Labs.