---
title: "Platform data-freshness status."
method: GET
path: "/v1/status"
tags: ["Meta"]
---

# Platform data-freshness status.

`GET /v1/status`

## Request

- Base URL: `https://api.smarterweather.com`
- URL: `https://api.smarterweather.com/v1/status`
- Auth: none required

Returns the current data-freshness status of the weather platform:
an overall state, per-source states, open incidents, and any active
provider advisories.

Every source is continuously evaluated against its expected
publication cadence across the ingestion, processing, and serving
stages. States:

- `ok` — data is flowing within its expected cadence.
- `degraded` — data is staler than expected but below outage
  thresholds.
- `outage` — data has been stale long enough to be considered an
  outage. The `incident.cause` field attributes it (e.g.
  `provider_outage` vs `processing_delay`).
- `no_signal` — the monitor has no signal for this source
  (instrumentation gap, not necessarily a data gap).

The document regenerates about every 5 minutes; responses carry
`Cache-Control: public, max-age=60`. This endpoint does **not**
require authentication, so it stays reachable during the incidents
it describes — agents and integrations should consult it before
reporting weather data as current, and may relay `advisories`
entries to end users.

## Response `200`

Current platform status document.

- PlatformStatus: Platform data-freshness status document, regenerated ~every 5 minutes by the freshness monitor. Additional fields may be added over time; consumers must ignore unknown fields.
  - `version` integer, required: Document schema version.
  - `generated_at` string, date-time, required: When this document was generated (UTC).
  - `overall` 'ok' | 'degraded' | 'outage' | 'no_signal', required: Worst state across customer-facing sources. `ok` means all customer-facing weather data is flowing within its expected cadence.
  - `sources` PlatformStatusSource[], required: Per-source freshness states.
    - `source_id` string, required: Stable source identifier.
    - `name` string, required: Human-readable source name.
    - `provider_id` string, required: Upstream data provider identifier.
    - `state` 'ok' | 'degraded' | 'outage' | 'no_signal', required
    - `severity` 'customer_facing' | 'internal', required: Whether staleness of this source is visible to end customers (`customer_facing`) or only affects Smarter Weather's own products (`internal`).
    - `incident` object: Present when state is not `ok` and an incident is open.
      - `cause` string: Root-cause attribution, e.g. `provider_outage` (upstream stopped publishing), `processing_delay` (data arrived but is stuck in the pipeline), `serving_delay`, or `poller_stale` (our polling stopped; provider state unknown).
      - `since` string, date-time: When the incident opened (UTC).
      - `status` string: Incident lifecycle status (e.g. open, recovering).
  - `advisories` PlatformStatusAdvisory[]: Active advisories relayed from upstream data providers (e.g. NOAA/NWS service notices) that may explain or foreshadow data gaps.
    - `title` string: Advisory headline from the provider.
    - `provider_id` string
    - `url` string, uri: Link to the provider's advisory.
    - `published_at` string, date-time: When the provider published the advisory (UTC).

## Other responses

- `502`: The status document could not be retrieved.
- `503`: Platform status is not configured in this environment.

---

[API](https://skmtc.dev/smarterweather/apis/smarter-weather-api.md) · [All operations](https://skmtc.dev/smarterweather/apis/smarter-weather-api/llms.txt) · [OpenAPI document](https://skmtc.dev/smarterweather/apis/smarter-weather-api/revisions/520d55a696e4?raw)
