---
title: "Get uptime report"
method: GET
path: "/v1/uptime"
tags: ["uptime"]
---

# Get uptime report

`GET /v1/uptime`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/uptime`
- Auth: HTTP bearer

Get an uptime report for a date range, with online percentage per screen and per location, downtime windows, and mean time to recovery.

**Notes.**
- Only screens at locations the caller can see. `outageSummary` is present only when there were outages.

## Query parameters

- `from` string
- `to` string
- `screenId` string

## Response `200`

Success.

- object
  - `data` object, required
    - `from` string, nullable, required: ISO-8601 timestamp (UTC).
    - `to` string, nullable, required: ISO-8601 timestamp (UTC).
    - `offlineRetentionDays` integer, required: How far back offline history is kept.
    - `fleet` object, required
      - `screenCount` integer, required
      - `onlinePct` number, required: 0–100.
      - `outages` integer, required
      - `mttrSec` number, nullable, required: Mean time to recover, in seconds; null with no recovered outage.
      - `totalDowntimeSec` number, required
      - `plannedDarkSec` number, required: Downtime the screen was expected to be dark (a schedule or power policy).
      - `plannedDarkOutages` integer, required
      - `outageSummary` OutageSummary: Outages in a window, by cause.
        - `windowDays` integer, required
        - `count` integer, required: Unplanned outages in the window.
        - `byCause` object, required: Outage count per cause; a cause with none is absent.
          - `power-loss` integer
          - `powered-off` integer
          - `os-reboot` integer
          - `app-crash` integer
          - `app-killed-low-memory` integer
          - `app-anr` integer
          - `app-restart` integer
          - `wifi-dropped` integer
          - `wifi-weak` integer
          - `wifi-no-internet` integer
          - `ethernet-dropped` integer
          - `brix-unreachable` integer
          - `display-off` integer
          - `sleep` integer
          - `scheduled-off` integer
          - `unknown` integer
          - `power-cycle` integer
          - `network-only` integer
        - `byBucket` object, required
          - `app` integer, required
          - `display` integer, required
          - `unknown` integer, required
          - `network` integer, required
          - `power` integer, required
          - `brix` integer, required
          - `planned` integer, required
        - `topCause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', nullable, required
        - `topCauseShare` number, required
        - `hedgedShare` number, required
        - `lastCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `lastAt` string, nullable, required: ISO-8601 timestamp (UTC).
        - `lastKnownCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `avgRssiDbm` number, nullable, required
        - `insight` string, nullable, required: The rollup sentence, e.g. `All 6 were Wi-Fi drops.`
      - `screensWithOutages` integer
    - `screens` object[], required
      - `screenId` string, required
      - `screenName` string, required
      - `nodeId` string, nullable, required
      - `locationLabel` string, nullable, required
      - `status` 'online' | 'offline' | 'pairing', required
      - `lastSeenAt` string, nullable, required: ISO-8601 timestamp (UTC).
      - `windowSec` number, required
      - `downtimeSec` number, required
      - `uptimeSec` number, required
      - `onlinePct` number, required
      - `outages` integer, required
      - `mttrSec` number, nullable, required
      - `plannedDarkOutages` integer, required
      - `plannedDarkSec` number, required
      - `downtimeWindows` object[], required
        - `from` string, required: ISO-8601 timestamp (UTC).
        - `to` string, nullable, required: ISO-8601 timestamp (UTC).
        - `durationSec` number, required
        - `detectionPath` string, required: How the outage was noticed, e.g. `ws-close`, `heartbeat-timeout`.
        - `cause` string, nullable, required
        - `causeDetail` string, nullable
        - `causeLabel` string, nullable
        - `reason` string, nullable, required
        - `expectedDark` boolean, nullable, required
        - `expectedReason` string, nullable, required
      - `outageSummary` OutageSummary: Outages in a window, by cause.
        - `windowDays` integer, required
        - `count` integer, required: Unplanned outages in the window.
        - `byCause` object, required: Outage count per cause; a cause with none is absent.
          - `power-loss` integer
          - `powered-off` integer
          - `os-reboot` integer
          - `app-crash` integer
          - `app-killed-low-memory` integer
          - `app-anr` integer
          - `app-restart` integer
          - `wifi-dropped` integer
          - `wifi-weak` integer
          - `wifi-no-internet` integer
          - `ethernet-dropped` integer
          - `brix-unreachable` integer
          - `display-off` integer
          - `sleep` integer
          - `scheduled-off` integer
          - `unknown` integer
          - `power-cycle` integer
          - `network-only` integer
        - `byBucket` object, required
          - `app` integer, required
          - `display` integer, required
          - `unknown` integer, required
          - `network` integer, required
          - `power` integer, required
          - `brix` integer, required
          - `planned` integer, required
        - `topCause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', nullable, required
        - `topCauseShare` number, required
        - `hedgedShare` number, required
        - `lastCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `lastAt` string, nullable, required: ISO-8601 timestamp (UTC).
        - `lastKnownCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `avgRssiDbm` number, nullable, required
        - `insight` string, nullable, required: The rollup sentence, e.g. `All 6 were Wi-Fi drops.`
    - `locations` object[], required
      - `nodeId` string, nullable, required
      - `name` string, required
      - `screenCount` integer, required
      - `onlinePct` number, required
      - `windowSec` number, required
      - `downtimeSec` number, required
      - `outages` integer, required
      - `mttrSec` number, nullable, required
      - `outageSummary` OutageSummary: Outages in a window, by cause.
        - `windowDays` integer, required
        - `count` integer, required: Unplanned outages in the window.
        - `byCause` object, required: Outage count per cause; a cause with none is absent.
          - `power-loss` integer
          - `powered-off` integer
          - `os-reboot` integer
          - `app-crash` integer
          - `app-killed-low-memory` integer
          - `app-anr` integer
          - `app-restart` integer
          - `wifi-dropped` integer
          - `wifi-weak` integer
          - `wifi-no-internet` integer
          - `ethernet-dropped` integer
          - `brix-unreachable` integer
          - `display-off` integer
          - `sleep` integer
          - `scheduled-off` integer
          - `unknown` integer
          - `power-cycle` integer
          - `network-only` integer
        - `byBucket` object, required
          - `app` integer, required
          - `display` integer, required
          - `unknown` integer, required
          - `network` integer, required
          - `power` integer, required
          - `brix` integer, required
          - `planned` integer, required
        - `topCause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', nullable, required
        - `topCauseShare` number, required
        - `hedgedShare` number, required
        - `lastCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `lastAt` string, nullable, required: ISO-8601 timestamp (UTC).
        - `lastKnownCause` object, nullable, required
          - `cause` 'power-loss' | 'powered-off' | 'os-reboot' | 'app-crash' | 'app-killed-low-memory' | 'app-anr' | 'app-restart' | 'wifi-dropped' | 'wifi-weak' | 'wifi-no-internet' | 'ethernet-dropped' | 'brix-unreachable' | 'display-off' | 'sleep' | 'scheduled-off' | 'unknown' | 'power-cycle' | 'network-only', required
          - `confident` boolean, required: False when the cause is a best guess.
        - `avgRssiDbm` number, nullable, required
        - `insight` string, nullable, required: The rollup sentence, e.g. `All 6 were Wi-Fi drops.`
      - `screensWithOutages` integer

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: The token lacks the permission this operation needs (see `x-brix-permission`).
- `422`: `from` or `to` is not an ISO-8601 timestamp.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
