Skip to content

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

NameTypeDescription
handleoptionalstringGitHub username, e.g. `torvalds` (a leading `@` is ignored). One of `handle`, `username` or `url` is required.
usernameoptionalstringSame as `handle`, accepted under this name too. One of `handle`, `username` or `url` is required.
urloptionalstringGitHub profile URL, e.g. `https://github.com/torvalds`. One of `handle`, `username` or `url` is required.
yearoptionalintegerCalendar year, from 2008 to the current year. Defaults to the current year.
cursoroptionalstringMonth 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.