Skip to main content

Portal 2.0 API

A API do Portal 2.0 documenta os serviços e módulos de backend que sustentam a plataforma.

Módulos​

A API é organizada em módulos independentes, cada um responsável por um domínio:

  • Authentication — servidor de autorização OAuth2/OIDC, autenticação do usuário, gestão de sessão, MFA/TOTP e endpoints de descoberta OIDC.
  • Audit — trilha de auditoria cross-domain: consumo assíncrono de eventos via fila, cadeia de hash apensável (append-only) por tenant, verificação de integridade e consulta com mascaramento de campos sensíveis na leitura.
  • Authorization — catálogo de permissões e papéis (RBAC), papéis customizados por tenant, atribuição de papéis a usuários, políticas de negação adicionais (ABAC), consulta das próprias permissões efetivas e rotas de inspeção/diagnóstico.
  • Usuário — cadastro e ciclo de vida do usuário, perfil próprio e de terceiros, diretório e exportação, código interno, identidade visual, ativos versionados, vínculo com serviço externo, snippets pessoais e convites.
  • Tenant / Organização — hierarquia tenant → unidade, branding e domínio customizado, configuração tipada com override por nível, módulos (feature flags) e vínculo com PACS.
  • Anexos (Attachment) — upload, listagem, reclassificação e exclusão de anexos de exame por usuário autenticado, e convite de upload de curta duração para terceiro sem login no portal.
  • SLA — prazo de laudo por prioridade e modalidade com herança tenant → unidade, cap de SLA por protocolo clínico (AVC/Trauma) e o motor de cálculo do prazo consumido pelo domínio de Exames.
  • Notification (e-mail) — infraestrutura compartilhada de envio de e-mail (SMTP/SES), sem fila própria, consumida pelo identity (convite, senha, verificação) e pelo diagnóstico (envio de laudo/imagens por e-mail).
  • Áudio — gravação, listagem e exclusão lógica de áudios de ditado anexados a um exame, com validação de formato pela assinatura binária do arquivo e link de download pré-assinado de curta duração.
  • Comentários e achado crítico — comentário de texto livre em um exame (sem efeito clínico) e sinalização independente de achado crítico e suspeita técnica (flags com motivo, sem criar comentário).
  • Busca — pesquisa avançada da worklist de exames, contagem por categoria, exportação em CSV, favoritos de busca e busca padrão pessoal.
  • API Pública (Integrações) — borda pública para aplicações externas (RIS/PACS/parceiros): autenticação por token de máquina, plataforma de integração (adapters, instâncias, segredos cifrados, concessão de rotas com de-para de resposta) e leitura de exames/tenants/unidades; inclui o inventário de compatibilidade com a API legada do Portal 1.0.
  • Exame — ciclo de vida do exame (ingestão assíncrona, CRUD, transição de status com motivo, prioridade/modalidade/SLA/unidade, atribuição de equipe, duplicação, relacionamentos entre exames, compartilhamento entre unidades), catálogo médico (especialidade/subespecialidade/DICOM alias), motivos de status e política de workflow/preparo por tenant e unidade.
  • Laudo (Report) — digitação e edição do laudo, assinatura (padrão, complementar, por residente) e correção pós-assinatura, transição de status/reatribuição/reavaliação, controle de concorrência de edição, máscaras de laudo e compartilhamento, modelos de cabeçalho/rodapé, geração e reprocessamento do PDF, revisão por pares e entrega do laudo assinado para integração externa.

Esta lista cresce conforme os demais módulos são documentados (ver tasks/docs-fila.md).