GitHub Repo Metadata Enricher avatar

GitHub Repo Metadata Enricher

Pricing

from $0.005 / actor start

Go to Apify Store
GitHub Repo Metadata Enricher

GitHub Repo Metadata Enricher

Enrich public GitHub repository URLs with stars, forks, topics, license, activity, owner metadata, release data, and lead-scoring signals. Built for B2B lead generation, devtools research, and competitive intelligence.

Pricing

from $0.005 / actor start

Rating

0.0

(0)

Developer

Sanskar Jaiswal

Sanskar Jaiswal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Enrich public GitHub repository URLs with structured metadata, metrics, and lead-scoring signals in a single API call. Returns stars, forks, topics, license, owner info, activity timestamps, and a 0-100 lead score. Uses GitHub's public API with no authentication required.

Use cases

  • Lead generation - score active open-source projects by commercial signals (marketing site, license, recent activity)
  • Devtools research - track competitor repos, adoption metrics, and integration targets
  • Market research - map ecosystem activity and identify high-momentum projects
  • Recruiting - find active maintainers and contributors at target companies
  • Growth teams - build lists of repos with declared licenses and marketing sites

Input

FieldTypeRequiredDefaultDescription
repoUrlsarray<string>yes-Public github.com/<owner>/<repo> URLs (max 50 per run)
includeReadmebooleannofalseFetch a short README preview for each repo
timeoutSecondsintegerno10Per-request timeout (3-30 seconds)

Example input

{
"repoUrls": [
"https://github.com/apify/crawlee",
"https://github.com/vercel/next.js"
],
"includeReadme": false,
"timeoutSeconds": 10
}

Output

Each repository produces one dataset item:

FieldTypeDescription
inputUrlstringThe GitHub URL provided
fullNamestringowner/repo identifier
okbooleanWhether enrichment succeeded
checkedAtstringISO timestamp
ownerobjectlogin, type (User/Organization), htmlUrl
repositoryobjectname, description, homepage, language, topics, license, createdAt, updatedAt, pushedAt, archived, disabled
metricsobjectstars, watchers, forks, openIssues, subscribers, sizeKb
leadSignalsobjectscore (0-100), signals (array), daysSinceLastPush
apiobjectGitHub API rate-limit status
readmeobjectOptional README preview (when includeReadme is enabled)
errorstringError message on failure

Lead signals

The leadSignals.score field is a 0-100 value derived from:

SignalConditionPoints
high_visibility1,000+ stars+35
emerging_project100-999 stars+20
developer_adoption50+ forks+15
recently_activePushed within 30 days+20
active_issue_queue25+ open issues+10
has_marketing_siteHomepage URL set+10
license_declaredLicense explicitly declared+5
archived_projectRepo is archived-40

Example output

{
"inputUrl": "https://github.com/apify/crawlee",
"fullName": "apify/crawlee",
"ok": true,
"checkedAt": "2026-07-06T12:00:00.000Z",
"owner": {
"login": "apify",
"type": "Organization",
"htmlUrl": "https://github.com/apify"
},
"repository": {
"name": "crawlee",
"description": "Crawlee - A web scraping and browser automation library for Node.js",
"homepage": "https://crawlee.dev",
"language": "TypeScript",
"topics": ["apify", "crawlee", "scraper", "automation"],
"license": { "key": "apache-2.0", "name": "Apache License 2.0", "spdxId": "Apache-2.0" }
},
"metrics": {
"stars": 24473,
"forks": 1522,
"openIssues": 176,
"subscribers": 130
},
"leadSignals": {
"score": 95,
"signals": ["high_visibility", "developer_adoption", "recently_active", "has_marketing_site", "license_declared"],
"daysSinceLastPush": 1
}
}

Security

  • Only github.com/<owner>/<repo> URLs are accepted
  • URLs with embedded credentials are rejected
  • Uses unauthenticated public GitHub API (60 requests/hour per IP)
  • No tokens, no private repos, no browser automation, no proxies
  • Does not read local files or environment secrets

Pricing

Pay per event:

EventPrice
Actor start$0.005
Repository enriched$0.01

A run enriching 10 repositories costs approximately $0.105.

FAQ

Do I need a GitHub token? No. The actor uses GitHub's unauthenticated public API. For higher volume, run on Apify infrastructure where IP rotation is automatic.

Can I enrich private repositories? No. This actor only works with public repositories.

What happens if a repo doesn't exist? The actor returns an item with ok: false and the error status. It does not crash the run.

Can I get README content? Set includeReadme: true to fetch a 500-character README preview. This uses additional API quota.