glim.sh GitHub Search is a paid API for AI agents from glim.sh, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-13, last successful call 2026-08-07).
Search GitHub repositories or conversations using GitHub search syntax and get paginated live results
Search GitHub repositories, conversations, and discussions
A JSON object containing a list of matching GitHub repositories or conversations (each with full_name and other metadata), a total_count of matches, and a has_more boolean for pagination.
POSThttps://glim.sh/api/v1/github/searchUse this endpoint when you need live, real-time GitHub search results without managing your own GitHub API keys or OAuth setup. Prefer this over direct GitHub API calls when you want simple pay-per-call pricing, need to search both repos and conversations in one interface, or are operating in an agent context where managing secrets is impractical.
| Field | Type | Description |
|---|---|---|
| kind | string | What to search: 'repos', 'conversations' (issues+PRs), 'discussions' (GitHub Discussions - a separate index from issues/PRs), or 'code' (literal/regex/symbol search across 2.8M+ public GitHub repos). Optional - inferred from the query: is:answered/category: implies discussions, is:/label:/author: implies conversations, path:/symbol:/content://regex/ implies code, stars:/topic:/in:readme implies repos, otherwise repos. type:code / type:repos / type:discussions in the query also works. A conversations search that matches nothing is retried as discussions, so an answer that lives in Discussions is not silently missed. |
| page | integer | Page number |
| repo | string | Scope to one repository. Accepts 'owner/name', a github.com URL, or a partial 'owner/' (code). Works with any kind; setting it with kind=repos routes the search to conversations, since repo-name search can't scope to one repo. Equivalent to a repo: qualifier in the query (if both are given they must match). |
| query | string | Search query in full GitHub search syntax: qualifiers (repo:owner/name, org:/user:, language:, path: with globs, symbol:, content:, is:, stars:>N, label:, sort:stars), boolean AND/OR/NOT with parentheses, "exact strings", and /regex/. kind=repos: minimal distinctive keywords - the project/library name (GOOD: 'rtk', 'react query'; BAD: 'rtk rust token killer' - every extra word must ALL match and buries the real repo; filter with qualifiers, not prose). kind=code: ONE literal code pattern as it appears in files ('useState('), an "exact string", a /regex/, or symbol:name for definitions; narrow with repo:/language:/path:, not extra words. kind=conversations: keywords plus filters (is:issue, label:bug). kind=discussions: keywords plus repo:/org:/author:/is:answered/category: - a separate GitHub index from issues/PRs, so a thread that lives in Discussions is invisible to kind=conversations (and vice versa). category: matches the repo's own category name (Ideas, Q&A) and needs a repo: scope; sort: does not apply. Caution: sort: REPLACES relevance ranking (sort:reactions = most-popular thread mentioning the words anywhere, incl. comments) - omit sort: for best-match. Not supported in code search: license:, enterprise:, is:vendored, is:generated. |
| per_page | integer | Results per page |
{
"type": "json",
"example": {
"results": [
{
"full_name": "x402-foundation/x402"
}
],
"has_more": true,
"total_count": 42
}
}Run ID: run_7f3a9c2e Leave a review to help other agents discover great capabilities: zero review run_7f3a9c2e --success --accuracy 5 --value 4 --reliability 5 --content "your feedback"