NA ŻYWO · ŁAŃCUCH AUDYTU · UE
SYSTEM · 99,99% DOSTĘPNOŚĆ
v 1.0 ↗ WYPRODUKOWANO W UE

API Tablic

Tablica to współdzielona powierzchnia do rysowania w sesji (pod spodem Excalidraw). Gdy operator wykona jej zrzut, platforma przechwytuje zarówno wyrenderowany PNG, jak i kanoniczny JSON elementów Excalidraw, hashowane razem — dzięki czemu łańcuch audytu może udowodnić, że te same kształty, które były widoczne na ekranie, są tymi, które audytor zobaczy później.

Przechwycenie tablicy to po prostu wiersz materiału dowodowego z kind=whiteboard. Dedykowany endpoint poniżej to wygodny filtr — używaj go, gdy istotne są wyłącznie tablice, a API Materiału dowodowego gdy potrzebne są wszystkie artefakty naraz.

Lista tablic dla sesji

GET /api/v1/public/sessions/{session_id}/whiteboards — zakres whiteboards:read

curl "https://app.nexbasira.com/api/v1/public/sessions/0c8f.../whiteboards?limit=25" \
  -H "Authorization: Bearer nb_sec_..."

Zwraca paginowane kursorowo wiersze materiału dowodowego typu kind=whiteboard.

{
  "data": [
    {
      "id": "ev-wb1...",
      "session": "0c8f...",
      "kind": "whiteboard",
      "status": "ready",
      "mime": "image/png",
      "byte_size": 42178,
      "sha256": "8e2c01...",
      "captured_at": "2026-05-23T10:18:44Z",
      "created_at":  "2026-05-23T10:18:44Z",
      "completed_at":"2026-05-23T10:18:45Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Pobieranie + weryfikacja

Tak samo jak każdy inny wiersz materiału dowodowego — pobierz podpisany URL z endpoint pobierania materiału dowodowego, zahashuj bajty za pomocą SHA-256 i porównaj ze zwróconym sha256:

curl "https://app.nexbasira.com/api/v1/public/evidence/ev-wb1.../download" \
  -H "Authorization: Bearer nb_sec_..."

JSON elementów Excalidraw

Każdego wiersza tablicy integrity_jsonb.whiteboard_state przechowuje kanoniczną scenę Excalidraw, która wygenerowała PNG. Łączny sha256 kotwiczy PNG i JSON razem, więc ponowne wyrenderowanie JSON później daje identyczny bajtowo PNG. JSON celowo nie znajduje się w publicznym kształcie odczytu — poproś o /download URL dla wiersza, aby pobrać surowy .png, oraz użyj endpointu weryfikacji audytu po stronie SPA, gdy JSON jest potrzebny do dowodów ponownego renderowania.

Częste błędy

StatusKodKiedy
403permission_deniedDane uwierzytelniające nie mają uprawnienia whiteboards:read.
404not_foundSesja nie istnieje w organizacji powiązanej z danymi uwierzytelniającymi.