Per sviluppatori

Piattaforma per il consenso del paziente: come funzionano consenso, ambiti, scadenza e revoca in un'API di dati sanitari

Cosa deve fare una piattaforma che aiuta con il consenso del paziente: il consenso come oggetto di prima classe con ambiti e scadenza, revoca che ha effetto immediato, un registro degli accessi che il paziente può leggere e AI che scrive le approvazioni in attesa. Come lo implementa Anpheros.

di Pubblicato 4 min di lettura

Il consenso è la parte di un prodotto sanitario che nessuno vuole costruire e su cui tutti vengono sottoposti a controllo. "L'utente ha spuntato una casella al momento dell'iscrizione" non soddisfa l'Articolo 9 del GDPR, non supera una revisione sulla protezione dei dati e non consente a una persona di revocare l'accesso da un'app senza eliminare il proprio account. Questa guida descrive cosa deve fare una piattaforma di consenso del paziente e come lo fa Anpheros Platform, in modo che tu possa riutilizzarla invece di ricostruirla.

Versione tecnica per sviluppatori: Piattaforma di consenso del paziente · Consenso su developers.anpheros.com, con richieste, risposte e limiti. Questa pagina è la versione in linguaggio semplice.

Il consenso come oggetto, non come flag

In Anpheros, un consenso è una concessione: una persona, un'applicazione, un set di ambiti, uno scopo, una scadenza. Viene creato quando la persona approva l'accesso sulla pagina del consenso, viene elencato dove la persona può vederlo e può essere revocato in qualsiasi momento. Le letture vengono verificate rispetto ad esso ad ogni richiesta.

  • Ambiti indicano cosa l'applicazione può leggere o scrivere: osservazioni, condizioni, farmaci, allergie, documenti, ecc., opzionalmente ristretti per categoria (ad esempio, risultati di laboratorio ma non sintomi).
  • Durata è scelta dalla persona: 30, 90, 180 o 365 giorni. Non esiste il "per sempre".
  • Revoca ha effetto alla richiesta successiva. L'applicazione riceve un webhook consent.revoked.
  • Scopo viene registrato con la concessione e mostrato alla persona.

Come un'applicazione chiede

Tramite OAuth 2.1 con PKCE, con avvio standalone SMART on FHIR per app che già parlano SMART. La persona accede, vede quale applicazione sta chiedendo, quali ambiti e per quanto tempo, e approva o rifiuta. L'applicazione ottiene un token limitato a quel singolo paziente e a quegli ambiti; una chiave di progetto non sostituisce mai il consenso di una persona.

GET  https://platform.anpheros.com/oauth/authorize?client_id=…&scope=patient/Observation.read …
POST https://platform.anpheros.com/oauth/token

I token di accesso durano 30 minuti, i token di aggiornamento 30 giorni. I documenti di discovery si trovano su /.well-known/oauth-authorization-server e /.well-known/smart-configuration.

Cosa vede il paziente

GET /me/patients/{id}/grants elenca ogni applicazione con accesso, i suoi ambiti e la scadenza. …/grants/{grant}/access-log elenca cosa ciascuna ha letto o scritto, sotto il consenso e con la chiave del progetto stesso. Con format=fhir il log torna come un Bundle di risorse FHIR R4 AuditEvent modellate secondo gli IHE Basic Audit Log Patterns. In Anpheros Daily questo è lo schermo "Connessioni"; la tua app può mostrare lo stesso.

Letture versus scritture

Con il consenso, un'organizzazione vede l'intero record, comprese le informazioni scritte da altre cliniche, ma può modificare o eliminare solo ciò che ha scritto autonomamente. Ogni versione di ogni risorsa registra il progetto che l'ha scritta; una scrittura da parte di un altro progetto viene rifiutata con una spiegazione. Ogni scrittura produce una risorsa Provenance che nomina l'applicazione, l'organizzazione per conto della quale ha agito e la persona.

Gli agenti AI propongono, la persona decide

Una scrittura effettuata sotto il consenso di una persona da un'applicazione registrata come agente AI non viene applicata immediatamente. La piattaforma la convalida e risponde 202 Accepted con un ID di proposta; nulla cambia nel record. La persona vede la proposta, cosa è e quale applicazione l'ha inviata, e la accetta o la rifiuta. Una proposta accettata viene scritta esattamente come inviata e contrassegnata come scritta da AI. È così che un assistente connesso tramite MCP può aiutare a compilare un record senza mai scriverci sopra senza supervisione.

Una persona può anche condividere il proprio record tramite QR o link. POST /me/patients/{id}/shl crea uno SMART Health Link per il sottoinsieme di emergenza (allergie, farmaci, problemi, vaccinazioni) o l'International Patient Summary completo, con un passcode e una scadenza opzionali. Ogni apertura è nel log di accesso e il link può essere disattivato immediatamente. Qualsiasi lettore SMART Health Link può aprirlo.

Il modello completo, con ogni regola, si trova su developers.anpheros.com/guides/consent-model.

Domande frequenti

La concessione è l'oggetto operativo verificato ad ogni richiesta; il record contiene anche risorse FHIR Consent e Provenance in modo che altri sistemi possano leggere ciò che è stato concordato e chi ha scritto cosa. Il log di accesso è disponibile come FHIR AuditEvent.

Un paziente può dare accesso solo a una parte del record?

Sì. Gli ambiti sono per tipo di risorsa, con filtri per categoria, e la persona li sceglie sulla pagina del consenso. Un'app può richiedere solo risultati di laboratorio, o solo farmaci.

Cosa succede quando il consenso scade?

Le richieste sotto quella concessione restituiscono 403 dalla scadenza in poi. L'applicazione può richiedere nuovamente; la persona decide di nuovo. Nulla viene eliminato.

La revoca elimina ciò che l'app ha già letto?

Nessun sistema può "dis-leggere" i dati. La revoca interrompe immediatamente l'accesso futuro ed è registrata; ciò che l'applicazione ha memorizzato dalla propria parte è regolato dai propri obblighi ai sensi del GDPR.

Una clinica può accedere a un record senza il consenso del paziente?

Un progetto vede i pazienti che ha creato autonomamente. La lettura di un record creato altrove richiede la concessione della persona. Non esiste un'esenzione amministrativa.

Questa guida è informativa e non sostituisce il consulto medico. Per le decisioni sulla tua salute parla con il tuo medico. In emergenza chiama il 112.
Sull'autore
Adrian Kereky

Fondatore di Anpheros. Ingegnere elettronico, ha lavorato sei anni sulla guida autonoma, in progetti automobilistici svolti in partnership con Samsung e NVIDIA, sull’architettura dei sistemi di assistenza alla guida e di IA che girano su chip NVIDIA con CUDA. Poi ha costruito Anpheros: la cartella clinica controllata dal paziente e la piattaforma HL7 FHIR R4 su cui funziona.

Di più su Anpheros e sull'autore →

Tieni la tua cartella clinica con te

Anpheros Daily conserva sintomi, analisi, farmaci e documenti in un unico posto, in formato standard, sotto il tuo controllo. Il piano Basic è gratuito.

Scarica Anpheros Daily