GitHub Search API
The GitHub Search API returns results from
GitHub
as structured JSON. A single engine covers every GitHub search vertical, selected with the
type parameter: repositories (default), users,
issues, pull_requests, commits, topics,
discussions, packages, wikis and marketplace.
The q parameter
accepts GitHub's full search qualifier syntax (for example language:ruby stars:>1000).
API Parameters
Search Query
-
- Name
-
q - Required
- Required
- Description
-
The search query. Supports GitHub's search qualifier syntax, e.g.
language:ruby stars:>1000 topic:clifor repositories, oris:pr is:mergedfor issues.
Search Type
-
- Name
-
type - Required
- Optional
- Description
-
The GitHub search vertical to query. Each type returns its own result shape. Options are:
repositories- repositories (default)users- users and organizationsissues- issues and pull requestspull_requests- pull requests onlycommits- commitstopics- topicsdiscussions- discussionspackages- packageswikis- wiki pagesmarketplace- Marketplace apps, Actions and GitHub Models
Sorting
-
- Name
-
sort - Required
- Optional
- Description
-
Sorts the results by the given field. By default, results are ranked by GitHub's
Best matchrelevance. The available values depend ontype:- repositories:
stars,forks,help_wanted_issues,updated - users:
followers,repositories,joined - issues, pull_requests:
created,updated,comments,reactions,interactions - commits:
author_date,committer_date - discussions:
updated,comments,reactions,interactions - packages:
updated,created,downloads - wikis:
updated - marketplace:
updated,created,popularity - topics: not sortable
- repositories:
-
- Name
-
order - Required
- Optional
- Description
-
Sort direction. Requires
sort— sendingorderon its own is rejected with a400error rather than ignored. Options aredesc(default) andasc.
Pagination
-
- Name
-
page - Required
- Optional
- Description
-
The page of results to return. GitHub serves 10 results per page, up to page 100 (the first 1,000 results).
Engine
-
- Name
-
engine - Required
- Required
- Description
-
Parameter defines an engine that will be used to retrieve real-time data. It must be set to
github_search.
API key
-
- Name
-
api_key - Required
- Required
- Description
-
The
api_keyauthenticates your requests. Use it as a query parameter (https://www.searchapi.io/api/v1/search?api_key=YOUR_API_KEY) or in the Authorization header (Bearer YOUR_API_KEY).
Zero Data Retention
-
- Name
-
zero_retention - Enterprise Only
- Enterprise Only
- Required
- Optional
- Description
-
Set this parameter to
trueto disable all logging and persistent storage. No request parameters, HTML, or JSON responses are stored or logged. Suitable for high-compliance use cases. Debugging and support may be limited while enabled.
API Examples
Repositories
https://www.searchapi.io/api/v1/search?engine=github_search&q=react&sort=stars&type=repositories
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "repositories",
"q": "react",
"sort": "stars"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_LqdKeRrXoaEwu9YVo0Pl1Ymz",
"status": "Success",
"created_at": "2026-08-31T14:09:27Z",
"request_time_taken": 2.21,
"parsing_time_taken": 0.01,
"total_time_taken": 2.22,
"request_url": "https://github.com/search?q=react&type=repositories&s=stars",
"html_url": "https://www.searchapi.io/api/v1/searches/search_LqdKeRrXoaEwu9YVo0Pl1Ymz.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_LqdKeRrXoaEwu9YVo0Pl1Ymz"
},
"search_parameters": {
"engine": "github_search",
"q": "react",
"type": "repositories",
"sort": "stars"
},
"search_information": {
"query": "react",
"total_results": 7195486,
"page": 1,
"time_taken": 0.246
},
"topic": {
"name": "react",
"display_name": "React",
"description": "React is an open source JavaScript library used for designing user interfaces.",
"created_by": "Jordan Walke",
"released": "March 2013",
"stargazer_count": 115142,
"applied_count": 668618,
"link": "https://github.com/topics/react",
"github_url": "https://github.com/facebook/react",
"logo": "https://explore-feed.github.com/topics/react/react.png",
"wikipedia_url": "https://en.wikipedia.org/wiki/React_(JavaScript_library)",
"aliases": [
"react-js",
...
],
"related": [
"angular",
...
],
"is_curated": true,
"is_featured": true
},
"organic_results": [
{
"position": 1,
"id": 28457823,
"name": "freeCodeCamp",
"full_name": "freeCodeCamp/freeCodeCamp",
"link": "https://github.com/freeCodeCamp/freeCodeCamp",
"description": "freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.",
"owner": {
"login": "freeCodeCamp",
"id": 9892522,
"type": "Organization",
"avatar_url": "https://avatars.githubusercontent.com/u/9892522?v=4"
},
"stars": 454771,
"language": "TypeScript",
"language_color": "#3178c6",
"topics": [
"react",
...
],
"good_first_issue_issues_count": 0,
"help_wanted_issues_count": 8,
"visibility": "public",
"updated_at": "2026-08-31T11:07:23.525Z",
"is_sponsorable": true,
"has_funding_file": true,
"has_issues": true
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=react&type=repositories&s=stars&p=2"
},
"language_filters": [
{
"name": "JavaScript",
"color": "#f1e05a",
"query": "language:JavaScript"
},
...
]
}
Users
https://www.searchapi.io/api/v1/search?engine=github_search&q=torvalds&sort=followers&type=users
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "users",
"q": "torvalds",
"sort": "followers"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_a6KXlErN3Ej2fl7wpYvP850b",
"status": "Success",
"created_at": "2026-08-31T14:09:29Z",
"request_time_taken": 1.84,
"parsing_time_taken": 0.02,
"total_time_taken": 1.85,
"request_url": "https://github.com/search?q=torvalds&type=users&s=followers",
"html_url": "https://www.searchapi.io/api/v1/searches/search_a6KXlErN3Ej2fl7wpYvP850b.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_a6KXlErN3Ej2fl7wpYvP850b"
},
"search_parameters": {
"engine": "github_search",
"q": "torvalds",
"type": "users",
"sort": "followers"
},
"search_information": {
"query": "torvalds",
"total_results": 461,
"page": 1,
"time_taken": 0.048
},
"organic_results": [
{
"position": 1,
"login": "torvalds",
"name": "Linus Torvalds",
"id": 1024025,
"link": "https://github.com/torvalds",
"avatar_url": "https://avatars.githubusercontent.com/u/1024025?v=4",
"location": "Portland, OR",
"followers": 319254,
"repos": 12
},
...
],
"pagination": {
"current": 1,
"total_pages": 47,
"next": "https://github.com/search?q=torvalds&type=users&s=followers&p=2"
},
"language_filters": [
{
"name": "Python",
"color": "#3572A5",
"query": "language:Python"
},
...
]
}
Issues & Pull Requests
type=issues searches issues and pull requests together, the same way GitHub's
Issues tab does. Use type=pull_requests below when you want pull requests only.
https://www.searchapi.io/api/v1/search?engine=github_search&q=memory+leak&sort=comments&type=issues
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "issues",
"q": "memory leak",
"sort": "comments"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_x7L8KlJ0oGB6TdxYg6Y1GkOE",
"status": "Success",
"created_at": "2026-08-31T14:09:32Z",
"request_time_taken": 5.28,
"parsing_time_taken": 0.01,
"total_time_taken": 5.29,
"request_url": "https://github.com/search?q=memory+leak&type=issues&s=comments",
"html_url": "https://www.searchapi.io/api/v1/searches/search_x7L8KlJ0oGB6TdxYg6Y1GkOE.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_x7L8KlJ0oGB6TdxYg6Y1GkOE"
},
"search_parameters": {
"engine": "github_search",
"q": "memory leak",
"type": "issues",
"sort": "comments"
},
"search_information": {
"query": "memory leak",
"total_results": 408167,
"page": 1,
"time_taken": 3.471
},
"organic_results": [
{
"position": 1,
"id": 5008075316,
"number": 48838,
"title": "[aw] No-Op Runs",
"snippet": "... dispatch). No race conditions or data corruption risks found. Result recorded in cache-memory for\nround-robin tracking; no GitHub write action needed.\n\nGenerated from Daily MCP Tool Concurrency Analysis ...",
"link": "https://github.com/github/gh-aw/issues/48838",
"state": "open",
"comments": 2500,
"labels": [
"agentic-workflows",
...
],
"author": {
"login": "github-actions[bot]",
"avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4"
},
"created_at": "2026-07-29T10:14:36.000Z",
"repository": {
"id": 1036865607,
"name": "gh-aw",
"full_name": "github/gh-aw",
"owner": {
"login": "github",
"id": 9919,
"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4"
},
"updated_at": "2026-08-31T14:03:29.638Z",
"has_issues": true
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=memory+leak&type=issues&s=comments&p=2"
}
}
Pull Requests
type=pull_requests returns the same result shape as type=issues, narrowed to
pull requests, and adds the language_filters facet GitHub shows on this tab.
https://www.searchapi.io/api/v1/search?engine=github_search&q=fix&sort=created&type=pull_requests
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "pull_requests",
"q": "fix",
"sort": "created"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_kQzy2PnvoBkZCDqO3Yx0EK15",
"status": "Success",
"created_at": "2026-08-31T14:09:38Z",
"request_time_taken": 3.58,
"parsing_time_taken": 0.01,
"total_time_taken": 3.59,
"request_url": "https://github.com/search?q=fix&type=pullrequests&s=created",
"html_url": "https://www.searchapi.io/api/v1/searches/search_kQzy2PnvoBkZCDqO3Yx0EK15.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_kQzy2PnvoBkZCDqO3Yx0EK15"
},
"search_parameters": {
"engine": "github_search",
"q": "fix",
"type": "pull_requests",
"sort": "created"
},
"search_information": {
"query": "fix",
"total_results": 217948423,
"page": 1,
"time_taken": 1.819
},
"organic_results": [
{
"position": 1,
"id": 4403123212,
"number": 56,
"title": "fix: route the remaining Italian strings through i18n",
"snippet": "What changed\n\nThe 0.9.0 translation pass left hardcoded Italian in a handful of surfaces. They now resolve through the i18n resources\nin both languages:\n\n - Repository detail panel — the pulito / N modifiche ...",
"link": "https://github.com/LorenzoVicino/repo-control/pull/56",
"state": "open",
"is_pull_request": true,
"reviewable_state": "ready",
"comments": 0,
"author": {
"login": "LorenzoVicino",
"avatar_url": "https://avatars.githubusercontent.com/u/104823393?v=4"
},
"created_at": "2026-08-31T14:09:37.000Z",
"repository": {
"id": 1283875277,
"name": "repo-control",
"full_name": "LorenzoVicino/repo-control",
"owner": {
"login": "LorenzoVicino",
"id": 104823393,
"avatar_url": "https://avatars.githubusercontent.com/u/104823393?v=4"
},
"updated_at": "2026-08-31T14:06:49.858Z",
"has_issues": true
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=fix&type=pullrequests&s=created&p=2"
},
"language_filters": [
{
"name": "JavaScript",
"color": "#f1e05a",
"query": "language:JavaScript"
},
...
]
}
Commits
https://www.searchapi.io/api/v1/search?engine=github_search&q=bugfix&sort=author_date&type=commits
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "commits",
"q": "bugfix",
"sort": "author_date"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_wr07vRBGpw4dcPYwgb6ZlXJj",
"status": "Success",
"created_at": "2026-08-31T14:09:41Z",
"request_time_taken": 3.73,
"parsing_time_taken": 0.01,
"total_time_taken": 3.74,
"request_url": "https://github.com/search?q=bugfix&type=commits&s=author-date",
"html_url": "https://www.searchapi.io/api/v1/searches/search_wr07vRBGpw4dcPYwgb6ZlXJj.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_wr07vRBGpw4dcPYwgb6ZlXJj"
},
"search_parameters": {
"engine": "github_search",
"q": "bugfix",
"type": "commits",
"sort": "author_date"
},
"search_information": {
"query": "bugfix",
"total_results": 4046416,
"page": 1,
"time_taken": 2.041
},
"organic_results": [
{
"position": 1,
"sha": "f178f9501b2b8770409c1de9bc8465bdce30e5e2",
"subject": "Merge pull request #2612 from laggardkernel/bugfix/realpath-in-versions",
"message": "Merge pull request #2612 from laggardkernel/bugfix/realpath-in-versions\n\nFix link resolving in pyenv-versions",
"snippet": "Fix link resolving in pyenv-versions",
"link": "https://github.com/WondWorkshop/detectfaces/commit/f178f9501b2b8770409c1de9bc8465bdce30e5e2",
"author_date": "2090-09-03T11:11:10.000+08:00",
"authors": [
{
"login": "WondWorkshop",
"name": "WondWorkshop",
"avatar_url": "https://avatars.githubusercontent.com/u/226275773?v=4"
},
...
],
"committer": {
"login": "WondWorkshop",
"name": "WondWorkshop",
"avatar_url": "https://avatars.githubusercontent.com/u/226275773?v=4"
},
"repository": {
"id": 1037237097,
"name": "detectfaces",
"full_name": "WondWorkshop/detectfaces",
"owner": {
"login": "WondWorkshop",
"id": 226275773,
"avatar_url": "https://avatars.githubusercontent.com/u/226275773?v=4"
},
"updated_at": "2025-08-15T05:08:03.225Z",
"has_issues": true
},
"verification": {
"status": "unsigned",
"reason": "unsigned"
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=bugfix&type=commits&s=author-date&p=2"
}
}
Topics
https://www.searchapi.io/api/v1/search?engine=github_search&q=machine-learning&type=topics
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "topics",
"q": "machine-learning"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_KaMw9PG4o4X1SlGwokEzRrvY",
"status": "Success",
"created_at": "2026-08-31T14:09:46Z",
"request_time_taken": 2.05,
"parsing_time_taken": 0.01,
"total_time_taken": 2.06,
"request_url": "https://github.com/search?q=machine-learning&type=topics",
"html_url": "https://www.searchapi.io/api/v1/searches/search_KaMw9PG4o4X1SlGwokEzRrvY.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_KaMw9PG4o4X1SlGwokEzRrvY"
},
"search_parameters": {
"engine": "github_search",
"q": "machine-learning",
"type": "topics"
},
"search_information": {
"query": "machine-learning",
"total_results": 1494,
"page": 1,
"time_taken": 0.053
},
"organic_results": [
{
"position": 1,
"id": 2169,
"name": "machine-learning",
"display_name": "Machine learning",
"link": "https://github.com/topics/machine-learning",
"description": "Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.",
"stargazer_count": 83246,
"repository_count": 280000,
"is_repository_count_approximate": true,
"applied_count": 280958,
"aliases": [
"machine-learning-algorithms",
...
],
"wikipedia_url": "https://en.wikipedia.org/wiki/Machine_learning",
"is_curated": true
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=machine-learning&type=topics&p=2"
}
}
Discussions
https://www.searchapi.io/api/v1/search?engine=github_search&q=kubernetes&sort=comments&type=discussions
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "discussions",
"q": "kubernetes",
"sort": "comments"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_9YXGkBJ1pQDvH4x93PLOKqQN",
"status": "Success",
"created_at": "2026-08-31T14:09:48Z",
"request_time_taken": 3.69,
"parsing_time_taken": 0.01,
"total_time_taken": 3.69,
"request_url": "https://github.com/search?q=kubernetes&type=discussions&s=comments",
"html_url": "https://www.searchapi.io/api/v1/searches/search_9YXGkBJ1pQDvH4x93PLOKqQN.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_9YXGkBJ1pQDvH4x93PLOKqQN"
},
"search_parameters": {
"engine": "github_search",
"q": "kubernetes",
"type": "discussions",
"sort": "comments"
},
"search_information": {
"query": "kubernetes",
"total_results": 35191,
"page": 1,
"time_taken": 1.971
},
"organic_results": [
{
"position": 1,
"id": 3593275,
"number": 125,
"title": "Future Ready Talent 🚀",
"snippet": "Knowledge Check\n\nYou have an Azure subscription that contains an Azure Active Directory (Azure AD) tenant named contoso.com and an Azure\nKubernetes Service (AKS) cluster named AKS1. An administrator ...",
"body": "Future Ready Talent 🚀\n\nFuture Ready Talent https://futurereadytalent.in/ is a virtual internship platform with an opportunity to learn the\nin-demand Azure cloud security skills aligned to industry needs. The program aims at preparing learners to work towards\nsolving business challenges and creating innovative solutions using the power of Microsoft Azure GitHub tools.\n\nJoin the GitHub Discussion\n\nWe ve enabled the GitHub Discussions feature here for you to ask and answer technical questions while participating in\nFuture Ready Talent - student internship program. Our program partner, EY, will have their engineering team (\n@ey-mentor1 , @ey-mentor2 , @ey-mentor3 , @ey-mentor4 ) to support and answer your questions.\n\nHow to start a GitHub Discussion thread?\n\n👉🏻 Continue the conversation on this Discussion by replying below\n\nOR\n\n - Navigate to the GitHub India public repository\n - Click on the Discussions tab, and select the New Discussion button in green\n - In the “Select Category” drop-down menu, choose a category (i.e. Students in this case) for your discussion\n - Type a title and body for your discussion with your question\n - Click Start discussion\n\n⚠️ For any platform/program related queries please raise a support ticket within the Future Ready Talent platform.\n\n🎒Apply for GitHub Student Developer Pack\n\nApplications are generally processed within a few days, but may take longer in peak periods such as the start of a new\nsemester. Please note our support team is unable to expedite the review process, so opening a support ticket will not\ndecrease the review time. At the busiest times of year, application review times can be up to six weeks. Have more\nquestions? Check out the Student Developer Pack FAQ\n",
"link": "https://github.com/github/india/discussions/125",
"comments": 5587,
"author": {
"login": "arkodyuti",
"id": 10099375,
"avatar_url": "https://avatars.githubusercontent.com/u/10099375?v=4"
},
"created_at": "2021-09-26T15:48:02.000+02:00",
"updated_at": "2026-03-08T20:44:58.000+01:00",
"repository": {
"id": 297419763,
"name": "india",
"full_name": "github/india",
"owner": {
"login": "github",
"id": 9919,
"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4"
},
"updated_at": "2025-02-14T23:32:37.670Z"
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=kubernetes&type=discussions&s=comments&p=2"
}
}
Packages
https://www.searchapi.io/api/v1/search?engine=github_search&q=react&sort=downloads&type=packages
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "packages",
"q": "react",
"sort": "downloads"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_mQdZY24X3k8Nt2QBpyxG15W7",
"status": "Success",
"created_at": "2026-08-31T14:09:52Z",
"request_time_taken": 1.9,
"parsing_time_taken": 0.01,
"total_time_taken": 1.9,
"request_url": "https://github.com/search?q=react&type=registrypackages&s=downloads",
"html_url": "https://www.searchapi.io/api/v1/searches/search_mQdZY24X3k8Nt2QBpyxG15W7.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_mQdZY24X3k8Nt2QBpyxG15W7"
},
"search_parameters": {
"engine": "github_search",
"q": "react",
"type": "packages",
"sort": "downloads"
},
"search_information": {
"query": "react",
"total_results": 8502,
"page": 1,
"time_taken": 0.223
},
"organic_results": [
{
"position": 1,
"id": "rms-1243839",
"name": "reactive-resume",
"link": "https://github.com/users/amruthpillai/packages/container/package/reactive-resume",
"package_type": "container",
"downloads": 6616717,
"latest_version": "sha256-27d682727ebd96c68fdc50d8e49c717ebbf3797e8e311e0b8ed2c5b35dc663f5.sig",
"latest_version_published_at": "2026-08-28T20:47:01.622448Z",
"latest_version_digest": "sha256:ce37c2b6b88267662c4a0529fdefa4b77c37dcfd55f19fb9e77d27969852db93",
"visibility": "public",
"created_at": "2022-03-07T21:45:16.21203Z",
"updated_at": "2026-08-28T20:47:01.630Z",
"repository": {
"id": 249995750,
"name": "reactive-resume",
"full_name": "amruthpillai/reactive-resume"
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=react&type=registrypackages&s=downloads&p=2"
},
"package_type_filters": [
{
"name": "npm",
"query": "package_type:npm"
},
...
]
}
Wikis
https://www.searchapi.io/api/v1/search?engine=github_search&q=installation&sort=updated&type=wikis
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "wikis",
"q": "installation",
"sort": "updated"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_MJjKW8mR3ZGJsKqepn9redbv",
"status": "Success",
"created_at": "2026-08-31T14:09:54Z",
"request_time_taken": 2.28,
"parsing_time_taken": 0.01,
"total_time_taken": 2.29,
"request_url": "https://github.com/search?q=installation&type=wikis&s=updated",
"html_url": "https://www.searchapi.io/api/v1/searches/search_MJjKW8mR3ZGJsKqepn9redbv.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_MJjKW8mR3ZGJsKqepn9redbv"
},
"search_parameters": {
"engine": "github_search",
"q": "installation",
"type": "wikis",
"sort": "updated"
},
"search_information": {
"query": "installation",
"total_results": 335736,
"page": 1,
"time_taken": 0.319
},
"organic_results": [
{
"position": 1,
"id": "e787cb9e1a29d7f0ebcce3d6444d544f25c7194d",
"title": "sentinel",
"snippet": ". Action: Audit all userland and package installation boundaries for missing capability restrictions and ensure secrets are loaded exclusively via secure hardware/environment storage.",
"body": "Sentinel's Journal - Security & Hardening Learnings Philosophy Security is everyone's responsibility. Defense in depth - multiple layers of protection. Fail securely - errors should not expose sensitive data. Trust nothing, verify everything. Critical Learnings 2025-05-18 - Privilege Separation and Memory Safety Guards Learning: Hardcoded fallback tokens, un-sandboxed maintainer scripts, and unsafe buffer operations pose grave security risks in operating system core components. Enforcing Capsicum/pledge sandboxing and strict input validation prevents privilege escalation and command injection. Action: Audit all userland and package installation boundaries for missing capability restrictions and ensure secrets are loaded exclusively via secure hardware/environment storage.",
"link": "https://github.com/AaryanSinghChauhan09/SigmaOS/wiki/sentinel",
"filename": "sentinel.md",
"format": "markdown",
"updated_at": "2026-08-31T19:39:00.000+05:30",
"repository": {
"id": 1174137030,
"name": "SigmaOS",
"full_name": "AaryanSinghChauhan09/SigmaOS",
"owner": {
"login": "AaryanSinghChauhan09",
"id": 182842230,
"avatar_url": "https://avatars.githubusercontent.com/u/182842230?v=4"
},
"updated_at": "2026-08-31T14:09:51.563Z",
"has_issues": true
}
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=installation&type=wikis&s=updated&p=2"
}
}
Marketplace
https://www.searchapi.io/api/v1/search?engine=github_search&q=ci&sort=popularity&type=marketplace
- Python
- Node
- Ruby
- Java
- Go
- PHP
- Bash
- R
- Kotlin
- Swift
- C#
- C
- C++
- requests
import requests
url = "https://www.searchapi.io/api/v1/search"
params = {
"engine": "github_search",
"type": "marketplace",
"q": "ci",
"sort": "popularity"
}
response = requests.get(url, params=params)
print(response.text)
{
"search_metadata": {
"id": "search_vr7K8ndWgWe1iDx83P45k2mY",
"status": "Success",
"created_at": "2026-08-31T14:09:57Z",
"request_time_taken": 1.89,
"parsing_time_taken": 0.05,
"total_time_taken": 1.94,
"request_url": "https://github.com/search?q=ci&type=marketplace&s=popularity",
"html_url": "https://www.searchapi.io/api/v1/searches/search_vr7K8ndWgWe1iDx83P45k2mY.html",
"json_url": "https://www.searchapi.io/api/v1/searches/search_vr7K8ndWgWe1iDx83P45k2mY"
},
"search_parameters": {
"engine": "github_search",
"q": "ci",
"type": "marketplace",
"sort": "popularity"
},
"search_information": {
"query": "ci",
"total_results": 3358,
"page": 1,
"time_taken": 0.095
},
"organic_results": [
{
"position": 1,
"id": 7,
"listing_type": "marketplace_listing",
"name": "CircleCI",
"slug": "circleci",
"link": "https://github.com/marketplace/circleci",
"state": "verified",
"description": "Ship trusted code with confidence. Fast feedback, flexible execution, and enterprise-grade security",
"full_description": "CircleCI is the CI/CD platform built for speed, scale, and compliance - trusted by the world s best engineering teams to\nbuild, test, and deploy with confidence. With flexible execution environments, intelligent build optimization, and\nAI-driven validation with Chunk, CircleCI provides the compute, automation, and insights that power modern software\ndelivery.\n",
"extended_description": "### How to set up CircleCI \n\nFor the best experience, we recommend setting up your CircleCI integration through the CircleCI web app rather than installing from the GitHub Marketplace.\n\n## To integrate via OAuth (this listing's integration):\n\n- New to CircleCI? Sign up using \"Log in with GitHub\" at https://circleci.com/signup - your organizations and repositories will be automatically connected through OAuth.\n- Already have a CircleCI account? Follow the GitHub OAuth integration guide: https://circleci.com/docs/guides/integration/github-integration/#connect-a-github-account\n\n## To integrate via the CircleCI GitHub App:\n\n- Log in to your CircleCI account\n- Navigate to Organization Settings > VCS Connections\n- Follow the prompts to install and configure the CircleCI GitHub App\n\nBoth integrations can be used alongside each other. Learn more: [Using the CircleCI GitHub App in an OAuth organization - CircleCI Docs](https://circleci.com/docs/guides/integration/using-the-circleci-github-app-in-an-oauth-org/) \n\n### Why teams choose CircleCI\n\n**Lightning-fast feedback** - Intelligent caching, test splitting, and autoscaling deliver some of the fastest build times in CI/CD, so your team spends less time waiting and more time shipping.\n\n**Flexible execution** - Run jobs across a wide range of environments - Docker, Linux, macOS, Windows, Arm, GPU - or bring your own infrastructure with self-hosted runners.\n\n**Enterprise-grade confidence** - FedRAMP authorized and SOC 2 Type II certified, with audit logs, OIDC, and granular access controls to protect your software supply chain.\n\n**Autonomous validation** - Chunk, CircleCI's CI/CD agent, tackles flaky tests, failed builds, and configuration drift so your team can focus on building, not pipeline maintenance.\n\nNeed help? Visit [Welcome to CircleCI Documentation - CircleCI Docs](https://circleci.com/docs/) or [CircleCI Support Center](https://support.circleci.com/) ",
"listable_type": "OauthApplication",
"primary_category": "Continuous integration",
"secondary_category": "Mobile CI",
"installation_count": 415141,
"logo": "https://avatars.githubusercontent.com/ml/7?v=4",
"owner_login": "circleci",
"pricing_url": "https://circleci.com/pricing/?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"company_url": "https://circleci.com/?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"documentation_url": "https://circleci.com/docs/?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"support_url": "https://discuss.circleci.com?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"status_url": "http://status.circleci.com/",
"installation_url": "https://circleci.com/login?return-to=%2Fdashboard%3Futm_medium%3Dpartner%26utm_campaign%3Dghmarketplace%26utm_source%3Dgithub",
"learn_more_url": "https://circleci.com?utm_source=github.com&utm_medium=referral&utm_campaign=integrations",
"privacy_policy_url": "https://circleci.com/privacy/?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"tos_url": "https://circleci.com/terms-of-service/?utm_source=github&utm_medium=partner&utm_campaign=ghmarketplace",
"is_verified_owner": true,
"is_recommended": true
},
...
],
"pagination": {
"current": 1,
"total_pages": 100,
"next": "https://github.com/search?q=ci&type=marketplace&s=popularity&p=2"
}
}