GitHub
10 endpoints.
- GET /v1/github/repository
- GET /v1/github/trending_developers
- GET /v1/github/trending_repositories
- GET /v1/github/user
- GET /v1/github/user_activity
- GET /v1/github/user_contributions
- GET /v1/github/user_followers
- GET /v1/github/user_following
- GET /v1/github/user_pull_requests
- GET /v1/github/user_repositories
GET /v1/github/repository
Repository
Retrieves public metadata for one GitHub repository, including owner, description, language, stars, forks, topics, license, visibility, default branch, open issues, and timestamps. Pass a full GitHub repository url.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
url required | query | string | GitHub repository URL |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/repository?url=https://github.com/torvalds/linux" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/repository?url=https://github.com/torvalds/linux", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/repository?url=https://github.com/torvalds/linux",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"repository": {
"id": 2325298,
"node_id": "MDEwOlJlcG9zaXRvcnkyMzI1Mjk4",
"name": "linux",
"full_name": "torvalds/linux",
"owner": {
"id": 1024025,
"login": "torvalds",
"avatar_url": "https://avatars.githubusercontent.com/u/1024025?v=4",
"url": "https://github.com/torvalds",
"type": "User"
},
"private": false,
"url": "https://github.com/torvalds/linux",
"description": "Linux kernel source tree",
"fork": false,
"homepage": "",
"language": "C",
"forks_count": 62423,
"stars_count": 233979,
"watchers_count": 233979,
"size": 6298741,
"default_branch": "master",
"open_issues_count": 3,
"topics": [],
"license": {
"key": "other",
"name": "Other",
"spdx_id": "NOASSERTION"
},
"archived": false,
"disabled": false,
"visibility": "public",
"pushed_at": "2026-05-21T16:23:10Z",
"created_at": "2011-09-04T22:48:12Z",
"updated_at": "2026-05-21T19:31:40Z"
}
}GET /v1/github/trending_developers
Trending Developers
Scrapes GitHub's public Trending developers page. Returns ranked developers with username, name, public profile URL, avatar, and the popular repository GitHub shows for that developer when available. Use language for paths like javascript or python and since for daily/weekly/monthly.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
language | query | string | Optional trending coding language, e.g. javascript, python, or go. |
since | query | string | Trending range: daily, weekly, or monthly. Defaults to daily. one of: daily, weekly, monthly |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/trending_developers" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/trending_developers", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/trending_developers",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"since": "daily",
"language": null,
"developers": [
{
"rank": 1,
"username": "koala73",
"name": "Elie Habib",
"url": "https://github.com/koala73",
"avatar_url": "https://avatars.githubusercontent.com/u/996596?s=96&v=4",
"popular_repository": {
"owner": "koala73",
"repo": "worldmonitor",
"full_name": "koala73/worldmonitor",
"url": "https://github.com/koala73/worldmonitor",
"name": "worldmonitor",
"description": "Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified s…"
}
}
]
}GET /v1/github/trending_repositories
Trending Repositories
Scrapes GitHub's public Trending repositories page. Returns ranked repositories with public URLs, descriptions, language, star/fork counts, stars for the selected range, and built-by users when GitHub shows them. Use language for paths like JavaScript or Python, since for daily/weekly/monthly, and spoken_language_code for GitHub's spoken language filter.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
language | query | string | Optional coding language, e.g. javascript, python, or go. |
since | query | string | Trending range: daily, weekly, or monthly. Defaults to daily. one of: daily, weekly, monthly |
spoken_language_code | query | string | Optional spoken language code filter, e.g. en. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/trending_repositories" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/trending_repositories", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/trending_repositories",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"since": "daily",
"language": null,
"spoken_language_code": null,
"repositories": [
{
"rank": 1,
"owner": "anthropics",
"repo": "claude-plugins-official",
"full_name": "anthropics/claude-plugins-official",
"url": "https://github.com/anthropics/claude-plugins-official",
"description": "Official, Anthropic-managed directory of high quality Claude Code Plugins.",
"language": "Python",
"language_color": "#3572A5",
"stars_count": 22064,
"forks_count": 2627,
"stars_today": 891,
"stars_today_text": "891 stars today",
"built_by": [
{
"username": "bryan-anthropic",
"avatar_url": "https://avatars.githubusercontent.com/u/238056179?s=40&v=4"
}
]
}
]
}GET /v1/github/user
User
Retrieves public GitHub user details including name, bio, avatar, company, location, blog, follower counts, public repo counts, and account timestamps. Pass username, handle, or a full GitHub user url.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub username/handle of the user you want the details for |
url | query | string | GitHub user URL, e.g. https://github.com/torvalds. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"id": 1024025,
"node_id": "MDQ6VXNlcjEwMjQwMjU=",
"login": "torvalds",
"name": "Linus Torvalds",
"company": "Linux Foundation",
"blog": "",
"location": "Portland, OR",
"email": null,
"bio": null,
"twitter_username": null,
"avatar_url": "https://avatars.githubusercontent.com/u/1024025?v=4",
"url": "https://github.com/torvalds",
"type": "User",
"site_admin": false,
"public_repos": 11,
"public_gists": 1,
"followers": 303973,
"following": 0,
"created_at": "2011-09-03T15:26:22Z",
"updated_at": "2026-01-13T07:10:05Z"
}GET /v1/github/user_activity
Activity
Retrieves GitHub profile contribution activity for a user from the public profile activity timeline. Defaults to the current year when year is not provided. Results come back one month at a time in the activity array. Pass cursor from the previous response to page backward through the year.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub handle |
url | query | string | GitHub user URL, e.g. https://github.com/kentcdodds. |
year | query | number | When provided, returns profile contribution activity for that year. Defaults to the current year. |
next_cursor | query | number | Cursor from the previous response. Pages backward by month through the selected year. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_activity" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_activity", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_activity",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"username": "kentcdodds",
"year": 2026,
"month": "May 2026",
"activity": [
{
"summary": "Created 186 commits in 13 repositories",
"details": [
{
"text": "kentcdodds/kody 144 commits",
"repository": {
"text": "kentcdodds/kody",
"url": "https://github.com/kentcdodds/kody"
},
"links": [
"{...}"
],
"language": null,
"date_text": null,
"date_description": null
}
]
}
],
"no_activity": false,
"message": null,
"next_cursor": 2
}GET /v1/github/user_contributions
Contributions
Retrieves the public GitHub contribution graph for a user and year, including total contributions and daily contribution counts/intensity. Pass github handle, or a full GitHub profile url. Defaults to the current year when year is not provided.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub handle |
url | query | string | GitHub profile URL |
year | query | number | Contribution graph year. Defaults to the current year. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_contributions" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_contributions", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_contributions",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"contributions": {
"username": "torvalds",
"year": 2026,
"total_contributions": 1214,
"days": [
{
"date": "2026-01-01",
"contribution_count": 4,
"color": null,
"intensity": 1
}
]
}
}GET /v1/github/user_followers
Followers
Retrieves public GitHub followers for a user. Each follower includes login, avatar, user URL, type, and GitHub IDs. Pass username, handle, or a full GitHub user url. Supports cursor pagination.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub username/handle of the user you want the followers for |
url | query | string | GitHub user URL, e.g. https://github.com/torvalds. |
next_cursor | query | number | Cursor from the previous response. Defaults to 1. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_followers" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_followers", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_followers",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"followers": [
{
"id": 206,
"node_id": "MDQ6VXNlcjIwNg==",
"login": "sprsquish",
"avatar_url": "https://avatars.githubusercontent.com/u/206?v=4",
"url": "https://github.com/sprsquish",
"type": "User",
"site_admin": false
}
],
"next_cursor": 2
}GET /v1/github/user_following
Following
Retrieves public accounts followed by a GitHub user. Each account includes login, avatar, profile URL, type, and GitHub IDs. Pass username, handle, or a full GitHub profile url. Supports cursor pagination.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub handle |
url | query | string | GitHub profile URL |
next_cursor | query | number | Cursor from the previous response. Defaults to 1. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_following" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_following", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_following",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"following": [
{
"id": 4303,
"node_id": "MDQ6VXNlcjQzMDM=",
"login": "jdalton",
"avatar_url": "https://avatars.githubusercontent.com/u/4303?v=4",
"url": "https://github.com/jdalton",
"type": "User",
"site_admin": false
}
],
"next_cursor": 2
}GET /v1/github/user_pull_requests
Pull Requests
Searches public GitHub pull requests authored by a user using GitHub's public search index. Pass username, handle, or url. Optional since and until filters use YYYY-MM-DD created dates. Results include the PR title, repo, state, created_at, and url, sorted by newest created first.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle required | query | string | GitHub username/handle of the user you want pull requests for |
since | query | string | Only return pull requests created on or after this date. Use YYYY-MM-DD. |
until | query | string | Only return pull requests created on or before this date. Use YYYY-MM-DD. |
next_cursor | query | number | Cursor from the previous response. Defaults to 1. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_pull_requests?handle=torvalds" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_pull_requests?handle=torvalds", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_pull_requests?handle=torvalds",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"pull_requests": [
{
"title": "Garmin: Report correct local time offset",
"repo": "subsurface/libdc",
"state": "closed",
"created_at": "2024-12-26T20:13:25Z",
"url": "https://github.com/subsurface/libdc/pull/69"
}
],
"next_cursor": 2,
"has_more": false
}GET /v1/github/user_repositories
Repositories
Retrieves a user's public repositories with repo metadata like description, language, stars, forks, topics, license, visibility, default branch, and timestamps. Pass username, handle, or url. Supports pagination with cursor, plus GitHub's type, sort, and direction parameters.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
handle | query | string | GitHub username/handle of the user you want the repositories for |
url | query | string | GitHub user URL, e.g. https://github.com/kentcdodds. |
type | query | string | Repository type. Defaults to owner. GitHub also supports all and member. one of: owner, all, member |
sort | query | string | Sort by created, updated, pushed, or full_name. Defaults to updated. one of: created, updated, pushed, full_name |
direction | query | string | Sort direction: ascending or descending. one of: asc, desc |
next_cursor | query | number | Cursor from the previous response. Defaults to 1. |
Request
curl "https://api.scrapall.bipsport.com/scapi/v1/github/user_repositories" \
-H "X-Scapi-Key: YOUR_API_KEY"const res = await fetch("https://api.scrapall.bipsport.com/scapi/v1/github/user_repositories", {
headers: { "X-Scapi-Key": "YOUR_API_KEY" }
});
const data = await res.json();import requests
r = requests.get(
"https://api.scrapall.bipsport.com/scapi/v1/github/user_repositories",
headers={"X-Scapi-Key": "YOUR_API_KEY"},
)
print(r.json())Response 200 (sample)
{
"repositories": [
{
"id": 320393623,
"node_id": "MDEwOlJlcG9zaXRvcnkzMjAzOTM2MjM=",
"name": "kentcdodds.com",
"full_name": "kentcdodds/kentcdodds.com",
"owner": {
"id": 1500684,
"login": "kentcdodds",
"avatar_url": "https://avatars.githubusercontent.com/u/1500684?v=4",
"url": "https://github.com/kentcdodds",
"type": "User"
},
"private": false,
"url": "https://github.com/kentcdodds/kentcdodds.com",
"description": "My personal website",
"fork": false,
"homepage": "https://kentcdodds.com",
"language": "MDX",
"forks_count": 654,
"stars_count": 2485,
"watchers_count": 2485,
"size": 53677,
"default_branch": "main",
"open_issues_count": 4,
"topics": [
"kentcdodds"
],
"license": {
"key": "other",
"name": "Other",
"spdx_id": "NOASSERTION"
},
"archived": false,
"disabled": false,
"visibility": "public",
"pushed_at": "2026-05-20T20:16:24Z",
"created_at": "2020-12-10T21:24:32Z",
"updated_at": "2026-05-21T16:43:37Z"
}
],
"next_cursor": 2
}