GitHub Contributions API
Get a GitHub user's contribution activity — contribution counts and calendar-style signals as structured JSON.
GET request to /v1/github/contributions that responds with clean JSON and costs 3 credits. Pass cache=true for a free 24h cache hit; default is always fresh. Start with 100 free credits — no credit card.What is the GitHub Contributions API?
Pass a GitHub username or profile URL and get contribution activity as clean JSON — useful for developer profiling and hiring screens. Flat 3 credits per call.
What you get
- Contributions fields as clean structured JSON
- IDs, URLs, and titles where the platform exposes them
- Engagement or popularity signals when available
- Stable IDs for joining with other endpoints
Try it
Fill in the parameters below and copy a ready-to-run request, or open the live Playground to run it against your account (no API key paste).
Parameters
curl "https://api.captapi.com/v1/github/contributions?username=vercel" \
-H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."Edit the parameters and the code updates instantly. Switch languages and hit copy.
Example response
{
"success": true,
"data": {
"username": "torvalds",
"recentPublicEvents": 90,
"recentEventTypes": [
"IssueCommentEvent",
"PullRequestEvent",
"PushEvent"
],
"publicRepositoriesSampled": 12,
"starsAcrossSampledRepos": 252421
}
}Billing metadata is returned in response headers: X-Captapi-Credits (credits charged), X-Captapi-Cache (hit or miss), and X-Captapi-Source. Failed requests (4xx/5xx) are never charged. See the full list of error codes in the error reference.
Response structure
A successful call returns success, cached, creditsUsed, and a data object with the following fields:
Top-level fields
usernameAccount username / handle.recentPublicEventsRecent public events. Example: 90.recentEventTypesRecent event types (array).publicRepositoriesSampledPublic repositories sampled. Example: 12.starsAcrossSampledReposStars across sampled repos. Example: 252421.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| username | string | Yes | GitHub username or profile URL. |
| cache | boolean | No | Set true to serve from the 24h response cache. Default false — always fetch fresh data. |
Authentication: send your key as Authorization: Bearer capt_live_.... A typical call costs 3 credits. Pass cache=true for a free 24h cache hit; default is always fresh.
How it works
- 1. Sign up — get 100 free credits, no card required.
- 2. Create a key from your dashboard.
- 3. Send one request to
/v1/github/contributionsand parse the JSON response.
Use cases
Analytics
Track views, likes, and engagement over time.
Competitor Monitoring
Benchmark the performance of other creators.
Dashboards
Power reporting and BI with real metadata.
Content Curation
Filter and rank videos by performance.
Frequently asked questions
What does the GitHub Contributions API do?+
The GitHub Contributions API lets you fetch full metadata and key stats from a public GitHub GitHub resource using one GET request to /v1/github/contributions. It returns clean JSON — no OAuth or infrastructure setup required.
How many credits does the GitHub Contributions API cost?+
Each successful call costs 3 credits. Pass cache=true to serve from the 24h shared cache (0 credits on hit); default is always fresh. Failed or empty results are never charged.
Do I need a GitHub API key or OAuth?+
No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.
Is the GitHub Contributions API suitable for production use?+
Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h shared cache (0 credits on hit); default is always fresh. Use it for analytics, monitoring, and content automation.
More GitHub APIs
Ready to use the GitHub Contributions API?
Sign up, grab your key, and make your first call in 60 seconds.