Release Hub API

软件检查更新、安装包托管与自动发布

返回管理后台

快速开始

读取接口无需鉴权。创建、上传和发布接口必须携带 Bearer API Key。提交中文 JSON 时必须使用 UTF-8,并设置 Content-Type: application/json; charset=utf-8。

服务地址https://update.ygs.plus
写入鉴权Authorization: Bearer YOUR_API_KEY

客户端检查更新

GET/api/v1/apps/{slug}/latest?platform={platform}

platform 支持 windows、linux、android、harmonyos、macos、ios、other。

curl "https://update.ygs.plus/api/v1/apps/desktop-client/latest?platform=windows"

响应字段

version、download_url、file_name、file_size、sha256、notes、mandatory、published_at。

列出软件

GET/api/v1/apps

接口创建新软件

POST/api/admin/apps
curl -X POST "https://update.ygs.plus/api/admin/apps" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"desktop-client","name":"桌面客户端","description":"跨平台桌面软件"}'

成功返回软件整数 id,后续发布版本时作为 app_id 使用。

接口发布版本

POST/api/admin/releases
curl -X POST "https://update.ygs.plus/api/admin/releases" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"app_id":1,"platform":"windows","version":"2.4.1","download_url":"https://example.com/app.exe","notes":"新增自动更新功能","mandatory":false}'
字段说明
app_id创建软件接口返回的 ID
platform目标平台
version版本号,如 2.4.1
download_url外部 URL 或上传接口返回的地址
notes更新说明
mandatory是否强制更新

上传安装包后发布

POST/api/admin/upload
curl -X POST "https://update.ygs.plus/api/admin/upload" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@./DesktopClient-2.4.1.exe"

响应返回 download_url、file_name、file_size 和 sha256,将这些字段连同版本信息提交给发布版本接口。支持最大 5 GiB 文件与 Range 断点下载。

下载审计

GET/api/admin/downloads?limit=100

需要 Bearer API Key。返回本站托管安装包的下载时间、IP、User-Agent、文件名、软件、平台、版本、Range 与实际传输字节数。外部 URL 的下载发生在第三方服务器,无法由本服务记录。

状态码与安全

状态码含义
200 / 201成功
400参数错误
401API Key 无效
404记录不存在
409软件或版本已存在

API Key 等同发布权限,只应保存在服务器环境变量或 CI Secret 中,严禁打包进客户端。