GitHub Email & Lead Enricher — Devs to CRM Leads | Official API avatar

GitHub Email & Lead Enricher — Devs to CRM Leads | Official API

Pricing

from $4.75 / 1,000 github leads

Go to Apify Store
GitHub Email & Lead Enricher — Devs to CRM Leads | Official API

GitHub Email & Lead Enricher — Devs to CRM Leads | Official API

Enrich GitHub user profiles into lead records with email, company, location, socials, metrics, and confidence. Run with usernames, orgs, repos, or search queries; add an optional token. Pricing: $0.0049 per github-lead event on the Free plan.

Pricing

from $4.75 / 1,000 github leads

Rating

0.0

(0)

Developer

Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

35

Total users

6

Monthly active users

4 days ago

Last modified

Features

Limited permissions

Share

GitHub Email & Lead Enricher

Extract public GitHub developer profiles through the official GitHub REST API and turn them into lead records with email, company, location, socials, metrics, and confidence. No buyer key or login is required.

  • Build recruiting lists from usernames, public organization members, repository contributors, or user-search matches.
  • Enrich sales and CRM records with company, location, bio, socials, hireable status, and public metrics.
  • Source developers behind an open-source project from owner/repo contributor inputs.
  • Recover public emails from profiles or public commits when available, with the source on each row.

What you get

Each returned person is an enriched developer lead; organizations are not returned.

Field familyFieldsWhat it contains
Identitytype, login, name, html_urlAccount type, login, display name, and profile URL. Leads use type: "user".
Emailemail, email_sourceProfile or public-commit email. Source is profile, commit, or none.
Profile contextcompany, location, bio, blog, twitter_usernameCompany, location, biography, website, and social context; missing values can be null.
Work signalhireableGitHub’s open-to-work signal as Boolean or null.
Public metricsfollowers, following, public_repos, public_gistsPublic account and activity metrics.
Account datesaccount_created_at, profile_updated_atAccount creation and profile update timestamps.
ResolutionqueryResolving input, such as username, org:<name>, repo:<owner/repo>, or search:<query>.
Collection timescraped_atUTC time associated with the record.
Qualityparse_confidence, warningsNumeric confidence and normalization warnings.

Sample output

This is one real dataset record. The fields and values are copied exactly from the dataset sample, except the personal email address is shown as the literal value '

{
"type": "user", "login": "torvalds", "name": "Linus Torvalds",
"html_url": "https://github.com/torvalds",
"email": "<hidden for privacy>", "email_source": "commit",
"company": "Linux Foundation", "location": "Portland, OR",
"blog": null, "twitter_username": null, "hireable": null, "bio": null,
"followers": 329688, "following": 0, "public_repos": 12, "public_gists": 1,
"account_created_at": "2011-09-03T15:26:22Z",
"profile_updated_at": "2026-10-16T15:33:53Z",
"query": "username", "scraped_at": "2026-10-28T02:26:35Z",
"parse_confidence": 1, "warnings": []
}

Pricing

This is pay per event. github-lead is one enriched developer lead and is charged once for every person record returned, including records without a public email.

PlanPrice
Free plan$0.0049 per github-lead event
Bronze plan$0.004851 per github-lead event
Silver plan$0.004802 per github-lead event
Gold plan$0.004753 per github-lead event
Platinum plan$0.004704 per github-lead event
Diamond plan$0.004655 per github-lead event

Free-plan examples: 100 returned leads cost $0.49; 1,000 cost $4.90; 10,000 cost $49.00.

The Apify Free plan includes $5 of monthly platform usage credit. At this Actor’s Free-plan event price, that credit corresponds to 1,020 charged leads.

Actor charges and platform usage are separate. For this pay-per-event Actor, compute, Apify Proxy traffic including residential traffic, and storage are included in event prices and paid by the Actor developer. This Actor does not use “Pay per event + usage”, so the buyer does not separately pay platform usage.

How to use

  1. Choose any combination of direct usernames, organization logins, owner/repo repositories, and a GitHub user-search query.
  2. Set maxResults to the maximum total number of leads across all inputs.
  3. Enable enrichEmailFromCommits to check public commits for an email hidden from the profile; it is enabled by default.
  4. Add an optional githubToken to raise the GitHub rate limit to 5,000 requests per hour. A token is not required for public data.
  5. Run the Actor and inspect email_source, parse_confidence, and warnings.
  6. Repeat the run through Apify Schedules; weekly is a reasonable starting point for a recurring developer-lead refresh.
{
"usernames": ["torvalds", "gvanrossum"],
"maxResults": 2,
"enrichEmailFromCommits": true,
"disableUsageStats": false
}

