SDK
Patients
`vault.patients` — listar, ler, criar, atualizar, arquivar/desarquivar, apagar/restaurar.
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.