GitHub Trending API

GET   /api/v1/search?engine=github_trending

The GitHub Trending API returns the GitHub Trending lists as structured JSON: the repositories or developers GitHub ranks as trending today, this week, or this month. GitHub publishes no official API for these lists.

By default the response carries trending_repositories: each repository's id, name, owner, description, primary language and its color, total stars and forks, the stars it gained in the selected date range as current_period_stars, the contributors GitHub credits under "Built by" as built_by (including GitHub Apps such as dependabot[bot]), and is_sponsorable with a sponsors_link when the owner is sponsorable. Pass type=developers for trending_developers: each developer's rank, id, login, display name, avatar and popular_repository, or their company, location or joined_date when GitHub features no repository.

Filter either list by language and since. Repositories can also be filtered by spoken_language, which GitHub only knows for older repositories. For developers, sponsorable=true returns the developers who accept GitHub Sponsors, with is_sponsorable and their sponsors_link. GitHub leaves them out of the default developers list. GitHub lists up to 25 entries and has no pagination.

API Parameters

Filters

  • Name
    language
    Required
    Optional
    Description

    Programming language to filter by, as GitHub's slug (e.g. python, c++, c#, jupyter-notebook) or its display name (e.g. Jupyter Notebook), which is normalized to the slug. Use unknown for repositories without a detected language. In a URL, encode # as %23 (e.g. c%23), otherwise everything after it is dropped. Omit it for all languages. For a full list of supported values, refer to the GitHub Trending languages.

  • Name
    since
    Required
    Optional
    Description

    Date range GitHub ranks the list over, and the range current_period_stars counts stars for. Available options: daily (today, default), weekly (this week), or monthly (this month).

  • Name
    spoken_language
    Required
    Optional
    Description

    Spoken language repositories are written in, as an ISO 639-1 code, e.g. zh or en. GitHub classifies only older repositories by spoken language, so these lists rarely overlap the unfiltered trending list. Supported with type=repositories only. Sending it with type=developers returns a 400 error. For a full list of supported codes, refer to the GitHub Trending spoken languages.

  • Name
    sponsorable
    Required
    Optional
    Description

    Set to true to return the trending developers who accept GitHub Sponsors. GitHub leaves these developers out of its default developers list, so the two lists never overlap. Request both to cover every trending developer. Supported with type=developers only, and sponsorable=true with type=repositories returns a 400 error.

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_trending.

API key

  • Name
    api_key
    Required
    Required
    Description

    The api_key authenticates 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 true to 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

