GET公开接口
按版本号获取指定版本信息
支持根据语义化版本号或可比较版本号读取单个版本详情。
URL
/api/v1/public/{projectKey}/versions/by-version/{version}鉴权方式
无需鉴权
请求参数
Path 参数
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| projectKey | string | 是 | 项目主键 project_key(大小写不敏感) |
| version | string | 是 | 语义化版本号或可比较版本号(可 URL 编码) |
Query 参数
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| platform | windows | linux | macos | ios | android | web | others | 否 | 客户端平台声明(等价于 `x-verhub-platform` 请求头,优先级低于请求头)。 仅用于请求统计,不影响接口返回内容。 |
| platform_version | string | 否 | 客户端系统版本明细(等价于 `x-verhub-platform-version` 请求头,优先级低于请求头)。 仅用于请求统计,不影响接口返回内容。 |
| locale | string | 否 | 语言偏好。命中该项目注册过的语言(匹配大小写不敏感)且该版本存有对应译文时, `title` / `content` 返回译文,`locale` 字段标出实际语言; 以下三种情况一律返回版本的默认内容且 `locale` 为 `null`:不传本参数、 传了项目未注册的语言、该版本没有这个语言的译文。回落是逐字段的: 只译了标题的版本,更新说明仍返回默认内容。 |
Header 参数
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| x-verhub-platform | windows | linux | macos | ios | android | web | others | 否 | 客户端平台声明,仅用于请求统计,不影响接口返回内容。 识别优先级:本请求头 > query 参数 `platform` > 请求体 `platform` 字段 > User-Agent 推断。 取值大小写不敏感,无法识别时统计为 OTHERS。 具体系统版本请用 `x-verhub-platform-version` 单独提交;若把版本混在本字段里 (如 `Windows 11`、`ubuntu 24.04`),服务端会拆开,平台与版本分别入库。 建议 SDK 显式声明本请求头:服务端调用的 User-Agent 往往不可靠。 |
| x-verhub-platform-version | string | 否 | 客户端系统版本明细,仅用于请求统计,不影响接口返回内容。 自由文本,如 `11`、`ubuntu 24.04`、`26`;超过 32 字符视为无效直接丢弃。 识别优先级:本请求头 > query 参数 `platform_version` > 请求体 `platform_version` 字段 > 从 `platform` 中拆出的版本 > User-Agent 推断。 |
该接口无需请求体。
响应示例
200 响应
{
"id": "ver-001",
"version": "1.0.0",
"comparable_version": "1.0.0",
"title": "首发版本",
"content": "首个正式版本,支持版本发布与公告推送。",
"download_url": "https://example.com/download/verhub-1.0.0.zip",
"download_links": [
{
"url": "https://example.com/download/verhub-1.0.0.zip",
"name": "Windows 包",
"platform": "windows"
}
],
"forced": false,
"is_latest": true,
"is_preview": false,
"is_milestone": true,
"is_deprecated": false,
"platform": "windows",
"platforms": [
"windows",
"mac"
],
"custom_data": {
"channel": "stable"
},
"created_at": 1760000000,
"published_at": 1760000000
}GET
