Přeskočit na hlavní obsah

Audit Log API

API pro dotazování audit logu - záznamů všech důležitých akcí v systému.

Přehled

Audit log slouží k:

  • Auditování všech změn v systému
  • Řešení problémů
  • Sledování aktivity uživatelů
  • Dodržování předpisů a bezpečnost

Všechny důležité akce jsou automaticky zaznamenávány do audit logu.

Endpointy

GET /audit

Query endpoint pro audit log s filtrováním a paginací.

Oprávnění: Autentizovaný uživatel

Query parametry:

  • entity_type - Typ entity (např. 'item', 'asset', 'kit_global', 'kit_project', 'project', 'load_session')
  • entity_id - ID entity
  • user_id - ID uživatele, který akci provedl
  • action - Typ akce (např. 'SCAN_LOAD', 'PLAN_ADD', 'CREATE', 'UPDATE', 'DELETE')
  • from_timestamp - Začátek časového rozsahu (Unix timestamp)
  • to_timestamp - Konec časového rozsahu (Unix timestamp)
  • page - Číslo stránky (výchozí: 1)
  • pageSize - Počet záznamů na stránku (výchozí: 50, max: 100)

Příklad requestu:

GET /audit?entity_type=item&user_id=1&from_timestamp=1704067200&page=1&pageSize=50

Response:

{
"success": true,
"data": {
"auditLogs": [
{
"id": 1,
"user_id": 1,
"user_email": "admin@example.com",
"user_name": "Admin User",
"action": "SCAN_LOAD",
"entity_type": "asset",
"entity_id": 5,
"changes": null,
"timestamp": 1704067200,
"ip_address": null
},
{
"id": 2,
"user_id": 1,
"user_email": "admin@example.com",
"user_name": "Admin User",
"action": "PLAN_ADD",
"entity_type": "load_session",
"entity_id": 1,
"changes": null,
"timestamp": 1704067100,
"ip_address": null
}
],
"pagination": {
"total": 150,
"page": 1,
"pageSize": 50,
"totalPages": 3
}
}
}

Typy akcí (Actions)

Skenovací události

  • SCAN_LOAD - Asset naložen
  • SCAN_UNLOAD - Asset vyložen

Události množství

  • QTY_ADD - Množství přidáno
  • QTY_REMOVE - Množství odebráno
  • QTY_SET - Množství nastaveno

Události plánu

  • PLAN_ADD - Položka přidána do plánu
  • PLAN_REMOVE - Položka odebrána z plánu

Události kitů

  • KIT_GLOBAL_MEMBER_ASSET_ADD - Asset přidán do global kitu
  • KIT_GLOBAL_MEMBER_ASSET_REMOVE - Asset odebrán z global kitu
  • KIT_GLOBAL_MEMBER_ITEM_SET_QTY - Množství itemu nastaveno v global kitu
  • KIT_PROJECT_LINE_ADD - Řádek přidán do project kitu
  • KIT_PROJECT_LINE_REMOVE - Řádek odebrán z project kitu
  • KIT_PROJECT_LINE_SET_QTY - Množství nastaveno v project kitu

CRUD události

  • CREATE - Entita vytvořena
  • UPDATE - Entita upravena
  • DELETE - Entita smazána

Typy entit (Entity Types)

  • item - Item (typová karta)
  • asset - Asset (konkrétní kus)
  • kit_global - Global kit
  • kit_project - Project kit
  • project - Projekt
  • load_session - Load session
  • user - Uživatel

Příklady použití

Získat všechny akce uživatele za poslední den

GET /audit?user_id=1&from_timestamp=1703980800&to_timestamp=1704067200

Získat všechny změny na konkrétním itemu

GET /audit?entity_type=item&entity_id=10

Získat všechny SCAN_LOAD akce

GET /audit?action=SCAN_LOAD

Získat všechny akce na global kitu

GET /audit?entity_type=kit_global&entity_id=1

Kódy chyb

  • VALIDATION_ERROR - Neplatné parametry
  • INTERNAL_ERROR - Vnitřní chyba serveru