fetchproof.

/v1/github/user/activity

GET

Activity

Get public GitHub profile contribution activity for a user. Defaults to the current year and returns one month at a time.

Credit cost

Default: 1 credit

How charges are determined

Cost is decided per call, not per endpoint: the same operation can cost different amounts depending on what it returns.

A call that fails costs 0 credits. A result served from cache costs 0 credits.

`default` is the cost when no rule matches. Rules are evaluated in order and the first whose conditions all hold wins.

A `when` condition is one of: `param` (the request parameter is true), `outcome` (the classifier's outcome), `empty` / `nonEmpty` (a response field is empty and absent, or a non-empty array or string), `flag` (a response field is exactly true).

A cost of `{ perStartedMinute: n, of: [fields] }` is n x max(1, ceil(seconds / 60)), so even a short result bills at least one minute.

Cache supportNot specified in the published contract.
PaginationNo explicit pagination metadata in the published contract. Consult the parameters and response fields below.

Parameters

NameLocation / requiredSchema
handle

GitHub handle

query / optional

string

url

GitHub user URL, e.g. https://github.com/kentcdodds.

query / optional

string

year

When provided, returns profile contribution activity for that year. Defaults to the current year.

query / optional

number

cursor

Cursor from the previous response. Pages backward by month through the selected year.

query / optional

number

Request examples

Replace placeholder values and supply your own API key. For operations with a request body, populate the body using the schema above.

cURL
curl --request GET 'https://api.fetchproof.com/v1/github/user/activity' \
  --header 'x-api-key: YOUR_API_KEY'
JavaScript
const response = await fetch("https://api.fetchproof.com/v1/github/user/activity", {
  method: 'GET',
  headers: { 'x-api-key': process.env.FETCHPROOF_API_KEY }
});
console.log(await response.text());
Python
import os
import requests

response = requests.get("https://api.fetchproof.com/v1/github/user/activity",
    headers={"x-api-key": os.environ["FETCHPROOF_API_KEY"]})
print(response.text)

Responses

200Success. Envelope: success / credits_remaining / credits_charged.

application/json

object

successrequired

boolean

credits_remainingrequired

integer

credits_chargedrequired

integer

usernamerequired

string

yearrequired

integer

monthrequired

string

activityrequired

array

Array items

object

summaryrequired

string

detailsrequired

array

Array items

object

textrequired

string

repositoryrequired

object

textrequired

string

urlrequired

string

linksrequired

array

Array items

object

textrequired

string

urlrequired

string

languagerequired

string

date_textrequired

string

date_descriptionrequired

string

no_activityrequired

boolean

messagerequired

null

cursorrequired

integer

401Invalid or missing x-api-key
402No credits remaining
403Upstream denied (age gate, audience controls)
404Resource or endpoint not found
429Rate limited