Trending repositories
GET
https://www.searchapi.io/api/v1/search?engine=github_trending
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "github_trending"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "search_metadata": {
    "id": "search_9XmVeqAp1RdHz9YAgKkGJZrx",
    "status": "Success",
    "created_at": "2026-10-19T10:48:51Z",
    "request_time_taken": 4.54,
    "parsing_time_taken": 0.31,
    "total_time_taken": 4.85,
    "request_url": "https://github.com/trending",
    "html_url": "https://www.searchapi.io/api/v1/searches/search_9XmVeqAp1RdHz9YAgKkGJZrx.html",
    "json_url": "https://www.searchapi.io/api/v1/searches/search_9XmVeqAp1RdHz9YAgKkGJZrx"
  },
  "search_parameters": {
    "engine": "github_trending",
    "type": "repositories"
  },
  "trending_repositories": [
    {
      "position": 1,
      "id": 1185389803,
      "name": "ai-job-search",
      "full_name": "MadsLorentzen/ai-job-search",
      "owner": {
        "login": "MadsLorentzen"
      },
      "link": "https://github.com/MadsLorentzen/ai-job-search",
      "description": "The job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.",
      "language": "Python",
      "language_color": "#3572A5",
      "stars": 55053,
      "forks": 17725,
      "current_period_stars": 2232,
      "built_by": [
        {
          "login": "claude",
          "id": 81847,
          "link": "https://github.com/claude",
          "avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
        },
        ...
      ],
      "sponsors_link": "https://github.com/sponsors/MadsLorentzen",
      "is_sponsorable": true
    },
    ...
  ]
}
Trending repositories by language this week
GET
https://www.searchapi.io/api/v1/search?engine=github_trending&language=python&since=weekly
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "github_trending",
  "language": "python",
  "since": "weekly"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "search_metadata": {
    "id": "search_6QeGdKRg9qeslZwyg8mBExyv",
    "status": "Success",
    "created_at": "2026-10-19T10:48:56Z",
    "request_time_taken": 1.73,
    "parsing_time_taken": 0.01,
    "total_time_taken": 1.74,
    "request_url": "https://github.com/trending/python?since=weekly",
    "html_url": "https://www.searchapi.io/api/v1/searches/search_6QeGdKRg9qeslZwyg8mBExyv.html",
    "json_url": "https://www.searchapi.io/api/v1/searches/search_6QeGdKRg9qeslZwyg8mBExyv"
  },
  "search_parameters": {
    "engine": "github_trending",
    "type": "repositories",
    "language": "python",
    "since": "weekly"
  },
  "trending_repositories": [
    {
      "position": 1,
      "id": 1100776768,
      "name": "claude-plugins-official",
      "full_name": "anthropics/claude-plugins-official",
      "owner": {
        "login": "anthropics"
      },
      "link": "https://github.com/anthropics/claude-plugins-official",
      "description": "Official, Anthropic-managed directory of high quality Claude Code Plugins.",
      "language": "Python",
      "language_color": "#3572A5",
      "stars": 43032,
      "forks": 4552,
      "current_period_stars": 4774,
      "built_by": [
        {
          "login": "github-actions[bot]",
          "link": "https://github.com/apps/github-actions",
          "avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4"
        },
        ...
      ]
    },
    ...
  ]
}
Trending repositories in a spoken language
GET
https://www.searchapi.io/api/v1/search?engine=github_trending&spoken_language=zh
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "github_trending",
  "spoken_language": "zh"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "search_metadata": {
    "id": "search_qWVwGvboYPYTAePbgmDQJaN4",
    "status": "Success",
    "created_at": "2026-10-19T10:48:57Z",
    "request_time_taken": 2.02,
    "parsing_time_taken": 0.01,
    "total_time_taken": 2.02,
    "request_url": "https://github.com/trending?spoken_language_code=zh",
    "html_url": "https://www.searchapi.io/api/v1/searches/search_qWVwGvboYPYTAePbgmDQJaN4.html",
    "json_url": "https://www.searchapi.io/api/v1/searches/search_qWVwGvboYPYTAePbgmDQJaN4"
  },
  "search_parameters": {
    "engine": "github_trending",
    "type": "repositories",
    "spoken_language": "zh"
  },
  "trending_repositories": [
    {
      "position": 1,
      "id": 141734943,
      "name": "Sequoia-X",
      "full_name": "sngyai/Sequoia-X",
      "owner": {
        "login": "sngyai"
      },
      "link": "https://github.com/sngyai/Sequoia-X",
      "description": "A股自动选股系统 — 多种技术形态自动扫描,收盘后自动运行并推送飞书",
      "language": "Python",
      "language_color": "#3572A5",
      "stars": 8159,
      "forks": 1644,
      "current_period_stars": 61,
      "built_by": [
        {
          "login": "sngyai",
          "id": 1306534,
          "link": "https://github.com/sngyai",
          "avatar_url": "https://avatars.githubusercontent.com/u/1306534?v=4"
        },
        ...
      ]
    },
    ...
  ]
}
Trending developers this month
GET
https://www.searchapi.io/api/v1/search?engine=github_trending&since=monthly&type=developers
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "github_trending",
  "type": "developers",
  "since": "monthly"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "search_metadata": {
    "id": "search_rb28K9xoXv9cG6zbpzE1BA7Q",
    "status": "Success",
    "created_at": "2026-10-19T10:46:19Z",
    "request_time_taken": 2.11,
    "parsing_time_taken": 0.03,
    "total_time_taken": 2.14,
    "request_url": "https://github.com/trending/developers?since=monthly",
    "html_url": "https://www.searchapi.io/api/v1/searches/search_rb28K9xoXv9cG6zbpzE1BA7Q.html",
    "json_url": "https://www.searchapi.io/api/v1/searches/search_rb28K9xoXv9cG6zbpzE1BA7Q"
  },
  "search_parameters": {
    "engine": "github_trending",
    "type": "developers",
    "since": "monthly"
  },
  "trending_developers": [
    {
      "position": 1,
      "id": 11325514,
      "login": "rynfar",
      "name": "Trevor Walker",
      "link": "https://github.com/rynfar",
      "avatar_url": "https://avatars.githubusercontent.com/u/11325514?v=4",
      "popular_repository": {
        "id": 1138589051,
        "name": "meridian",
        "full_name": "rynfar/meridian",
        "link": "https://github.com/rynfar/meridian",
        "description": "Use Claude and Antigravity with Pi, OpenCode and other coding clients. Local API bridge, usage dashboard and Mac app. Antigravity preview…"
      }
    },
    ...
  ]
}

Sponsorable developers

Sponsorable developers
GET
https://www.searchapi.io/api/v1/search?engine=github_trending&sponsorable=true&type=developers
Request
import requests

url = "https://www.searchapi.io/api/v1/search"
params = {
  "engine": "github_trending",
  "type": "developers",
  "sponsorable": "true"
}

response = requests.get(url, params=params)
print(response.text)
Response
{
  "search_metadata": {
    "id": "search_xbn58j7pJdLFBON8oDeN0V2d",
    "status": "Success",
    "created_at": "2026-10-19T10:49:00Z",
    "request_time_taken": 1.24,
    "parsing_time_taken": 0.02,
    "total_time_taken": 1.26,
    "request_url": "https://github.com/trending/developers?sponsorable=1",
    "html_url": "https://www.searchapi.io/api/v1/searches/search_xbn58j7pJdLFBON8oDeN0V2d.html",
    "json_url": "https://www.searchapi.io/api/v1/searches/search_xbn58j7pJdLFBON8oDeN0V2d"
  },
  "search_parameters": {
    "engine": "github_trending",
    "type": "developers",
    "sponsorable": "true"
  },
  "trending_developers": [
    {
      "position": 1,
      "id": 30525741,
      "login": "jackwener",
      "name": "jakevin",
      "link": "https://github.com/jackwener",
      "avatar_url": "https://avatars.githubusercontent.com/u/30525741?v=4",
      "sponsors_link": "https://github.com/sponsors/jackwener",
      "is_sponsorable": true,
      "popular_repository": {
        "id": 1181982220,
        "name": "OpenCLI",
        "full_name": "jackwener/OpenCLI",
        "link": "https://github.com/jackwener/OpenCLI",
        "description": "Make Any Website into CLI & Use your logged-in browser by AI agent."
      }
    },
    ...
  ]
}