List alarms
caddis_list_alarmsList enabled alarms with type definitions, latest history entry, and subscribers. Filter by equipment IDs or preventative maintenance status.
Instructions
List enabled alarms for the company along with their type definitions, latest history entry, and subscribers (users and rosters). Optionally filter by equipment IDs or by whether the alarm type is preventative maintenance (pm). The body is a TOON document with five named tabular sections — alarms[...]{...}:, alarm_types[...]{...}:, alarm_history[...]{...}:, user_alarms[...]{...}:, and roster_alarms[...]{...}: — each followed by its indented rows. Join keys: each alarms row carries alarm_type_id ↔ alarm_types.id; alarm_history, user_alarms, and roster_alarms rows each carry alarm_id back to alarms.id. alarm_history is capped at the single most recent entry per alarm. Several columns are JSON-stringified blobs — args, args_latest, device_output_config, and config on alarms; args_template on alarm_types; and args + device_output_config on alarm_history — JSON.parse() them to recover their structured values.
Responses are TOON-encoded (toonformat.dev) — a token-efficient JSON dialect mixing YAML-style indentation with CSV-style tables. Example:
name: Caddis Co timezone: America/Denver equipment[3]{id,name,tags,current_status.status,current_status.reason_id}: 1,Mill A,"["cnc","critical"]",running,null 2,"Press, Big",null,down,3 3,Lathe C,null,null,null
Object fields:
key: value; nested objects indent their children.Uniform arrays of objects:
field[N]{cols}:followed by N indented comma-separated rows in column order.Nested objects inside table rows are recursively flattened to dotted columns (e.g.
current_status.status,input_setup.cycle.logic); a null parent yieldsnullacross all its dotted columns (see row 3 above).Primitive arrays at object level:
field[N]: a,b,cinline.Arrays inside table cells are JSON-stringified into a single cell value (
JSON.parse()to recover); empty arrays render asnull(see rows 1–3tagscolumn).Strings with commas/colons/quotes/leading whitespace are double-quoted (escapes:
\\,\"); other strings, numbers, booleans, andnullare bare.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pm | No | If true, only return preventative-maintenance alarms; if false, only non-PM | |
| equipIds | No | Filter to alarms for the given equipment IDs |