Dev Center

Integre com SDK, CLI ou API

SDK em Python, CLI e uma API REST autenticada por mTLS — as chaves nascem e vivem só na memória do seu processo, e o servidor nunca vê nada além de texto cifrado.

Pacotes de código aberto

Experiência de programação simplificada

Oferecemos um SDK em Python, uma CLI compatível com Windows, Mac e Linux, e uma API RESTful pronta para ambiente de contentor ou Kubernetes — tudo mantendo a cifragem de ponta a ponta (E2E), e tudo como código aberto sob licença Apache 2.0.

  • diagnos

    A biblioteca Python por trás do cofre: importe-a, toque em `vault.patients` e o desbloqueio acontece sozinho — cifrado no seu próprio processo, do princípio ao fim.

  • diagnos-cli

    Todo o SDK, direto no seu terminal: o `diagnos login` trata do enrollment, e os comandos patients, exams e files seguem a partir daí.

  • diagnos-api

    Uma fachada REST fina sobre o mesmo SDK, para equipas que falam HTTP em vez de Python — autenticada apenas por certificado mTLS.

Nós adoramos código aberto

A licença permite utilização comercial, modificação e redistribuição livres, com concessão expressa de patente — a única contrapartida é preservar o aviso de direitos de autor e assinalar as alterações feitas. Não prometemos suporte, roteiro público nem processo de aceitação de contribuições: é código aberto, não um produto com contrato de suporte.

git clone https://github.com/diagnos-tech/integration && cd integration
Cloning into 'integration'...
ls -d apps/*/
apps/api/ → diagnos-api
apps/cli/ → diagnos-cli
apps/sdk/ → diagnos
head -n1 LICENSE
Repositório público diagnos-tech/integration

Mãos à obra

Início rápido

Escolha o pacote e o método de instalação — os comandos abaixo são exatamente os que os READMEs do repositório confirmam.

Todo comando abaixo precisa de um DIAGNOS_API_TOKEN, emitido por um administrador do workspace. Como obter

bash
pip install diagnos
python
from diagnos import Diagnos

with Diagnos() as vault:
    for row in vault.patients.list():
        patient = vault.patients.get(row.document_id)
        print(patient.record.legal_name)

Controlo de acesso

Os pacotes são públicos. O token, não.

DIAGNOS_API_TOKEN identifica uma service account e o respetivo workspace, e é emitido por um administrador do workspace. Sozinho, não desbloqueia nada — quem desbloqueia é a aprovação humana dos três passos abaixo.

O que a referência completa da API cobre

  • Especificação OpenAPI 3.1
  • Autenticação por bearer token
  • Ambientes de sandbox e produção

A referência completa é pública — aceda pelo repositório no GitHub ou pela documentação abaixo, sem pedir aprovação a ninguém. Para autenticar as chamadas, crie um DIAGNOS_API_TOKEN em Definições → Contas de serviço, dentro do seu workspace.

Zero trust

Integração com segurança de ponta a ponta

Nenhum processo lê nada sozinho: o enrollment troca chaves e espera que alguém aprove — na hora, ou antes.

Como a aprovação acontece
  1. Gera um par de chaves na hora

    O processo cria um par de chaves híbrido (X25519 + ML-KEM-768) diretamente na memória e regista onde está a correr — sistema operativo, contentor, nome de anfitrião e utilizador.

  2. Imprime o convite

    Um link e um código de seis dígitos saem no stderr — é a única saída deste passo.

    O código confirma, junto com o link, que quem está a aprovar é a mesma pessoa que está a olhar para este terminal.

  3. Um administrador aprova

    Um administrador do workspace abre o link na aplicação web, confere a descrição, escreve o código e escolhe que grupos de segurança aquele processo pode ler. As chaves desses grupos são seladas para as chaves públicas do processo — nunca para o processo em si.

Tudo isto vive na memória: parar o processo apaga as chaves, e reiniciar exige nova aprovação. Isto é o desenho, não uma limitação — quem precisa de reiniciar sem uma pessoa por perto, como o Kubernetes ou uma tarefa agendada, configura o auto-unseal via OpenBao — o modo Automaticamente, ao lado.

  1. Gera um par de chaves na hora

    O processo cria um par de chaves híbrido (X25519 + ML-KEM-768) diretamente na memória e regista onde está a correr — sistema operativo, contentor, nome de anfitrião e utilizador.

  2. Pede a chave selada

    Em vez de imprimir um convite e esperar, o processo pede ao OpenBao a chave que já foi selada para ele — sem link, sem código de seis dígitos.

  3. O OpenBao liberta na hora

    O OpenBao confere que o par de chaves corresponde ao que foi autorizado e liberta o segredo de imediato, sem esperar por ninguém.

A aprovação humana não desapareceu — só aconteceu antes, na configuração do OpenBao, e não a cada reinício. Trocar de ambiente ou revogar o acesso continua a exigir um administrador.