AO VIVO · AUDIT CHAIN · UE
SISTEMA · 99,99% DISPONIBILIDADE
v 1.0 ↗ FEITO NA UE

API de Quadros brancos

Um Quadro branco é uma superfície de desenho colaborativa em sessão (Excalidraw por baixo). Quando o operador o captura, a plataforma captura tanto o PNG renderizado como o JSON canónico dos elementos Excalidraw, com hash conjunto — para que a cadeia de auditoria possa provar que as mesmas formas que viu no ecrã são as que o auditor vê mais tarde.

Uma captura de quadro branco é apenas uma linha de Prova com kind=whiteboard. O endpoint dedicado abaixo é um filtro de conveniência — use-o quando só lhe interessam os quadros brancos, a API de Provas quando quer todos os artefactos de uma só vez.

Listar quadros brancos de uma sessão

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

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

Devolve linhas de Prova paginadas por cursor de 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
}

Transferir + verificar

Igual a qualquer outra linha de Prova — obtenha um URL assinado do endpoint de transferência de Provas, faça o hash dos bytes com SHA-256, compare com o sha256:

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

JSON de elementos Excalidraw

O integrity_jsonb.whiteboard_state de cada linha de quadro branco guarda a cena Excalidraw canónica que produziu o PNG. O sha256 combinado ancora o PNG e o JSON em conjunto, pelo que voltar a renderizar o JSON mais tarde produz um PNG byte-idêntico. O JSON está intencionalmente fora da forma pública de leitura — peça o URL /download da linha para obter o .pngem bruto, e use o endpoint de verificação de auditoria do lado da SPA quando precisar do JSON para provas de re-render.

Erros comuns

EstadoCódigoQuando
403permission_deniedA credencial não tem whiteboards:read.
404not_foundA sessão não existe na organização da credencial.