Skip to main content
A channel that is broken, being serviced, or otherwise unusable can be marked out of service so it stops appearing as available capacity in the Lab view. Every transition in and out of that state is recorded as an incident, giving you a per-channel downtime history.

Marking a channel out of service

Toggle out_of_commission to remove a channel from the pool without deleting it or breaking historical measurements that reference it. Every change to out_of_commission also opens or closes a row in the channel’s incident history, so you can look back and see when — and why — a channel was down. Alongside out_of_commission, pass three optional fields to describe the outage: These three fields only annotate a transition in out_of_commission — they are ignored on a PATCH that doesn’t change the flag. Re-sending the value a channel already has is a no-op, not a new outage.
The Lab view shows the channel as out_of_commission regardless of any in-flight measurement.
out_of_commission cannot be set at channel creation — the create endpoint rejects it with a BAD_REQUEST. Create the channel first, then PATCH it to take it out of service so the outage is recorded in the incident history.
Trying to mark a channel out of commission while a time-series measurement is still open on it returns a CONFLICT (HTTP 409) — close the measurement first (patch its end_time). Use incident_category of decommissioned for a permanent retirement rather than a repair-in-progress: the incident stays open indefinitely and is excluded from repair-time statistics.

Channel incident history

Every transition of out_of_commission is recorded as an incident — one row per outage, opened when the channel goes down and closed when it comes back. Use the history to audit downtime, attribute outages to a cause, or compute per-channel mean time to repair. At most one incident can be open per channel at a time (the current outage). Sending out_of_commission: true for a channel that’s already down is a no-op — it does not fragment the existing outage into a new row.

Incident fields

Reading incident history

List a channel’s incidents through the HTTP API, most recently started first:
The response is a paginated envelope (items, count, total). Pass limit (1–100, default 20) and offset to page through longer histories.
Channels that already existed before incident history was introduced have a single backfilled row with is_estimated: true. Its started_at is the channel’s last-modified time and is only an upper bound on when the outage actually began — treat those rows as “we know it was down by this time” and skip them when computing repair-time statistics.

Next steps

Equipment

Sites, cyclers, channels, and how measurements link to them.

Lab view

Live channel occupancy for the project.