Dev Center

Integrati con SDK, CLI o API

SDK in Python, CLI e un'API REST autenticata via mTLS — le chiavi nascono e vivono solo nella memoria del tuo processo, e il server non vede mai altro che testo cifrato.

Pacchetti open source

Un'esperienza di sviluppo semplificata

Offriamo un SDK in Python, una CLI compatibile con Windows, Mac e Linux, e un'API RESTful pronta per un ambiente container o Kubernetes — il tutto mantenendo la crittografia end-to-end (E2E), e il tutto open source con licenza Apache 2.0.

  • diagnos

    La libreria Python dietro il caveau: importala, tocca `vault.patients` e lo sblocco avviene da solo — cifrato nel tuo stesso processo, dall'inizio alla fine.

  • diagnos-cli

    Tutto l'SDK, direttamente nel tuo terminale: `diagnos login` gestisce l'enrollment, e i comandi patients, exams e files proseguono da lì.

  • diagnos-api

    Una facciata REST sottile sullo stesso SDK, per i team che parlano HTTP invece di Python — autenticata solo tramite certificato mTLS.

Amiamo l'open source

La licenza concede uso commerciale, modifica e redistribuzione libere, con una concessione esplicita di brevetto — l'unica condizione è conservare l'avviso di copyright e segnalare le modifiche apportate. Non promettiamo supporto, una roadmap pubblica né un processo di accettazione delle contribuzioni: è open source, non un prodotto con un contratto di supporto.

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
Repository pubblico diagnos-tech/integration

Si comincia

Avvio rapido

Scegli il pacchetto e il metodo di installazione — i comandi qui sotto sono esattamente quelli verificati nei README del repository.

Ogni comando qui sotto richiede un DIAGNOS_API_TOKEN, emesso da un admin del workspace. Come ottenerlo

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)

Controllo degli accessi

I pacchetti sono pubblici. Il token no.

DIAGNOS_API_TOKEN identifica una service account e il suo workspace, ed è rilasciato da un amministratore del workspace. Da solo non sblocca nulla — a sbloccare è l'approvazione umana dei tre passaggi successivi.

Cosa copre il riferimento completo dell'API

  • Specifica OpenAPI 3.1
  • Autenticazione con bearer token
  • Ambienti di sandbox e produzione

Il riferimento completo è pubblico — accedi dal repository su GitHub o dalla documentazione qui sotto, senza chiedere approvazione a nessuno. Per autenticare le chiamate, crea un DIAGNOS_API_TOKEN in Impostazioni → Account di servizio, dentro il tuo workspace.

Zero trust

Integrazione con sicurezza end-to-end

Nessun processo legge nulla da solo: l'enrollment scambia chiavi e aspetta che qualcuno approvi — al momento, o in anticipo.

Come avviene l'approvazione
  1. Genera una coppia di chiavi al momento

    Il processo crea una coppia di chiavi ibrida (X25519 + ML-KEM-768) direttamente in memoria e registra da dove sta girando — sistema operativo, contenitore, hostname e utente.

  2. Stampa l'invito

    Un link e un codice a sei cifre escono su stderr — è l'unico output di questo passaggio.

    Il codice conferma, insieme al link, che chi sta approvando è la stessa persona che sta guardando questo terminale.

  3. Un amministratore approva

    Un amministratore del workspace apre il link nell'app web, controlla la descrizione, digita il codice e sceglie quali gruppi di sicurezza quel processo può leggere. Le chiavi di quei gruppi vengono sigillate per le chiavi pubbliche del processo — mai per il processo stesso.

Tutto questo vive in memoria: fermare il processo cancella le chiavi, e riavviarlo richiede una nuova approvazione. Questo è il progetto, non un limite — chi ha bisogno di riavviare senza una persona vicino, come Kubernetes o un job pianificato, configura l'auto-unseal tramite OpenBao — la modalità Automaticamente, qui accanto.

  1. Genera una coppia di chiavi al momento

    Il processo crea una coppia di chiavi ibrida (X25519 + ML-KEM-768) direttamente in memoria e registra da dove sta girando — sistema operativo, contenitore, hostname e utente.

  2. Chiede la chiave sigillata

    Invece di stampare un invito e aspettare, il processo chiede a OpenBao la chiave già sigillata per lui — nessun link, nessun codice a sei cifre.

  3. OpenBao la rilascia sul momento

    OpenBao verifica che la coppia di chiavi corrisponda a quanto autorizzato e rilascia subito il segreto, senza aspettare nessuno.

L'approvazione umana non è scomparsa — è solo avvenuta prima, nella configurazione di OpenBao, e non a ogni riavvio. Cambiare ambiente o revocare l'accesso richiede ancora un amministratore.