PUBLIC READ-ONLY API
状态 API
公开、只读的 JSON API,用于读取江汉大学教务系统入口的可用性观测。无需登录,不接收 Cookie 或账号信息。数据为非官方观测,不构成服务承诺。
ENDPOINTS
接口
Base: https://status.arkfor.icu/api/v1
| 方法 | 路径 | 用途 | 缓存 |
|---|---|---|---|
| GET | /status | 所有服务摘要与总状态 | 30 秒 |
| GET | /services/{school}/{service} | 页面主数据:当前状态、可用率、90 天日汇总、最近检查 | 30 秒 |
| GET | /services/{school}/{service}/checks | 原始检查分页,最大 500 条 | 15 秒 |
| GET | /services/{school}/{service}/incidents | 事件分页;status=active|resolved|all | 30 秒 |
| GET | /incidents/{id} | 单条事件与更新时间线 | 30 秒 |
| GET | /healthz | 状态服务自身健康(不是目标状态) | 不缓存 |
| GET / HEAD | /status 等 | 支持 HEAD 与条件请求(ETag / 304) | — |
EXAMPLES
示例
curl -s https://status.arkfor.icu/api/v1/status
curl -s "https://status.arkfor.icu/api/v1/services/jhun/jwxt"
curl -s "https://status.arkfor.icu/api/v1/services/jhun/jwxt/incidents?status=active"
curl -s "https://status.arkfor.icu/api/v1/services/jhun/jwxt/checks?limit=20"
{
"generatedAt": "2026-10-24T10:40:15Z",
"overall": { "status": "operational", "freshness": "fresh" },
"services": [
{
"id": "jhun-jwxt",
"school": { "slug": "jhun", "name": "江汉大学" },
"service": "jwxt",
"name": "教务系统",
"status": "operational",
"freshness": "fresh",
"latencyMs": 182,
"uptime24h": 99.93,
"uptime90d": 99.91,
"pageUrl": "https://status.arkfor.icu/jhun/jwxt/"
}
]
}
SEMANTICS
状态与约定
| 字段 | 取值 | 含义 |
|---|---|---|
status | operational | 最近检测成功,无已确认中断 |
status | degraded_performance | 可达但慢,或存在间歇性失败 |
status | major_outage | 连续检测失败,已确认中断 |
status | unknown | 无数据、采集器过期或无法判断 |
freshness | fresh / stale / unknown | 数据是否在 2 个检测周期内 |
failureKind | timeout、connection_refused、tls_error 等 | 失败分类;客户端应容忍未知值 |
uptimePct | 数字或 null | 按时间加权;性能下降计为可用;无数据不计入分母 |
- 时间统一为 UTC RFC3339;每日统计使用
Asia/Shanghai日历日。 - 读接口允许跨域
GET/HEAD,Access-Control-Allow-Origin: *,不允许 credentials。 - 每个 IP 默认 120 次/分钟;超限返回
429与Retry-After。 - 支持
If-None-Match;304时无响应体。 - 错误格式:
{"error":{"code":"...","message":"...","requestId":"..."}}。 - 上报接口仅供已配置的探测节点使用,需要节点凭据,不属于公开 API。
本 API 为非官方、尽力而为的观测数据,不保证完整性、实时性或可用性;不得用于对学校的正式投诉、索赔或官方状态声明。