Export the dataset as JSON or CSV, or read it through the Apify dataset API.

Input parameters

ParameterWhat it doesDefault
usernamesGitHub logins to enrich directly.Empty list
orgsResolves every public member of each organization.Empty list
reposResolves contributors from owner/repo repositories.Empty list
searchQueryGitHub user-search query, including syntax such as location:berlin language:python.Empty string
maxResultsMaximum total leads across all inputs; must be at least 1.100
enrichEmailFromCommitsChecks public commit history when the profile email is hidden.true
githubTokenOptional token for public API requests; raises the rate limit to 5,000 requests per hour and needs no scopes for public data.Not set
proxyConfigurationApify proxy configuration; the schema default uses the RESIDENTIAL group.{"useApifyProxy":true,"apifyProxyGroups":["RESIDENTIAL"]}
disableUsageStatsDisables the usage statistics record described below.false

Inputs can be combined. Duplicate logins are removed case-insensitively, and maxResults applies to the combined resolved list. Without a token, anonymous access uses rotated proxy sessions. With a token and the untouched default proxy configuration, access is direct; an explicitly changed proxy configuration is used as supplied.

Limits and edge cases

ConditionWhat the buyer seesWhat to do
No usable public emailThe lead is returned and charged; email is null and email_source is none when recovery finds nothing.Keep the row or filter on email != null.
Hidden profile email with commit recovery enabledPublic commits on the user’s own recent repositories are checked; real author emails can produce email_source: "commit".Leave enrichEmailFromCommits enabled for recovery.
Only excluded noreply addresses are foundThey are not used as contact emails; the lead can still be returned.Treat email_source: "none" as no recoverable public email.
User has no public repositoriesCommit recovery is skipped because there is no repository source.Use the returned profile fields.
Organization is placed in usernamesThe organization is skipped because leads are people.Put it in orgs to resolve public members.
Repository lacks owner/repoThe repository is skipped during resolution.Use the owner and name separated by one slash.
No users can be resolvedThe run reports 0 leads, nothing charged and stores OUTPUT with error: "no_users_resolved".Check spelling and provide usernames, organizations, repositories, or a search query.
Profile lookup fails or reaches a rate limitIt is retried once with a fresh session; a second failure is recorded, while successful leads can still return.Add a githubToken and rerun.
Commit-email lookup fails after profile fetchThe lead continues and can have a null email.Use its warnings or rerun with recovery enabled.
Anonymous access reaches its per-IP limitAnonymous access is limited to 60 requests per hour per IP; sessions are rotated.Use the default Residential proxy or provide a token.
Search exceeds GitHub’s search limitGitHub user search is capped at 1,000 results, and maxResults also applies.Narrow the query or use targeted runs.
Repository has more contributors than the request readsUp to 100 contributors are read and anonymous entries are skipped.Use targeted repositories or additional input modes.

FAQ

How much does it cost to scrape GitHub developer leads?

The Free plan is $0.0049 per github-lead event. Each returned person is one event, including a person without a public email; 100 results cost $0.49 on Free.

What happens if a GitHub user has no public email?

The person can still be returned with profile, company, location, social, hireable, metric, and URL fields. When enabled, the Actor checks public commits for a real email and excludes privacy noreply addresses.

Why is my result empty?

Possible causes include unresolved usernames, an organization supplied through usernames, an invalid repository value, or GitHub access failures. Check the input format, use a public organization or owner/repo, and consider adding a githubToken.

What should I do if the Actor is not working?

Check the run status and inputs. A failed profile lookup is retried once with a fresh session; if it fails again, add the optional token and review failedCount and failedDetails in the run’s OUTPUT value when available.

The Actor collects public profile, organization-member, repository-contributor, user-search, and public-commit data through the official GitHub REST API. Whether a use is legal or allowed depends on source terms and applicable law for your use case, including how you contact people; this Actor provides no legal guarantee.

Usage statistics

This Actor creates a small, content-free summary at the end of each run, used only to monitor reliability and improve this Actor. No input values, credentials or scraped data are sent.

A copy of the exact record for your run is saved as USAGE_STATS in your own Apify key-value store.

To opt out, set disableUsageStats to true in the input. Nothing is sent then.

Full list of collected fields