Skip to content

Root Cause Analysis

A Root Cause Analysis (RCA) record captures why a problem occurred on a particular asset and what was done about it. A defect notes that something is wrong; an RCA goes further. It names the kind of problem, rates how serious it is, pinpoints where along the asset it sits, and records the underlying cause and the solution applied. Each record belongs to a single asset, so investigations stay tied to the physical thing they concern.

  • Represents: an investigation into a problem found on an asset — its cause and remedy
  • Body: a JSON array of RCA objects
  • Keyed by: id — your external identifier, and the upsert key
  • Belongs to: an asset (assetId)

Each record answers a few questions about a single problem:

  • What kind of problem it is (for example rail wear).
  • How severe — rated on a continuous scale from 1 to 5, distinguishing a minor concern from a critical one.
  • Where on the asset it sits — a start and end chainage along the asset. When the two are equal, the problem is a single point rather than a span.
  • How long the affected stretch is — a value and a unit of measure.
  • The root cause identified and the solution proposed or applied.

Because severity and extent are explicit, RCA records let the platform reason about which problems matter most and how much of an asset they touch, rather than treating every finding as equal.

  • Import the asset an RCA refers to before (or together with) the RCA itself. An assetId the platform doesn’t recognise passes request validation but fails at job time. See Common Errors.
  • Keep id stable across imports: re-importing a record with an existing id updates it in place, while a new id creates a new record.
  • Send the start and end chainage in order — the start must not sit past the end — and give the length as a non-negative value with its unit.