Provider cards show fresh, stale, pending or blocked for OREE, Energy Map and other integrations.
Tutorial · data freshness
/status shows not only uptime, but the honesty of market data.
Provider cards show the time of the latest known data, while SLA-row meaning varies by job. ENTSO-E vintage rows report capture-attempt timing only: a fresh signal does not prove the parsed response is non-empty or usable.
Tutorial · data freshness
What to inspect
Freshness SLA separately shows forecast, JAO, alert and other platform-job signals; each row's policy defines what its signal means.
For vintage rows, within_sla confirms archived-attempt timing, not parsed-content usability.
Breached and no_signal are explicit caveats; within_sla must be read with the signal-specific boundary.
HowTo: read /status
Fresh means the latest observation is inside its freshness window; stale means the write is older than the budget.
These rows cover jobs without their own source card. A signal may mean fact freshness, a content deadline or capture-attempt timing, depending on the row policy.
within_sla means the signal satisfies its row policy, at_risk is near the limit, breached violates it, no_signal means none is recorded, blocked means signal or setup is missing, and unclassified means a signal exists without a policy.
For these rows, a fresh timestamp means only an archived capture attempt. The response can carry 0 parsed points or events, so a separate audit must establish usability.
The trader should see both an SLA violation and the row-specific meaning boundary beside the forecast, brief or export, not only in a backend status.
What not to claim
within_sla means compliance with that row's policy. For ENTSO-E vintages it does not prove parsed market data is non-empty or usable.
A point-in-time forward archive is not rebuilt as a real forecast after the delivery window has passed.
When Alvo sees its own source gap, public status should show it even if the rest of the system is running.
Tutorial · data freshness
Checklist and states
Minimal sequence before a market read or brief review.
1. Open /status before using a market signal. 2. Read source-card health: fresh, stale, pending or blocked. 3. Read Freshness SLA rows for platform-only captures. 4. Check forecast-da-capture rows separately for UA, PL and HU. 5. Treat a stale/breached row as a decision caveat, not a hidden backend detail.
The six states /status shows for platform-only freshness rows.
within_sla: latest signal satisfies this row's SLA policy; read the row-specific caveat before judging content at_risk: the latest signal is close to breaching this row's policy breached: the latest signal violates this row's SLA policy no_signal: an SLA policy exists, but no signal has been recorded yet blocked: the required signal or setup is unavailable unclassified: a signal exists, but no SLA policy classifies it yet
Tutorial · data freshness
Data freshness FAQ
Why does /status have provider cards and Freshness SLA?
Provider cards belong to integrations, while Freshness SLA shows supplemental platform-job signals. Each row's policy defines its meaning.
Why do ENTSO-E vintage rows have a separate caveat?
They aggregate archived-attempt timing even when a response has 0 parsed points or events. A fresh signal therefore is not proof of usable forecast content.
Can Alvo just rerun capture and recover everything?
Not always. When an upstream source served a full-day hole, the forward archive for past delivery days remains lost point-in-time evidence; the system self-heals only when that gap leaves the lag window.
Want to inspect the live state?
Open /status: it shows source health, SLA rows and the raw /api/health payload for integrations.