Reconciliation report for a rail
Answers “did we lose a message?” by evaluating E(m) = C(m) + T(m) + R(m) per rail over a declared window. What pages: a non-zero divergence, and a send with no captured return leg past the return-leg window. What does not: a hole in the vendor’s sequence, which is counted and listed here: the vendor numbers the whole cabin in one sequence, so a hole is usually another legacy system’s message. Whichever cycle is reported, it lists the rail’s open findings and its closed ones with their closure; closedCursor pages to older closures. The Courier deletes no cycle and no closure: they are audit evidence, and the client defines how long its database keeps them.
Autorizações
JWT bearer token issued by the identity provider.
Parâmetros de caminho
The rail. A value outside the vocabulary, or a rail this build does not carry, is a 404.
Parâmetros de consulta
A specific cycle. Omitted returns the most recent.
64RFC 3339. With to, lists the sequence gaps of every cycle whose window overlaps [from, to), each with its cycle. One bound alone leaves the other open. Both omitted list the reported cycle's own gaps.
64RFC 3339; see from.
64The closedFindingsNextCursor of a previous report: lists the closures older than its page. Its format is not contract.
512Resposta
OK
x >= 0spb, pix The findings closed on this channel, whichever cycle is reported, most recent closure first, at most 100, each with who closed it, when and the note.
Pass as closedCursor for the older closures; null on the last page.
64E − (C + T + R). Non-zero is an alert.
C per engine: completed deliveries whose engine is in the message's frozen resolved set.
E, summed from each message's own stored expectation, never recomputed.
x >= 0Set on a channel's first cycle when the channel was registered more than a day before reconciliation first ran: nothing captured or sent before this instant was judged, and a divergence older than it is never reconciled automatically. Null when the cycle judged all it could.
Sends whose return-leg window closed during this cycle with no captured message echoing their control identifier. Each one pages.
The findings open on this channel NOW, whichever cycle is reported, oldest first, at most 1000: what pages until an operator closes it with POST /v1/assurance/findings/{findingId}/close.
True when more findings are open than openFindings lists.
x >= 0x >= 0A send with no captured return leg older than this pages.
x >= 1Holes in the channel's own sequence over the cycle, or over the range when from/to are given; null when no sequence was measured: the rail has none, or no key that arrived could be read as one. Counted and exposed, never paged: the vendor numbers the whole cabin in one sequence, so a hole is usually another legacy system's message.
The holes, oldest cycle first, each with the cycle that saw it; null when no sequence was measured, as for sequenceGapCount. At most 1000; sequenceGapsTruncated says when there were more.
True when sequenceGapCount is larger than the list returned: narrow the range to see the rest.
Arrivals at or below the sequence before them: a reorder or a reset, never a gap.
x >= 0The declared window. A divergence inside it may be a message in transit; outside it, a loss candidate.
x >= 1The capture instants this cycle judged, [windowStart, windowEnd). Consecutive cycles tile time.

