Alarms¶
An alarm is a server-generated event (fall detection, zone breach, battery low, …) that operators need to clear. Alarms are scoped to sites or areas and have rich filters.
Quick reference¶
| Method | What it does |
|---|---|
client.alarms.list_active() |
All currently active alarms. |
client.alarms.list_for_site(*, site_uid, start, end, **filters) |
Historical alarms for one site in a window. |
client.alarms.list_for_area(*, area_uid, start, end, **filters) |
Historical alarms for one area in a window. |
client.alarms.update(uid, *, cleared=True) |
Clear / un-clear an alarm. |
Reading¶
active = client.alarms.list_active()
recent = client.alarms.list_for_site(site_uid=site.uid, start=start, end=end)
Filter kwargs accepted on the historical lists include alarm_types=
(Rails-style array param — serialized as alarm_type_name[]=...),
tag_uids=, user_uid=.
Clearing¶
alarms.update uses HTTP PUT (not POST — RESEARCH Discrepancy #3).
The SDK handles the verb internally.
Timestamps¶
Alarms use Unix milliseconds on the wire (not ISO-8601). Pass
datetime objects with tzinfo; the SDK converts. See
Timestamps.
Model — Alarm¶
| Field | Type | Notes |
|---|---|---|
uid |
str |
Server-assigned. |
alarm_type_name |
str \| None |
E.g. "fall", "battery_low". |
trackable_uid |
str \| None |
Associated tag, if any. |
site_uid |
str \| None |
Scope. |
ts |
datetime \| None |
When the alarm fired (UTC). |
cleared |
bool \| None |
Lifecycle. |
Related entities¶
- Tags:
trackable_uidpoints at a Tag. - Sites / Areas: scope.
- Reports:
client.reports.alarms_csv(site_uid=..., alarm_types=...)downloads a CSV with optional banner. See Reports.
See also¶
- Timestamps — wire-format details.
- Rate limiting — historical lists can hit 429 on long windows.