GitHub REST API Integration Scraper (BYOC)
Pricing
Pay per usage
GitHub REST API Integration Scraper (BYOC)
Scrape public/private repositories, issues, PRs, and trending charts from GitHub via official REST API (BYOC).
Pricing
Pay per usage
Rating
0.0
(0)
Developer
viralanalyzer
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
🐙 GitHub Integration — Repo Info, Issues, PRs, Trending & Org Repos via Official REST API
🔗 View on Apify Store | 🇺🇸 English | 🇧🇷 Português
Fetch GitHub data via the official GitHub REST API (api.github.com, version 2022-11-28) — single-repo metadata, open issues, open pull requests, trending repos from the last 7 days, and all public repos of an organization. Five focused modes, one actor. No browser. An optional Personal Access Token lifts the rate limit from 60 to 5000 req/h and unlocks private repos.
✨ Features
- 📊 Repo Info — Full metadata for one repo: stars, forks, open issues, watchers, topics, license, language, default branch, homepage, fork flag, timestamps
- 🐛 Repo Issues — Open issues with title, author, labels, comment count, body excerpt, timestamps
- 🔀 Repo PRs — Open pull requests with the same rich fields as issues
- 🔥 Trending Repos — Repos created in the last 7 days, sorted by stars, optionally filtered by language
- 🏢 Org Repos — All public repos of an organization, sorted by last update
- 🔑 Optional PAT — Provide a GitHub Personal Access Token to raise the limit 60 → 5000 req/h and reach private data (stored as a secret)
- ⚡ Pure REST — Direct calls to the official GitHub API, no scraping, no browser
- 🛡️ Diagnostic Setup Guide — On recoverable conditions (bad input, rate limit, missing token, not found, zero results) it returns a clearly-labeled diagnostic record and never charges you
📥 Input
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
mode | string | ✅ | repo-info | repo-info | repo-issues | repo-prs | trending | org-repos |
repoFullName | string | ⚠️ | microsoft/vscode | owner/repo format. Required for repo-info, repo-issues, repo-prs |
orgName | string | ⚠️ | apify | Organization slug. Required for org-repos |
language | string | ❌ | python | Language filter for trending (e.g. python, javascript). Empty = all |
maxItems | integer | ❌ | 30 | Max items for issues, PRs, org repos. Range 1–500 |
githubToken | string (secret) | ❌ | "" | Optional GitHub PAT. Raises limit 60 → 5000 req/h and grants private-repo access |
⚠️ = required only for the modes noted above.
Input Examples
{ "mode": "repo-info", "repoFullName": "microsoft/vscode" }{ "mode": "repo-issues", "repoFullName": "apify/crawlee", "maxItems": 50 }{ "mode": "trending", "language": "python" }{ "mode": "org-repos", "orgName": "apify", "maxItems": 50 }
📤 Output
The fields returned depend on the selected mode. Every record carries a scrapedAt ISO 8601 timestamp.
repo-info (1 record): fullName, description, language, stars, forks, openIssues, watchers, topics[], license, defaultBranch, homepage, isForked, createdAt, updatedAt, htmlUrl.
repo-issues / repo-prs (up to maxItems): id (issue/PR number), title, state, author, labels[], createdAt, updatedAt, commentsCount, htmlUrl, body (truncated to 500 chars), repo.
trending (up to 30): fullName, description, language, stars, forks, topics[], htmlUrl, createdAt.
org-repos (up to maxItems): fullName, description, language, stars, forks, htmlUrl, updatedAt, org.
Notes: description, language, license, homepage, author and body can be null. openIssues includes PRs (per GitHub's count).
Output Example (repo-info)
{"fullName": "microsoft/vscode","description": "Visual Studio Code","language": "TypeScript","stars": 162000,"forks": 28500,"openIssues": 9100,"watchers": 162000,"topics": ["editor", "electron", "typescript"],"license": "MIT License","defaultBranch": "main","homepage": "https://code.visualstudio.com","isForked": false,"createdAt": "2015-09-03T20:23:38Z","updatedAt": "2026-06-05T08:14:00Z","htmlUrl": "https://github.com/microsoft/vscode","scrapedAt": "2026-06-05T12:00:00.000Z"}
📋 Use Cases
- Dependency Monitoring — Track stars, forks, open issues, license of repos your stack depends on
- Competitive Intelligence — Watch an organization's full public repo footprint with
org-repos - Trend Discovery — Surface fast-rising repos from the last 7 days by language with
trending - Triage Dashboards — Pull open issues or PRs into your board with author, labels, comment counts
- OSS Health Reports — Aggregate repo metadata across many projects into scorecards
- LLM / Agent Context — Provide structured, real-time GitHub data to RAG and agentic workflows
❓ FAQ
Q: Do I need a GitHub token?
A: No. It works without one, but unauthenticated GitHub requests are capped at 60 req/h per IP (shared datacenter IPs exhaust fast). Provide a PAT in githubToken to raise the limit to 5000 req/h and access private repos. The token is stored as a secret.
Q: Which modes need which inputs?
A: repo-info, repo-issues and repo-prs require repoFullName (owner/repo). org-repos requires orgName. trending uses the optional language filter and needs neither.
Q: How many issues / PRs / repos can I fetch?
A: Up to maxItems (1–500, default 30) for repo-issues, repo-prs and org-repos. The actor paginates the GitHub API at 100 per page until the limit is reached. trending returns up to 30 repos.
Q: What counts as "trending"?
A: Repos created in the last 7 days, returned by GitHub search sorted by stars (descending), optionally filtered to a single language.
Q: Why did my run return a diagnostic record instead of data?
A: For recoverable conditions — missing/invalid input, rate limit, missing/invalid token, repo or org not found, or zero results — the actor saves a clearly-labeled diagnostic record (setup_status: "DIAGNOSTIC_GUIDE") with causes and remediations, finishes successfully, and does not charge you. Add a token or fix the input and re-run.
Q: Does it return closed issues / PRs?
A: No. Both repo-issues and repo-prs query open items only (state=open).
💰 Pricing
This actor uses Pay Per Event (PPE) pricing with a single event:
| Event | When it fires |
|---|---|
item-fetched | Once per item written to the dataset (the number of returned records) |
You are charged only for real items returned. Runs that hit a recoverable condition (bad input, rate limit, not found, zero results) emit a diagnostic record and are not charged. See current per-event rates on the Apify Store page: https://apify.com/viralanalyzer/mcp-github-integration
🔗 Related Actors
- GitHub Trending Scraper — Curated trending repositories feed
- arXiv Paper Intelligence — Academic paper metadata & search
- Reddit Scraper — Developer community discussions
- TradingView Screener — Market & technical screening
📝 Changelog
v1.0 (Current)
- ✅ Five modes:
repo-info,repo-issues,repo-prs,trending,org-repos - ✅ Official GitHub REST API (
api.github.com, version2022-11-28) - ✅ Optional Personal Access Token (60 → 5000 req/h, private-repo access)
- ✅ Pagination up to
maxItems(1–500) for issues, PRs, org repos - ✅ Trending = repos created in the last 7 days, sorted by stars
- ✅ Diagnostic Setup Guide on recoverable conditions — never charges PPE
- ✅ PPE billing via
item-fetchedwith owner-skip
🐙 GitHub Integration — Info de Repo, Issues, PRs, Trending & Repos de Org via API REST Oficial
🇺🇸 English | 🇧🇷 Português
Busque dados do GitHub via API REST oficial (api.github.com, versão 2022-11-28) — metadados de um repositório, issues abertas, pull requests abertos, repositórios em alta dos últimos 7 dias e todos os repositórios públicos de uma organização. Cinco modos focados, um actor. Sem navegador. Um Personal Access Token opcional eleva o limite de 60 para 5000 req/h e libera repositórios privados.
✨ Funcionalidades
- 📊 Info de Repo — Metadados completos de um repo: estrelas, forks, issues abertas, watchers, tópicos, licença, linguagem, branch padrão, homepage, flag de fork, timestamps
- 🐛 Issues do Repo — Issues abertas com título, autor, labels, contagem de comentários, trecho do corpo, timestamps
- 🔀 PRs do Repo — Pull requests abertos com os mesmos campos ricos das issues
- 🔥 Repos em Alta — Repos criados nos últimos 7 dias, ordenados por estrelas, opcionalmente filtrados por linguagem
- 🏢 Repos de Org — Todos os repos públicos de uma organização, ordenados por última atualização
- 🔑 PAT Opcional — Forneça um GitHub Personal Access Token para elevar o limite 60 → 5000 req/h e acessar dados privados (armazenado como secret)
- ⚡ REST Puro — Chamadas diretas à API oficial do GitHub, sem scraping, sem navegador
- 🛡️ Guia de Diagnóstico — Em condições recuperáveis (input inválido, limite de taxa, token ausente, não encontrado, zero resultados) retorna um registro de diagnóstico claramente identificado e nunca cobra
📥 Entrada
| Parâmetro | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
mode | string | ✅ | repo-info | repo-info | repo-issues | repo-prs | trending | org-repos |
repoFullName | string | ⚠️ | microsoft/vscode | Formato owner/repo. Obrigatório para repo-info, repo-issues, repo-prs |
orgName | string | ⚠️ | apify | Slug da organização. Obrigatório para org-repos |
language | string | ❌ | python | Filtro de linguagem para trending (ex: python, javascript). Vazio = todas |
maxItems | inteiro | ❌ | 30 | Máx. de itens para issues, PRs, repos de org. Faixa 1–500 |
githubToken | string (secret) | ❌ | "" | GitHub PAT opcional. Eleva o limite 60 → 5000 req/h e dá acesso a repos privados |
⚠️ = obrigatório apenas para os modos indicados acima.
Exemplos de Entrada
{ "mode": "repo-info", "repoFullName": "microsoft/vscode" }{ "mode": "repo-issues", "repoFullName": "apify/crawlee", "maxItems": 50 }{ "mode": "trending", "language": "python" }{ "mode": "org-repos", "orgName": "apify", "maxItems": 50 }
📤 Saída
Os campos retornados dependem do mode selecionado. Todo registro carrega um timestamp scrapedAt em ISO 8601.
repo-info (1 registro): fullName, description, language, stars, forks, openIssues, watchers, topics[], license, defaultBranch, homepage, isForked, createdAt, updatedAt, htmlUrl.
repo-issues / repo-prs (até maxItems): id (número da issue/PR), title, state, author, labels[], createdAt, updatedAt, commentsCount, htmlUrl, body (truncado em 500 caracteres), repo.
trending (até 30): fullName, description, language, stars, forks, topics[], htmlUrl, createdAt.
org-repos (até maxItems): fullName, description, language, stars, forks, htmlUrl, updatedAt, org.
Observações: description, language, license, homepage, author e body podem ser null. openIssues inclui PRs (conforme a contagem do GitHub).
Exemplo de Saída (repo-info)
{"fullName": "microsoft/vscode","description": "Visual Studio Code","language": "TypeScript","stars": 162000,"forks": 28500,"openIssues": 9100,"watchers": 162000,"topics": ["editor", "electron", "typescript"],"license": "MIT License","defaultBranch": "main","homepage": "https://code.visualstudio.com","isForked": false,"createdAt": "2015-09-03T20:23:38Z","updatedAt": "2026-06-05T08:14:00Z","htmlUrl": "https://github.com/microsoft/vscode","scrapedAt": "2026-06-05T12:00:00.000Z"}
📋 Casos de Uso
- Monitoramento de Dependências — Acompanhe estrelas, forks, issues abertas e licença dos repos que sua stack usa
- Inteligência Competitiva — Observe toda a presença pública de repos de uma organização com
org-repos - Descoberta de Tendências — Revele repos em ascensão dos últimos 7 dias por linguagem com
trending - Dashboards de Triagem — Traga issues ou PRs abertos para seu board com autor, labels, contagem de comentários
- Relatórios de Saúde OSS — Agregue metadados de repositórios de vários projetos em scorecards
- Contexto para LLM / Agentes — Forneça dados estruturados e em tempo real do GitHub a workflows RAG e agênticos
❓ Perguntas Frequentes
P: Preciso de um token do GitHub?
R: Não. Funciona sem token, mas requisições não autenticadas são limitadas a 60 req/h por IP (IPs de datacenter compartilhados se esgotam rápido). Forneça um PAT em githubToken para elevar o limite a 5000 req/h e acessar repos privados. O token é armazenado como secret.
P: Quais modos precisam de quais entradas?
R: repo-info, repo-issues e repo-prs exigem repoFullName (owner/repo). org-repos exige orgName. trending usa o filtro opcional language e não precisa de nenhum.
P: Quantas issues / PRs / repos posso buscar?
R: Até maxItems (1–500, padrão 30) para repo-issues, repo-prs e org-repos. O actor pagina a API do GitHub em 100 por página até atingir o limite. trending retorna até 30 repos.
P: O que conta como "em alta" (trending)?
R: Repos criados nos últimos 7 dias, retornados pela busca do GitHub ordenados por estrelas (decrescente), opcionalmente filtrados por uma única language.
P: Por que minha execução retornou um registro de diagnóstico em vez de dados?
R: Em condições recuperáveis — entrada ausente/inválida, limite de taxa, token ausente/inválido, repo ou org não encontrado, ou zero resultados — o actor salva um registro de diagnóstico claramente identificado (setup_status: "DIAGNOSTIC_GUIDE") com causas e remediações, encerra com sucesso e não cobra. Adicione um token ou corrija a entrada e rode de novo.
P: Retorna issues / PRs fechados?
R: Não. Tanto repo-issues quanto repo-prs consultam apenas itens abertos (state=open).
💰 Preços
Este actor usa precificação Pay Per Event (PPE) com um único evento:
| Evento | Quando dispara |
|---|---|
item-fetched | Uma vez por item gravado no dataset (o número de registros retornados) |
Você é cobrado apenas pelos itens reais retornados. Execuções que caem em condição recuperável (entrada inválida, limite de taxa, não encontrado, zero resultados) emitem um registro de diagnóstico e não são cobradas. Veja as taxas por evento atuais na página do Apify Store: https://apify.com/viralanalyzer/mcp-github-integration
🔗 Actors Relacionados
- GitHub Trending Scraper — Feed de repositórios em alta
- arXiv Paper Intelligence — Metadados e busca de artigos acadêmicos
- Reddit Scraper — Discussões de comunidades de desenvolvedores
- TradingView Screener — Screening de mercado & técnico
📝 Changelog
v1.0 (Atual)
- ✅ Cinco modos:
repo-info,repo-issues,repo-prs,trending,org-repos - ✅ API REST oficial do GitHub (
api.github.com, versão2022-11-28) - ✅ Personal Access Token opcional (60 → 5000 req/h, acesso a repos privados)
- ✅ Paginação até
maxItems(1–500) para issues, PRs, repos de org - ✅ Trending = repos criados nos últimos 7 dias, ordenados por estrelas
- ✅ Guia de Diagnóstico em condições recuperáveis — nunca cobra PPE
- ✅ Cobrança PPE via
item-fetchedcom owner-skip