Skip to main content
GET
The operational state at a glance

Authorizations

X-API-Key
string
header
required

Response

Successful Response

contract_version
string
required
Example:

"1.0"

min_app_version
string
required
Example:

"0.1.0"

generated_at
string<date-time>
required
generated_at_local
string
required
Pattern: ^\d{2}:\d{2}$
Example:

"14:30"

caller
string
required
scopes
string[]
required
Allowed value: "mobile"
version
string
required
service_state
enum<string>
required
Available options:
running,
stopped
engrate_environment
enum<string>
required
Available options:
staging,
production
last_event_id
integer
required
epoch
string<date-time> | null
required

timestamp of the first event; a change means the event log was replaced and event ids restarted

last_orchestrate_at
string<date-time> | null
required

the orchestrator's last call; null until it has run once since this was recorded

heartbeat_stale
boolean | null
required
milestones
Milestone · object[]
required
t_plus_1
TomorrowState · object
required

The day ahead (T+1, Berlin) - the one the gate closes for today.

badge
Badge · object
required

How the day ahead stands, decided by the server's rules. Clients render it as given; grey is theirs alone, for data too old to trust.

badge_timeline
TimelineEntry · object[]
required

strictly ascending; the first entry is at generated_at

timeline_end
string<date-time>
required

beyond this instant the timeline says nothing - clients render grey from here or from generated_at + expire_after_s, whichever comes first

stale_after_s
integer
required

from generated_at + this, clients add 'Stand HH:MM'

expire_after_s
integer
required

from generated_at + this, clients render grey

overlays
Overlays · object
required
days
DaySummary · object[]
required

T-1 to T+horizon, oldest first

events_24h
EventCounts · object
required

warnings and errors of the last 24 hours on the feed

wiedervorlagen_count
integer
required
alert_channels
AlertChannels · object
required
snapshot
Snapshot · object
required

Exactly what native surfaces (widgets, watch, Live Activity) may store: no energy, no names, no event text, no caller, no configuration beyond the staleness thresholds it needs offline - LIVE/TEST and stopped are in the overlays. Stored verbatim, so they are covered by this contract and its fixtures.