GitHub Repository Insights avatar

GitHub Repository Insights

Pricing

from $0.01 / 1,000 results

Go to Apify Store
GitHub Repository Insights

GitHub Repository Insights

Turn any list of GitHub repos, users/orgs or a search query into clean, structured JSON — stars, forks, watchers, open issues, language, topics, license, homepage and timestamps. Powered by the public GitHub REST API; no login required, add a token to raise the rate limit.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

Assia Fadli

Assia Fadli

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Turn GitHub repositories into clean, structured data. Point this actor at specific repos, at whole users/organizations, or at a GitHub search query, and get back one tidy JSON row per repository — stars, forks, watchers, open issues, language, topics, license, homepage and timestamps.

It runs on the official GitHub REST API. No login and no proxy are needed; an optional personal access token only raises the rate limit.

Why use it

  • Three ways in, one shape out. Mix explicit repos, user/org listings and a search query in a single run — every source produces the same flat record.
  • Never fails on one bad input. A missing repo (404) or a rate-limit hit (403) becomes a labelled error row; the run keeps going.
  • No dependencies to fear. Just the Apify SDK and Node 20's built-in fetch.
  • Pay only for what you get. Billed per delivered repository (pay-per-event) — error rows are never charged.

Input

FieldTypeDefaultDescription
reposarrayRepositories to fetch, each as "owner/name" (e.g. "apify/crawlee").
searchQuerystringOptional GitHub repository search query. Returns the most-starred matches first.
usersarrayOptional list of GitHub usernames/organizations. Fetches each account's repositories.
maxResultsinteger30Max repositories per source (per user and for the search query). Capped at 100 by the API.
githubTokenstring (secret)Optional personal access token. Raises the rate limit from 60 to 5,000 requests/hour.

Provide at least one of repos, users or searchQuery. You can combine all three.

Example input

{
"repos": ["apify/crawlee", "facebook/react"],
"searchQuery": "web scraping language:python stars:>1000",
"users": ["apify"],
"maxResults": 30
}

Output

Each dataset record is a flat repository object:

{
"fullName": "apify/crawlee",
"owner": "apify",
"name": "crawlee",
"description": "Crawlee—A web scraping and browser automation library…",
"stars": 18500,
"forks": 810,
"watchers": 18500,
"openIssues": 130,
"language": "TypeScript",
"topics": ["crawler", "scraper", "playwright", "puppeteer"],
"license": "Apache-2.0",
"homepage": "https://crawlee.dev",
"url": "https://github.com/apify/crawlee",
"createdAt": "2021-05-31T14:15:11Z",
"updatedAt": "2024-06-01T00:00:00Z",
"pushedAt": "2024-06-01T00:00:00Z",
"size": 45000,
"defaultBranch": "master",
"archived": false,
"isFork": false
}
FieldDescription
fullNameRepository full name (owner/name).
ownerOwner login.
nameRepository name.
descriptionRepository description.
starsStargazer count.
forksFork count.
watchersWatcher count.
openIssuesOpen issues + pull requests count.
languagePrimary language.
topicsArray of repository topics.
licenseSPDX license identifier (e.g. MIT, Apache-2.0).
homepageProject homepage URL, if set.
urlLink to the repository on GitHub.
createdAtCreation timestamp (ISO 8601).
updatedAtLast metadata update timestamp (ISO 8601).
pushedAtLast push timestamp (ISO 8601).
sizeRepository size in kilobytes.
defaultBranchDefault branch name.
archivedWhether the repository is archived.
isForkWhether the repository is a fork.

When an input can't be fetched, its row is { "input": "<value>", "error": "<message>" } instead — the run continues.

Rate limits

The GitHub REST API allows 60 requests/hour unauthenticated. Providing a githubToken raises this to 5,000 requests/hour; a read-only token with no scopes is enough. Hitting the limit produces an error row (HTTP 403) rather than crashing the run.

Data source

This actor uses the official GitHub REST API:

  • Base URL: https://api.github.com
  • Repo details: GET /repos/{owner}/{repo}
  • User repos: GET /users/{user}/repos?sort=updated
  • Search: GET /search/repositories?q=<query>&sort=stars&order=desc

Requests send the required User-Agent and Accept: application/vnd.github+json headers.

Billing

This actor uses the pay-per-event pricing model. You are charged once per repository successfully delivered to the dataset (event repo-scraped). Error rows are never charged.


Built by Assia Fadli. Licensed under MIT.