Painel
Visão Geral (todos os pacientes)
Foco em Diabéticos — Acompanhamento de HbA1c
Monitoramento de Pedidos (Engajamento Clínico)
Últimos Exames Registrados
| Paciente | Data | A1C (%) | Obs. |
|---|---|---|---|
| Nenhum exame registrado | |||
Últimos Pacientes com Prontuário Aberto
| Paciente | Local | Última Consulta | Aberto em |
|---|---|---|---|
| Nenhum prontuário aberto ainda | |||
Agenda
Importe a agenda da CASSI, confira diferenças nas reimportações e acompanhe presença/consulta lançada no mês.
Importar agenda
Cole o texto copiado da outra agenda. Primeiro gere uma prévia para conferir novos horários, alterações e ausências na nova importação.
Mês
| Nome | Anterior | Última A1C | Ação Rápida (Data e Valor) | Próximo Exame | Status | Ações |
|---|---|---|---|---|---|---|
Nenhum paciente cadastrado | ||||||
| Carregando... | |||||
|---|---|---|---|---|---|
| Nenhum paciente pendente | |||||
Linhas de Cuidado
Gerencie programas de seguimento clinico sem alterar o fluxo atual do sistema. Aqui ficam os perfis, protocolos e itens de monitoramento da V2.
Nova Linha de Cuidado
Como Usar a V2
1. Crie ou ajuste as linhas de cuidado que a equipe quer seguir.
2. Monte o protocolo com exames e periodicidade para cada perfil.
3. Vincule os pacientes aos perfis no cadastro do paciente.
4. Use os filtros e as pendencias para busca ativa sem mexer no fluxo atual do sistema.
Linhas Configuradas
Carregando...
Protocolo da Linha Selecionada
| Item | Categoria | Intervalo | Obrigatorio | Sexo | Acao |
|---|---|---|---|---|---|
| Selecione uma linha de cuidado. | |||||
Catalogo de Exames e Rastreios
| Nome | Categoria | Unidade | Intervalo (meses) | Valor de Referência | Ativo |
|---|---|---|---|---|---|
| Carregando... | |||||
Adicionar Pacientes em Lote
Digite os nomes dos pacientes, um por linha. Todos serão adicionados de uma vez ao sistema.
Tipos de Exames e Periodicidade
Configure os tipos de exames monitorados e o intervalo de retorno de cada um.
Adicionar Novo Tipo de Exame
Locais de Atendimento
Cadastre os consultórios, clínicas ou postos onde você atende. Cada paciente pode ser vinculado a um local, mantendo todos organizados num único repositório.
Adicionar Local
Inteligência Artificial (Magic SOAP)
Configure as chaves usadas pelos recursos de IA do prontuário. O Magic SOAP usa DeepSeek para organizar texto livre; os Insights IA usam DeepSeek para resumir consultas e OpenAI para consolidar achados e pendências.
Escolha como o campo de evolução aparece por padrão no prontuário. Você pode alternar a qualquer momento dentro da consulta.
Insights IA
Dicionário de Exames (Entrada Rápida)
Cadastre exames novos, seus sinônimos e a faixa de referência (mín/máx) usada para colorir os resultados (verde = normal, vermelho = alterado, laranja = sem faixa definida). Ex.: Ácido Metilmalônico · sinônimos amm, ac metilmalonico · mín 0,07 · máx 0,27 · un. µmol/L.
Ver exames já reconhecidos (referência, com faixas)
Dicionário de Medicamentos (Entrada Rápida)
A lista abaixo já vem com o dicionário base (editável). Altere os sinônimos/marcas de qualquer medicamento, edite nomes ou adicione novos. Ex.: Metformina · sinônimos glifage, glucoformin
Na entrada rápida você também pode clicar em corrigir num medicamento para ensinar uma variação na hora.
Ver dicionário base original (referência)
Documentos — Cabeçalho e Rodapé
Padrão usado em atestados, relatórios e demais documentos. O logo, o responsável técnico e os dados de contato são obrigatórios e aparecem em todos os documentos.
Terapias Seriadas — Justificativas
Essas justificativas aparecem apenas no template Terapias Seriadas do prontuário. Não alteram logotipo, endereço, responsável técnico nem demais dados dos documentos médicos.
Gerenciar Usuários
Crie usuários com acesso restrito a locais de atendimento e funcionalidades específicas.
Tokens de Integração
Crie chaves para sistemas externos consultarem ou enviarem dados para o sistema. O token completo aparece apenas uma vez, logo após a criação.
Nova Integração
| Integração | Token | Escopos | Status | Último uso | Ações |
|---|---|---|---|---|---|
| Carregando... | |||||
Documentação da API
Use esta API para integrar laboratórios, sistemas externos, BI ou outras ferramentas. Todas as chamadas precisam do header Authorization: Bearer SEU_TOKEN.
Base URL
/external_api.php/v1
Autenticação
Authorization: Bearer dm2_xxxxxxxxxxxxxxxxx
Prontuário completo
GET /v1/patients/{id}/record
Retorna linhas de cuidado, anotações/consultas, exames, laboratório, medicamentos, condições, pedidos e documentos.
Endpoints disponíveis
| Método | Endpoint | Uso | Escopo |
|---|---|---|---|
| GET | /v1/health | Verificar disponibilidade | token válido |
| GET | /v1/patients?q=nome-ou-cpf | Listar/buscar pacientes por nome, CPF ou CNS | patients:read |
| GET | /v1/patients/{id} | Consultar paciente com resumo de prontuário | patients:read |
| GET | /v1/patients/{id}/record | Consultar linhas, consultas, exames, medicamentos, condições e documentos | patients:read |
| POST | /v1/patients | Criar ou vincular paciente | patients:write |
| PATCH | /v1/patients/{id} | Atualizar paciente | patients:write |
| GET | /v1/patients/{id}/exams | Listar exames do paciente | exams:read |
| POST | /v1/patients/{id}/exams | Enviar exame para paciente | exams:write |
| POST | /v1/exams | Enviar exame localizando por CPF/external_id | exams:write |
Exemplo: buscar paciente
curl "BASE_URL/external_api.php/v1/patients?q=Adail%20Nicolau%20Linhares" \
-H "Authorization: Bearer SEU_TOKEN"
O parâmetro q busca por nome. Se tiver números, também busca em CPF e CNS.
Exemplo: consultar prontuário
curl "BASE_URL/external_api.php/v1/patients/123/record?consultations_limit=10&lab_results_limit=30" \
-H "Authorization: Bearer SEU_TOKEN"
Retorna linhas de cuidado, condições, medicamentos, exames-chave, resultados laboratoriais, pedidos, consultas/anotações SOAP, sinais vitais e documentos do paciente.
Chaves retornadas pelo record
record{
"care_lines": [],
"conditions": [],
"medications": [],
"key_exams": [],
"lab_results": [],
"exam_requests": [],
"consultations": [],
"documents": [],
"limits": {}
}
care_lines: id, care_line_id, name, description, color, icon, status, start_date, end_date, risk_level, notes, created_at, updated_at.
conditions: id, patient_id, care_line_id, name, status, started_at, ended_at, notes, created_at, updated_at, care_line_name, care_line_color.
medications: id, patient_id, name, dose, frequency, route, started_at, ended_at, status, last_reviewed_at, notes, created_at, updated_at.
key_exams: id, patient_id, exam_type_id, exam_type_name, exam_date, result_value, notes, created_at.
lab_results: id, patient_id, consultation_id, exam_date, canonical_name, raw_key, value_numeric, value_text, unit, recognized, created_at.
exam_requests: id, patient_id, requested_at, status, note.
consultations: id, patient_id, consultation_date, status, chief_complaint, subjective, objective, assessment, plan, notes, raw_text, copied_from_consultation_id, created_at, updated_at, finalized_at, vitals, lab_results, documents.
consultations[].vitals: id, consultation_id, blood_pressure_systolic, blood_pressure_diastolic, weight_kg, height_cm, bmi, capillary_glucose, heart_rate, waist_cm, notes, created_at, updated_at.
documents: id, patient_id, consultation_id, doc_type, title, body, created_at.
limits: key_exams, lab_results, consultations, documents.
Coortes na listagem de pacientes
Campos calculados automaticamente no GET /v1/patients e GET /v1/patients/{id} para montar coortes como sem consulta há 12 meses, HbA1c vencida/acima de 7 e sem exames recentes, sem buscar o /record completo de cada paciente.
Campos calculados no objeto do paciente:
last_consultation_date: data da consulta mais recente registrada em consultations.consultation_date, ou null. Não é agendamento.
consultation_count: total de consultas registradas do paciente.
last_hba1c_value: valor da HbA1c mais recente, ou null.
last_hba1c_date: data do exame referente à última HbA1c, ou null.
last_exam_date: data do exame mais recente do paciente, considerando exames-chave e laboratório.
Filtros aceitos: is_dm=1, last_consultation_before=2025-06-07, months_without_consultation=12, hba1c_min=7, hba1c_max=6, hba1c_before=2026-01-07, last_exam_before=2026-01-07.
Observação: filtros *_before incluem pacientes sem dado correspondente, para facilitar coortes de pendência.
Qualidade de dados futura: preencher lab_results.unit quando possível e validar HbA1c implausível, como 0. Faixa sugerida: 3 a 20.
Exemplo: criar paciente
curl -X POST "BASE_URL/external_api.php/v1/patients" \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 0dd9b3e6-a444-4f47-b6d5-f35d4ecb0a37" \
-d '{
"source": "sistema_externo",
"external_id": "pac-123",
"name": "Maria da Silva",
"cpf": "52998224725",
"birth_date": "1970-01-01",
"phone": "11999999999",
"is_dm": true
}'
Exemplo: enviar exame
curl -X POST "BASE_URL/external_api.php/v1/exams" \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 8da28349-40a8-4215-b98f-03f674145f3c" \
-d '{
"source": "laboratorio_x",
"external_id": "lab-987",
"patient_cpf": "52998224725",
"exam_type": "hba1c",
"exam_name": "Hemoglobina glicada",
"result_value": "7.2",
"result_unit": "%",
"collected_at": "2026-06-01"
}'
source e external_id em toda escrita e use Idempotency-Key em chamadas POST para evitar duplicidade.
Relatório Analítico
Análise histórica da saúde populacional e adesão aos exames.
Configurar Relatório
Relatório Executivo de Saúde Populacional
Monitoramento de Pacientes Diabéticos (DM2)
1. Cenário e Cobertura Assistencial
2. Controle Glicêmico e Classificação de Risco
3. Evolução Temporal Populacional
4. Trajetória Individual de Curto Prazo
5. Comportamento e Taxa de Adesão
6. Cobertura de Solicitações e Absenteísmo Recorrente
Pacientes com Pedido por Categoria
Pacientes com Múltiplas Solicitações Sem Exame (Absenteísmo Recorrente)
| Paciente | Telefone | Status Atual | Qtd. Pedidos | Última A1C |
|---|