# Uptime history, measured from outside Chord's servers

`GET https://api.getchord.xyz/v1/status`

Source: https://getchord.xyz/docs/api-reference/operations/statussummary/

Served by Cloudflare, not by the API's own servers, so it answers while they do not. A probe runs every minute: it reads `GET /health/chains` and requests one small quote per chain down the public path. Components are `api`, `quotes:<chain>` and `data:<chain>`. Uptime is the share of SAMPLED minutes that were not down; `sampledMin` says how many minutes each window really holds, and a day with no samples has `level: null`: it is never counted as up. An incident opens on the second bad check in a row and closes on the second good one. The same data as a page: https://getchord.xyz/status

## Response 200

Example (captured from the live API):

```json
{
  "at": "2026-10-11T17:33:09.133Z",
  "overall": "operational",
  "lastProbeAgeSec": 9,
  "since": "2026-10-11",
  "probe": {
    "from": "Cloudflare edge",
    "everySec": 60,
    "openAfterMin": 2
  },
  "incidents": [],
  "components": [
    {
      "id": "api",
      "group": "api",
      "chain": null,
      "name": "API",
      "status": "operational",
      "note": null,
      "ms": 58,
      "ageSec": null,
      "uptime": {
        "h24": 100,
        "d7": 100,
        "d30": 100,
        "d90": 100
      },
      "sampledMin": {
        "h24": 9,
        "d7": 9,
        "d30": 9,
        "d90": 9
      },
      "avgMs30d": 119,
      "days": [
        {
          "day": "2026-07-14",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        },
        {
          "day": "2026-07-15",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        }
      ]
    },
    {
      "id": "quotes:arc",
      "group": "quotes",
      "chain": "arc",
      "name": "Arc",
      "status": "operational",
      "note": null,
      "ms": 697,
      "ageSec": null,
      "uptime": {
        "h24": 100,
        "d7": 100,
        "d30": 100,
        "d90": 100
      },
      "sampledMin": {
        "h24": 9,
        "d7": 9,
        "d30": 9,
        "d90": 9
      },
      "avgMs30d": 683,
      "days": [
        {
          "day": "2026-07-14",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        },
        {
          "day": "2026-07-15",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        }
      ]
    },
    {
      "id": "data:arc",
      "group": "data",
      "chain": "arc",
      "name": "Arc",
      "status": "operational",
      "note": null,
      "ms": null,
      "ageSec": 2,
      "uptime": {
        "h24": 100,
        "d7": 100,
        "d30": 100,
        "d90": 100
      },
      "sampledMin": {
        "h24": 9,
        "d7": 9,
        "d30": 9,
        "d90": 9
      },
      "avgMs30d": null,
      "days": [
        {
          "day": "2026-07-14",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        },
        {
          "day": "2026-07-15",
          "level": null,
          "downMin": 0,
          "degMin": 0,
          "sampled": 0
        }
      ]
    }
  ]
}
```

- **503**: The lane behind this endpoint is not ready or not enabled here (`NOT_READY`, `CHAIN_NOT_ENABLED`, `NOT_ENABLED`, `*_UNAVAILABLE`). Retry later; do not treat it as an empty answer.
