User Activity
GET/v1/github/user/activity1 credit
Returns one month of a user's contribution activity timeline (commits, created repositories, pull requests, issues), as shown on their GitHub profile.
01Query parameters
| Name | Type | Description |
|---|---|---|
| handleoptional | string | GitHub username, e.g. `torvalds` (a leading `@` is ignored). One of `handle`, `username` or `url` is required. |
| usernameoptional | string | Same as `handle`, accepted under this name too. One of `handle`, `username` or `url` is required. |
| urloptional | string | GitHub profile URL, e.g. `https://github.com/torvalds`. One of `handle`, `username` or `url` is required. |
| yearoptional | integer | Calendar year, from 2008 to the current year. Defaults to the current year. |
| cursoroptional | string | Month to fetch within `year`: 1 is the newest month, 2 the month before it, and so on. Pass the `cursor` value of the previous answer to go back one month.Default: 1 |
02Request
curl "https://api.scrapesocial.ai/v1/github/user/activity?handle=torvalds" \ -H "x-api-key: $SCRAPESOCIAL_KEY"
03Responses
Real answers from the API. Lists are shortened to 2 items.
GET /v1/github/user/activity?handle=torvalds
{
"success": true,
"credits_remaining": 4980,
"credits_charged": 1,
"username": "torvalds",
"year": 2026,
"month": "October 2026",
"activity": [
{
"summary": "Created 397 commits in 2 repositories",
"details": [
{
"text": "torvalds/linux 319 commits",
"repository": {
"text": "torvalds/linux",
"url": "https://github.com/torvalds/linux"
},
"links": [
{
"text": "torvalds/linux",
"url": "https://github.com/torvalds/linux"
},
{
"text": "319 commits",
"url": "https://github.com/torvalds/linux/commits?author=torvalds&since=2026-10-01&until=2026-10-26"
}
],
"language": null,
"date_text": null,
"date_description": null
},
{
"text": "torvalds/GuitarPedal 78 commits",
"repository": {
"text": "torvalds/GuitarPedal",
"url": "https://github.com/torvalds/GuitarPedal"
},
"links": [
{
"text": "torvalds/GuitarPedal",
"url": "https://github.com/torvalds/GuitarPedal"
},
{
"text": "78 commits",
"url": "https://github.com/torvalds/GuitarPedal/commits?author=torvalds&since=2026-10-01&until=2026-10-26"
}
],
"language": null,
"date_text": null,
"date_description": null
}
]
},
{
"summary": "Created a pull request in subsurface/subsurface that received 10 comments",
"details": [
{
"text": "Use modern Linux bluez address type",
"repository": {
"text": "subsurface/subsurface",
"url": "https://github.com/subsurface/subsurface"
},
"links": [
{
"text": "subsurface/subsurface",
"url": "https://github.com/subsurface/subsurface"
},
{
"text": "Oct 18",
"url": "https://github.com/torvalds?tab=overview&from=2026-10-01&to=2026-10-31"
}
],
"language": null,
"date_text": "Oct 18",
"date_description": null
}
]
}
],
"no_activity": false,
"message": null,
"cursor": 2
}Common to every endpoint
Any route can answer these: a missing or wrong key, no credits left, the platform not answering, or a failure on our side. None of them costs credits.
GET /v1/cosmos/profile?handle=design
{
"success": false,
"message": "Invalid API key"
}04Notes
Each answer covers one month: `month` names it (e.g. "October 2026") and `activity` holds the grouped entries with a `summary` and `details`. For the current year, month 1 is the current month. The answer's `cursor` points to the previous month and is null once January of `year` is reached; a cursor before January returns an empty month (`no_activity: true`) for 0 credits. An unknown user is a free 404; a value that is not a GitHub username or profile URL is a free 400.
05Errors & credits
Every error has success: false, a real HTTP status and costs no credits.
400missing_parameter
A required parameter is missing or invalid.
403private_account
The account is private or age-restricted.
404not_found
No such account.
503upstream_error
The platform did not answer; retry shortly.