# List live device rows

Canonical page: https://docs.ovok.com/api/slim/device/list-live-device-rows

`GET /v1/slim/device/live`

Lists live device rows for the dashboard's monitoring views: each device with its resident, location, zone, current telemetry and alerts.

**Auth:** bearer token. The caller must be a practitioner, an admin or a System Owner, and needs `search` and `read` on `Patient`, `Device`, `Location`, `Observation` and `Organization`.
**Scope:** the caller's project (from the token).

## Behaviour

- By default only devices with a resident assigned are returned. Set `includeUnassigned=true` to include devices without a resident.
- `organizationId` takes a zone id, `assigned` or `unassigned`. A zone id also matches devices in its child zones.
- `deviceId` restricts the result to one device, matched against the device identifier.
- `effectiveSleepStatus` filters on the device's current sleep status.
- `search` matches resident nickname and name, location name, zone name, and device name, identifier and serial. The resident, location and zone names match fuzzily; the device fields match only as a case-insensitive substring, so a full device name finds that device alone.
- `orderBy` is `ASC` or `DESC` in any case, default `ASC`.
- `residentState` is accepted but ignored.
- A row's `patient` carries the resident's `id`, `name`, `meta` and `extension` only, not the whole FHIR Patient.
- Telemetry is read fresh on every request. The device structure is cached and refreshed when you write through the Slim routes.
- `page` is zero-based. `count` defaults to 20, maximum 100.
- For polling only the telemetry and alerts, use `GET /v1/slim/device/live/telemetry` with the same query.
- The route returns 503 when the server is at capacity for live reads or the device list cannot be built. Retry shortly.

## Example

```bash
curl -X GET 'https://api.sandbox.ovok.com/v1/slim/device/live?page=0&count=20&sortBy=locationName&orderBy=ASC' \
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3NjcyNjg4MDAsImV4cCI6MTc2NzI3MjQwMH0.Ql3B_ztDvctlyZ2z0vp4sl3ExXRQGkzmxdmTAqxNzZk'
```
