SDK

Patients

`vault.patients` — listar, ler, criar, atualizar, arquivar/desarquivar, apagar/restaurar.

Nesta página

class

Assinatura #

class Patients(documents: VersionedDocuments[PatientRecord, PatientSummary], *, time_precision: TimePrecision | None = None)

vault.patients — listar, ler, criar, atualizar, arquivar/desarquivar, apagar/restaurar.

Membros #

list(*, security_group: str | None = None, include_deleted: bool = False, limit: int = 50, cursor: str | None = None) -> Page[PatientListItem] #

method

Uma página de pacientes, cada um com o resumo decifrado (nomes, tags) — nenhuma versão baixada.

iter_all(*, security_group: str | None = None, include_deleted: bool = False, limit: int = 50) -> Iterator[PatientListItem] #

method

Todo paciente, por todas as páginas.

get(patient_id: str, *, version_id: str | None = None, include_draft: bool = True) -> Patient #

method

Busca e decifra um paciente: o conteúdo mais novo, ou a versão que `version_id` nomeia. O conteúdo mais novo é o do app web: a cabeça de rascunho quando é mais nova que a versão corrente (`Patient.from_draft`), senão a versão corrente. Passe `include_draft=False` para ler só versões confirmadas.

create(record: PatientRecord | Mapping[str, Any], *, security_group: str, tags: Sequence[str] = (), specialist_ids: Sequence[str] | None = None) -> Patient #

method

Sela `record` sob `security_group` e cria o paciente com a primeira versão. `tags` são rótulos de lista/busca ("diabetes"); ficam selados dentro do resumo, nunca vão em claro. `specialist_ids` vão no `meta` em claro — o único metadado de paciente que o próprio cofre lê.

update(patient_id: str, record: PatientRecord | Mapping[str, Any], *, tags: Sequence[str] | None = None, specialist_ids: Sequence[str] | None = None, expected_latest_version_id: str | None = None) -> Patient #

method

Sela uma versão nova e completa de `record`; `tags=None` mantém as tags atuais. Passe `expected_latest_version_id=patient.index.latest_version_id` da sua leitura anterior para o cofre recusar a gravação (`ConflictError`, `DocumentVersionMismatch`) se outra pessoa salvou no meio-tempo.

archive(patient_id: str) -> DocumentIndex #

method

Marca o paciente arquivado (sem versão nova).

unarchive(patient_id: str) -> DocumentIndex #

method

Tira a flag de arquivado (sem versão nova).

delete(patient_id: str) -> DocumentIndex #

method

Manda o paciente para a lixeira — uma flag, nunca um apagar de verdade; `restore` desfaz.

restore(patient_id: str) -> DocumentIndex #

method

Tira o paciente da lixeira.