API for CMMS integration · Kaltreon
The integrator surface, reading for the engineering team.
The three read endpoints a CMMS stack wires in to ingest drift and compliance signals from a Kaltreon-monitored fleet — sensor status, drift events, and compliance report metadata. This page is public; the live endpoints it documents are session-gated (see the callout below).
Sample payloads below are synthetic. The live endpoints GET /api/fleet/sensors, GET /api/alerts, and GET /api/reports require a same-origin session cookie (better-auth). GET /api/reports/sample is public. Sign in once and the cookie attaches automatically.
Sensor status
Sensor status
The monitored sensor roster a fleet operator pulls to populate a CMMS asset tree — id, model, channel count, firmware, install date, location, status, last calibration, latest event id, and the sensor kind (radar / rf / lidar-phased-array) the platform tracks today.
/api/fleet/sensorsResponse
{
"items": [
{
"id": "cr-77ghz-fwd-01",
"model": "Aptiv APR-77F forward radar",
"channelCount": 32,
"firmware": "4.12.3",
"installDateIso": "2025-09-04",
"location": "Front bumper, centerline",
"sensorType": "radar",
"status": "nominal",
"lastCalibrationIso": "2026-07-28T14:22:00.000Z",
"latestEventId": null
},
{
"id": "cr-77ghz-corner-l",
"model": "Aptiv APR-77C corner radar",
"channelCount": 32,
"firmware": "4.12.3",
"installDateIso": "2025-09-12",
"location": "Front-left fender",
"sensorType": "radar",
"status": "watch",
"lastCalibrationIso": "2026-07-19T09:05:00.000Z",
"latestEventId": "evt_cr-77ghz-corner-l_20260725"
},
{
"id": "nir-hplc-01",
"model": "Bruker MATRIX-F FT-NIR",
"channelCount": 1,
"firmware": "2.7.1",
"installDateIso": "2025-11-18",
"location": "Process line B — at-line bench",
"sensorType": "rf",
"status": "watch",
"lastCalibrationIso": "2026-07-25T08:42:00.000Z",
"latestEventId": "evt_nir-hplc-01_20260726"
}
]
}Auth required — session cookie (better-auth). The docs surface is public but the live route returns 401 without a same-origin session. Fleet data is org-scoped; missing active org returns `404 organization_not_found`.
Drift events
Drift events
The drift-alert queue the operator triages from inside the CMMS — every active / dismissed / escalated / assigned row, newest first, with the server-resolved recalibration-event id per row so the cell can deep-link without a second round trip.
/api/alertsResponse
{
"items": [
{
"id": "alt_01HZX8K3M9N5P7R2T4V6X8Z0AB",
"frameId": "frm_01HZX8K3M9N5P7R2T4V6X8Z0AA",
"deviceId": "cr-77ghz-rear-01",
"detectedAtIso": "2026-08-03T14:18:02.477Z",
"magnitude": 0.512,
"status": "active",
"assignedTo": null,
"handledAtIso": null,
"notes": null,
"latestEventId": "evt_cr-77ghz-rear-01_20260731"
}
]
}Auth required — session cookie (better-auth). The server resolves `latestEventId` per row so the cell deep-links to `/api/radar/events/[id]` without a second round trip. Fleet data is org-scoped; missing active org returns `404 organization_not_found`.
Compliance report metadata
Compliance report metadata
The archived compliance surface — a deterministic public sample an integrator evaluates before authenticating, and the session-gated archive index a signed-in operator reads to populate the audit packet.
/api/reportsQuery params (both optional)
{
"from": "2026-07-01",
"to": "2026-08-03"
}Response
{
"items": [
{
"id": "rep_01HZX7N2P4Q6R8T0V2W4Y6A8CE",
"generatedAtIso": "2026-08-02T17:00:00.000Z",
"periodStartIso": "2026-07-03T00:00:00.000Z",
"periodEndIso": "2026-08-01T23:59:59.999Z",
"sensorsCount": 4,
"driftEventsCount": 11,
"driftEventsResolvedCount": 10,
"fleetSlice": "forward + rear + corner L/R (4 sensors)",
"status": "Sealed"
}
]
}Auth required — session cookie (better-auth). Fleet-level (not user-scoped), so the gate is session presence only — no `userId` filter. `from` / `to` are `YYYY-MM-DD`; server coerces to ISO datetime (inclusive lower, exclusive next-day upper).
/api/reports/sampleResponse
{
"reportId": "rep_sample_20260803",
"generatedAtIso": "2026-08-03T14:20:00.000Z",
"periodStartIso": "2026-07-04T00:00:00.000Z",
"periodEndIso": "2026-08-02T23:59:59.999Z",
"threshold": 0.45,
"sensorsCount": 4,
"driftEventsCount": 12,
"driftEventsResolvedCount": 10,
"attestation": "All monitored sensors operated below the configured drift threshold for 28 of 30 days. Two sensors tripped the recalibration routine and were recovered without operator intervention. No manual override was applied during the reporting period.",
"signOff": {
"operator": "Kaltreon Compliance Engine",
"role": "automated",
"signaturePlaceholder": "kce-signoff://rep_sample_20260803",
"generatedAtIso": "2026-08-03T14:20:00.000Z",
"reportId": "rep_sample_20260803"
}
}Public — no session needed. Deterministic per UTC day so the integrator sees the same shape on every refresh. Best fit for evaluating the wire contract before wiring the archived endpoint.
Continue
Wire it into your CMMS
Four places to go next — back to the product landing page, into the manufacturing vertical deep-dive, the Tier-1 supplier persona surface, or to the full API reference for the long-tail surface (radar frames, recalibration, event detail, forecast).
Full API reference →