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.

GET
/api/fleet/sensors
Auth required
List the monitored sensor roster — every sensor the platform is currently watching, with its operational status, the last calibration timestamp, and the id of the most recent recalibration event for the same device.

Response

{
  "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.

GET
/api/alerts
Auth required
List every drift alert in the queue, newest first. The server resolves `latestEventId` per row so the cell can deep-link to the drift-event detail page without a second round trip.

Response

{
  "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.

GET
/api/reports
Auth required
Archived compliance reports in reverse-chronological order. Each row carries the sensor slice, the lifecycle marker, and the drift / resolution counts the regulator audit packet references.

Query 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).

GET
/api/reports/sample
Public
Regulator-ready sample compliance report populated from 30 days of synthetic telemetry. Deterministic per UTC day so consecutive refreshes return the same payload (reproducible for the auditor).

Response

{
  "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.

Synthetic payloads · Kaltreon CMMS integrator surface

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 →