PrismSMP API Docs

Errors Reference

Every error response — regardless of endpoint or status code — has exactly one JSON shape:

json
{ "error": "human-readable message" }

There are no exceptions to this shape. It's always safe to read body.error for a display-ready message, on any non-2xx response from any endpoint.

Status codes

StatusMeaningWhen it happens
200 OK Request succeeded. Response body is endpoint-specific JSON (see API Reference).
400 Bad Request A required path or query value was missing, empty, or invalid — e.g. calling /api/player/ with no identifier, or /api/leaderboard with a missing/unrecognized type.
401 Unauthorized The X-API-Key header was missing, malformed, or the key doesn't match a valid, non-revoked key. See key revocation if a previously-working key suddenly starts failing.
404 Not Found The requested resource doesn't exist — currently only returned by player lookup when no player has ever been seen with the given name/UUID.
429 Too Many Requests Your key exceeded its rate limit. Includes a Retry-After header (seconds). See rate limits.
503 Service Unavailable Returned only by auction search when the auction house isn't available on the backend currently running the API — a server-side condition, not something wrong with your request.

Handling errors in one place

Since the error shape never changes, most clients are best served by a single wrapper that every request goes through — see the JavaScript and Python examples, both of which centralize status handling into one helper function rather than repeating checks at every call site.