Chuyển đến nội dung chính

API danh mục

Truy vấn danh mục plugin dưới dạng JSON từ chính công cụ của bạn.

Danh mục phơi ra đúng truy vấn mà trang danh sách đang chạy, dưới dạng JSON, cho các công cụ muốn xây dựng trên nó. Không cần API key, không có tiền tố locale: dữ liệu plugin không bao giờ được dịch, nên một endpoint phục vụ tất cả mọi người.

GET /api/plugins?q=&category=&author=&web=1&sort=stars&page=1&per_page=50
Param Ý nghĩa
q Tìm kiếm toàn văn trên name, description và README
category Một tag từ danh mục (danh sách category trên trang; giá trị là một npm keyword)
author Tên đăng nhập của tác giả trên npm / GitHub / Gitee
web 1 để chỉ giữ lại các plugin có giao diện web
sort stars (mặc định), recent, name
page Số trang bắt đầu từ 1, mặc định 1
per_page 1–100, mặc định 50

Phản hồi

{
  "total": 2307,
  "page": 1,
  "perPage": 50,
  "pages": 47,
  "plugins": [
    {
      "slug": "upstream-radar",
      "npmName": "upstream-radar",
      "name": "upstream-radar",
      "description": "watch upstream repos for new releases",
      "version": "0.1.0",
      "license": "MIT",
      "homepage": null,
      "totalStars": 12,
      "totalForks": 0,
      "hasWebUi": false,
      "publishedAt": "2026-08-20T07:17:36.155Z",
      "updatedAt": "2026-08-22T02:00:00.000Z",
      "tags": ["agent", "dsh"]
    }
  ]
}

totalStars là tổng cộng dồn qua mọi mirror nguồn (một plugin publish trên cả GitHub lẫn Gitee được tính cả hai); tags là các npm keyword của package. Không có đối tượng liên kết next/prev — hãy tự tính chúng từ pagepages.

Ví dụ

curl -s 'https://plugins.example.com/api/plugins?q=memory&sort=stars&per_page=10'

Danh mục làm mới hằng ngày lúc 02:00 UTC, nên các con số có thể trễ hơn một bản phát hành tới một ngày — cùng lịch trình mà các mục trên trang tuân theo.

Cập nhật lần cuối 2026-08-22