List the repasse transfers the rail still owes this tenant
Walks the tenant’s own repasse expectation book: the escriturated instalments whose transfer the rail still owes, oldest deadline first, undated promises last.
READ THE FRESHNESS STAMP BEFORE THE ROWS. An empty list under a state other than fresh DOES NOT MEAN nothing is missing. When the reconciliation pass cannot seed the tenant database it returns before the D+2 detector runs, publishing neither an alarm nor the “I do not know” fact, so that outage class is indistinguishable from health unless the stamp is read. state is fresh, stale or never; never covers a deployment that never composed reconciliation, a cold-started process, a deployment whose rail credentials never worked, and every tenant that is not the pass’s one canonical tenant.
freshness.observed_replica is the opaque tag of the ONE PROCESS that answered this request. The clean-read clock is process memory, per replica, so two reads may disagree by design; the tag exists so an operator can see that they came from two processes. It is never a hostname and never a pod name.
It answers from the LOCAL BOOK and never reaches the Dataprev rail, so it cannot answer 501 and it is served on a deployment with no reconciliation composed at all - that deployment answers 200 with an empty book, an empty scope census and state never.
scopes censuses the OPEN promises by employer scope. A scope with in_scope false is an ORPHAN: promises written under an employer scope this deployment no longer reconciles, whose repasse now arrives under a different key and closes nothing, so they alarm forever for money already in the bank. An empty cnpj is a legal scope and is the rail-wide read’s own name, never a missing value.
scopes IS ANSWERED ON THE FIRST PAGE ONLY and is null on every page requested with a non-blank after. A blank or whitespace-only after is a first-page request and is censused like an omitted one. The census is unfiltered and unpaged by design, so it describes the whole book rather than the page and is asked once per scan. Read it from the first page. null means it was not asked on this page; an empty list is the different, stated fact that no employer scope holds an open promise. freshness, by contrast, travels on every page.
There is deliberately NO time window. The rail’s own reads carry one because the rail demands it; imposing one here would hide exactly the old promise nobody ever closed, which is what this board exists to show.
Paging is keyset over (due_at nulls last, competencia, numero_contrato, cnpj), EXACTLY the order the D+2 alarm walks, so the board and the alarm can never disagree about which deadline is next. Send the previous page’s page.next_after as after. has_more is true exactly when another page exists, and next_after is null exactly when it is false. The cursor never expires; a cursor this service did not mint is refused with 422 rather than silently restarting the scan from the top.
situation may be repeated to narrow the page to several situations at once (situation=open&situation=overdue). Omitting it means ALL FOUR, never none. undated is a promise whose deadline was not computable, which is a durable STATE and not missing data: nothing ever back-fills it, so it can never become overdue.
Authorizations
JWT bearer token issued by the identity provider.
Query Parameters
Narrows the page to the named situations. Repeat the parameter for several. Omitted means all four.
open, overdue, undated, settled The previous page's page.next_after. Omitted starts at the oldest deadline. A cursor this service did not mint is refused, never restarted from the top.
Maximum number of expectations to return. Omitted means the ceiling of 200.
1 <= x <= 200
