Skip to main content
Všechny API endpointy vrací standardní JSON envelope se třemi poli: status, data, message.

Úspěch

{
  "status": "ok",
  "data": {
    "user_id": "8b8f...",
    "username": "pepa"
  },
  "message": null
}
PoleVýznam
status"ok" při úspěchu.
dataPayload — objekt nebo pole. Může být null, pokud endpoint nic nevrací.
messageLidsky čitelná zpráva (např. „Postava byla schválena”). U úspěchu obvykle null.

Chyba

{
  "status": "error",
  "data": null,
  "message": "Uživatel není přihlášen."
}
PoleVýznam
status"error".
dataČasto null. Někdy obsahuje validační chyby per pole.
messageKrátký popis chyby (lokalizovaný).

Validační chyby

Pokud endpoint vrátí 400 Bad Request kvůli validaci, payload může mít strukturu:
{
  "status": "error",
  "data": {
    "errors": {
      "username": "Toto pole je povinné.",
      "age": "Hodnota mimo rozsah 18–80."
    }
  },
  "message": "Některá pole nejsou vyplněna správně."
}

Paginace

Endpointy s listem typicky vrací:
{
  "status": "ok",
  "data": {
    "items": [...],
    "total": 142,
    "page": 1,
    "limit": 20
  }
}
PoleVýznam
itemsPole záznamů aktuální stránky.
totalCelkový počet záznamů odpovídajících filtru.
pageAktuální stránka (1-based).
limitVelikost stránky.
Některé starší endpointy používají offset místo page — v reference je to vždy uvedeno.

HTTP statusy

StatusVýznam
200 OKÚspěch s odpovědí.
201 CreatedÚspěšně vytvořeno (POST).
204 No ContentÚspěch bez body (např. DELETE).
400 Bad RequestValidační chyba.
401 UnauthorizedNejste přihlášený.
403 ForbiddenPřihlášen ale bez práv.
404 Not FoundZáznam neexistuje.
409 ConflictKonflikt (např. duplikát).
429 Too Many RequestsRate limit.
500 Internal Server ErrorNeočekávaná chyba.

Lokalizace zpráv

message je vždy v jazyce sezení (default cs_CZ). Pokud klient potřebuje jiný jazyk, posílá Accept-Language hlavičku — server vybere nejvhodnější.