---
title: "Read per-subsystem availability and dataset freshness"
method: GET
path: "/status"
tags: ["meta"]
---

# Read per-subsystem availability and dataset freshness

`GET /status`

## Request

- Base URL: `https://api.mapsource.io`
- URL: `https://api.mapsource.io/status`
- Auth: none declared

Reports each subsystem independently, the OSM dataset timestamp, minute-diff replication state and lag in seconds, whether machine payment can settle, the deployed Overpass engine version, and for every dataset the engine build serving it and the data snapshot it answers from. overpass.displayVersion is read from the running engine binary (for example "0.7.62.11 87bfad18") and changes automatically when production is upgraded.

When to use: Monitor service availability, dataset freshness, payment settlement readiness, and the engine and dataset versions behind each answer.

When not to use: Poll at an appropriate interval; status checks are not required before every API call.

## Response `200`

Read per-subsystem availability and dataset freshness

- object
  - `status` 'operational' | 'degraded' | 'maintenance', required
  - `gateway` object, required
    - `version` string, required
    - `commit` string, nullable, required
    - `ready` boolean, required
  - `overpass` object, required: The deployed Overpass engine's identity as the running binary reports it.
    - `ready` boolean, required: True when the engine answers and reports a parseable version.
    - `complete` boolean, nullable, required: Whether sentinel objects and densities every complete planet holds are present; false means results are missing data, null means not yet measured.
    - `completenessCheckedAt` string, nullable, required: When completeness was last measured.
    - `version` string, nullable, required: Overpass API semantic version reported by the running engine; null only while it cannot be read.
    - `commit` string, nullable, required: Source commit the engine binary was built from.
    - `displayVersion` string, nullable, required: Exact deployed Overpass engine version/build, read from the running binary, e.g. "0.7.62.11 87bfad18".
    - `engine` object, required
      - `name` string, required
      - `version` string, nullable, required
      - `commit` string, nullable, required
    - `gateway` object, required
      - `name` string, required
      - `version` string, required
      - `commit` string, nullable, required
    - `attic` boolean, nullable, required: Whether historical (attic) queries are available, measured against the engine.
    - `datasetTimestamp` string, date-time, nullable, required: OSM base timestamp of the data the engine answers from.
  - `datasets` object[], required: Each dataset's serving engine build and data snapshot, read from the backend that owns it.
    - `id` 'overpass' | 'vector-tiles' | 'tiles' | 'routing' | 'local-search' | 'contours', required
    - `label` string, required
    - `ready` boolean, required
    - `engine` object, required: The engine build serving this dataset, as the backend reports it.
      - `name` string, required
      - `version` string, nullable, required
      - `commit` string, nullable, required
      - `display` string, nullable, required
    - `dataset` object, required: The data snapshot this dataset answers from.
      - `name` string, required
      - `version` string, nullable, required
      - `timestamp` string, date-time, nullable, required
      - `source` string, required
    - `detail` string, nullable, required: Why a value is null, when one is.
  - `indexes` object[], required: Index state per service, with measured progress for builds in flight.
    - `id` string, required
    - `service` 'overpass' | 'vector-tiles' | 'tiles' | 'routing' | 'local-search' | 'contours' | 'places', required
    - `label` string, required
    - `state` 'ready' | 'degraded' | 'building' | 'failed' | 'unknown', required
    - `builtAt` string, nullable, required: When the serving index was built or its data was cut.
    - `detail` string, nullable, required
    - `builds` object[], required
      - `id` string, required
      - `target` string, required: What is being built, such as the generation name.
      - `state` 'building' | 'complete' | 'failed', required
      - `phase` string, required
      - `phaseIndex` integer, required
      - `phaseCount` integer, required
      - `phases` object[], required
        - `id` string, required
        - `label` string, required
        - `state` 'pending' | 'active' | 'done' | 'failed', required
        - `progress` number, nullable, required: Fraction complete, measured from the input the step has consumed; null when the step reports no measurable progress.
        - `progressLabel` string: What the percentage measures, such as source bytes read. It is not assumed to be total build completion.
        - `bytesDone` integer, nullable, required
        - `bytesTotal` integer, nullable, required
        - `etaSeconds` integer, nullable, required: Estimated remaining time; timing.basis states whether it comes from a rolling rate, an observed duration, or a scheduler window.
        - `timing` object
          - `elapsedSeconds` integer, nullable, required
          - `remainingSeconds` integer, nullable, required
          - `estimatedTotalSeconds` integer, nullable, required
          - `basis` 'rolling-average' | 'observed-duration' | 'scheduled-window' | 'critical-path' | 'collecting', required
          - `sampleCount` integer, required
          - `windowSeconds` integer, nullable, required
          - `updatedAt` string, date-time, required
        - `activity` object
          - `label` string, required: Current independently measured work, separate from the progress numerator.
          - `bytes` integer, nullable, required
          - `bytesPerSecond` number, nullable, required
          - `observedAt` string, date-time, required
        - `detail` string, nullable, required
      - `timing` object: Overall critical-path timing. Concurrent phases are not added together.
        - `elapsedSeconds` integer, nullable, required
        - `remainingSeconds` integer, nullable, required
        - `estimatedTotalSeconds` integer, nullable, required
        - `basis` 'rolling-average' | 'observed-duration' | 'scheduled-window' | 'critical-path' | 'collecting', required
        - `sampleCount` integer, required
        - `windowSeconds` integer, nullable, required
        - `updatedAt` string, date-time, required
      - `detail` string, nullable, required
      - `updatedAt` string, date-time, required: When the build reporter last sampled this build.
  - `engine` object, required
    - `mode` 'fixture' | 'overpass', required
    - `ready` boolean, required
    - `generation` string, required
    - `version` string, required
    - `dataTimestamp` string, nullable, required
    - `replicationLagSeconds` integer, nullable, required
    - `replication` object, required
      - `state` 'healthy' | 'degraded' | 'stale' | 'failed', required
      - `localTimestamp` string, nullable, required
      - `upstreamTimestamp` string, nullable, required
      - `lagSeconds` integer, nullable, required
      - `sequence` integer, nullable, required
      - `upstreamSequence` integer, nullable, required
      - `sequencesBehind` integer, nullable, required
      - `lastSuccessfulReplication` string, nullable, required
      - `detail` string, nullable, required
  - `services` object[], required
    - `id` 'overpass' | 'tiles' | 'vector-tiles' | 'routing' | 'isochrones' | 'contours' | 'elevation' | 'payments', required
    - `label` string, required
    - `ready` boolean, required
    - `detail` string, nullable, required
    - `endpoint` string, required
  - `subsystems` object[], required
    - `id` string, required
    - `label` string, required
    - `domain` string, required
    - `critical` boolean, required
    - `state` 'operational' | 'degraded' | 'unavailable', required
    - `detail` string, nullable, required
  - `domains` object[], required
    - `id` string, required
    - `state` 'operational' | 'degraded' | 'unavailable', required
    - `affected` string[], required
  - `billing` object, required
    - `enabled` boolean, required
    - `provider` string, required
  - `incident` object, required
    - `active` boolean, required
    - `summary` string, nullable, required
  - `checkedAt` string, required

## Other responses

- `400`: Error with a stable machine code.
- `401`: Error with a stable machine code.
- `429`: Error with a stable machine code.
- `500`: Error with a stable machine code.

---

[API](https://skmtc.dev/mapsource/apis/mapsource-overpass-api.md) · [All operations](https://skmtc.dev/mapsource/apis/mapsource-overpass-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mapsource/apis/mapsource-overpass-api/revisions/8af8c2769e7b?raw)
