Getting started
The Game API starts with Uptime and listens on http://localhost:9875/. Start or load a game
before requesting simulation data.
Check API health
The health endpoint is the only endpoint that responds before the first world snapshot exists.
curl "http://localhost:9875/health"Read simulation data
All simulation resources live below /api/v1.
curl "http://localhost:9875/api/v1/world"
curl "http://localhost:9875/api/v1/hosts?offset=0&limit=100"Read-only and local
Every documented operation uses GET. The API cannot change the simulation and accepts no API
key. Requests must originate from the computer running Uptime.
Freshness and polling
Responses come from a periodically published mirror rather than a synchronous simulation read.
JSON responses expose meta.age_ms; the X-Sim-Age-Ms and X-Sim-Publish-Seq headers carry the
same freshness context.
Publishing pauses after roughly one minute without readers. The first response after an idle period can therefore be older; read again to obtain the next snapshot. Polling faster than the publish cadence is not rejected or throttled.
Pagination
Collection endpoints use offset and limit. Limits are clamped to 1,000 items. An offset beyond
the collection returns an empty page instead of an error.
Common status codes
| Status | Meaning |
|---|---|
200 | The request succeeded. |
404 | The entity or metric path is not present in the current snapshot. |
503 | No world snapshot has been published yet. /health still returns 200. |