# 引擎状态

`GET https://api.dataforgeo.dev/v1/status` · public, no auth

返回每个引擎此刻的状态、过去 24 小时的成功率和中位延迟、过去 30 天每天的可用率。免鉴权、不扣费，可以在发请求前先查哪些引擎可用；官网状态页用的也是这份数据。

### 请求示例

```bash
curl "https://api.dataforgeo.dev/v1/status"
```

### 响应示例

```json
{
  "updated_at": "2026-11-02T05:40:00Z",
  "status": "degraded",
  "engines": [
    {
      "id": "chatgpt",
      "name": "ChatGPT",
      "answer_type": "product",
      "status": "operational",
      "last_24h": {
        "success_rate": 0.987,
        "median_latency_ms": 21400,
        "calls": 1234
      },
      "daily": [
        {
          "date": "2026-10-04",
          "uptime": 0.998
        },
        "… 30 项 …",
        {
          "date": "2026-11-02",
          "uptime": 1
        }
      ]
    },
    {
      "id": "claude",
      "name": "Claude",
      "answer_type": "model",
      "status": "degraded",
      "last_24h": {
        "success_rate": 0.912,
        "median_latency_ms": 9800,
        "calls": 640
      },
      "daily": [
        "…"
      ]
    },
    {
      "id": "grok",
      "name": "Grok",
      "answer_type": "model",
      "status": "unavailable",
      "last_24h": {
        "success_rate": 0.64,
        "median_latency_ms": 7300,
        "calls": 210
      },
      "daily": [
        "…"
      ]
    },
    "…"
  ]
}
```

### engines[].status 取值

| status | 含义 |
| --- | --- |
| `operational` | 正常 |
| `degraded` | 降级：近 15 分钟成功率低于 90%，请求仍会发出，但失败可能变多 |
| `unavailable` | 不可用：该引擎的答案会直接返回 failed / engine_unavailable，不扣费 |

- 顶层 status 汇总全部引擎：全部 unavailable 时为 outage；有任一引擎 degraded 或 unavailable 时为 degraded；否则 operational。
- last_24h 统计过去 24 小时的真实调用：success_rate 为 0–1 的小数，median_latency_ms 为中位延迟，calls 为调用次数；没有调用时前两项为 null。google-aio 返回 no_answer 算成功，缓存命中不计入。
- daily 固定 30 项，按 UTC 日期从旧到新，最后一项是今天；当天没有调用时 uptime 为 null。
- 免鉴权，允许跨域（CORS *），响应缓存 30 秒；数据每 5 分钟汇总一次。网页版见 dataforgeo.dev/status。
