Pillage Public API · v1

Public, read-only server data. No API key is required. Third-party clients may use these endpoints with CORS. Fair-use limit: 120 requests per minute per IP by default.

Download the OpenAPI 3.1 specification

Reading the responses

Successful responses contain apiVersion, realmId, data and meta. Use meta.readAt as the database query time, not the last in-game update. Cached responses keep the original timestamp. Zero and an empty array are real results; unavailable data returns an error instead.

BIGINT counters and metric values are decimal strings. Playtime is stored milliseconds. Leaderboard position is the list position, not a competition rank shared by tied players. Treat text as plain text, never HTML.

Support ETag/If-None-Match. On HTTP 429 or 503, back off; respect Retry-After. Please poll at most once per 30–60 seconds. No personal-name search, raw database endpoints or admin actions are exposed.

Known data boundaries

Missing Nexus data is NOT_READY, not a fabricated empty network. Travel counts are not currently recorded. Anonymous contributor names and UUIDs are never returned. Status probeTimeExact=false means the timestamp was obtained from a separate recent-probe endpoint, not atomically with the player count.