$member-addoperazione per HealthLake - AWS HealthLake

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

$member-addoperazione per HealthLake

L'$member-addoperazione FHIR aggiunge un membro (paziente) a una risorsa del Gruppo, in particolare a una lista di attribuzione dei membri. Questa operazione fa parte della DaVinci Member Attribution Implementation Guide e supporta il processo di riconciliazione per la gestione delle attribuzioni dei membri.

Operazione Endpoint

POST [base]/datastore/{datastoreId}/r4/Group/{groupId}/$member-add Content-Type: application/json

Parameters

L'operazione accetta una risorsa FHIR Parameters con le seguenti combinazioni di parametri:

Opzioni dei parametri

È possibile utilizzare una delle seguenti combinazioni di parametri:

Opzione 1: Member ID + Provider NPI

memberId + providerNpi

memberId + providerNpi + attributionPeriod

Opzione 2: riferimento al paziente più riferimento al fornitore

patientReference + providerReference

patientReference + providerReference + attributionPeriod

Dettagli dei parametri

MemberID (opzionale)

L'identificatore del membro da aggiungere al gruppo.

Tipo: identificatore

Sistema: sistema di identificazione del paziente

{ "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }
ProviderNPI (opzionale)

Il National Provider Identifier (NPI) del provider attribuito.

Tipo: identificatore

Sistema: http://terminology.hl7. org/CodeSystem/NPI

{ "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }
Riferimento per il paziente (opzionale)

Riferimento diretto alla risorsa per il paziente da aggiungere.

Tipo: riferimento

{ "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }
ProviderReference (opzionale)

Riferimento diretto alla risorsa del provider.

Tipo: riferimento

{ "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }
Periodo di attribuzione (opzionale)

Il periodo di tempo durante il quale il paziente viene attribuito al fornitore.

Tipo: Periodo

{ "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } }

Esempi di richieste

Utilizzo dell'ID membro e del provider NPI

{ "resourceType": "Parameters", "parameter": [ { "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }, { "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

Utilizzo dei riferimenti di pazienti e fornitori

{ "resourceType": "Parameters", "parameter": [ { "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }, { "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

Formato della risposta

Risposta di aggiunta riuscita

HTTP Status: 200 OK Content-Type: application/fhir+json { "resourceType": "OperationOutcome", "issue": [ { "severity": "success", "code": "informational", "details": { "text": "Member Patient/patient-new successfully added to the Member Attribution List." } } ] }

Risposte agli errori

Sintassi di richiesta non valida

Stato HTTP: 400 Richiesta errata

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "invalid", "details": { "text": "Invalid parameter combination provided" } } ] }
Risorsa non trovata

Stato HTTP: 404 non trovato

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-found", "details": { "text": "Resource not found." } } ] }
Conflitto di versione

Stato HTTP: conflitto 409

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "conflict", "details": { "text": "Resource version conflict detected" } } ] }
Stato di attribuzione non valido

Stato HTTP: 422 Entità non processabile

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "business-rule", "details": { "text": "Cannot add member to Attribution List with status 'final'. Status must be 'draft' or 'open'." } } ] }

Regole aziendali

Convalida dello stato di attribuzione

L'operazione può essere eseguita solo quando lo stato di attribuzione del gruppo è:

  • draft

  • open

Le operazioni non sono consentite quando lo stato èfinal.

Prevenzione della duplicazione dei membri

Il sistema impedisce l'aggiunta di membri duplicati in base alla combinazione unica di:

  • Identificatore del membro

  • Identificativo del pagatore

  • Identificatore di copertura

Convalida del periodo di copertura

Quando ne attributionPeriod viene fornita una, questa deve rientrare nei limiti del periodo di copertura del socio. Il sistema consentirà di:

  • Cerca la risorsa Coverage del membro

  • Usa la copertura più recente (VersionID più alto) se ne esistono più

  • Verifica che il periodo di attribuzione non superi il periodo di copertura

Convalida del riferimento

Quando vengono forniti sia l'ID che il riferimento per la stessa risorsa (paziente o fornitore), il sistema verifica che corrispondano alla stessa risorsa.

Quando vengono forniti entrambi i campi ID e reference.identifier per la stessa risorsa (paziente o fornitore), viene generato un errore.

Autenticazione e autorizzazione

L'operazione richiede l'autorizzazione SMART on FHIR per:

  • Autorizzazioni di lettura: per convalidare le risorse di pazienti, fornitori e gruppi

  • Autorizzazioni di ricerca: per trovare risorse in base all'identificatore

  • Aggiorna le autorizzazioni: per modificare la risorsa del gruppo

Comportamento operativo

Aggiornamenti delle risorse
  • Aggiorna l'ID della versione della risorsa del gruppo

  • Crea una voce di cronologia con lo stato originale della risorsa prima dell'operazione

  • Aggiunge le informazioni sui membri all'array Group.member con:

    • Riferimento al paziente in entity.reference

    • Periodo di attribuzione in periodo

    • Informazioni sulla copertura e sul fornitore nei campi di estensione

Fasi di convalida
  • Convalida dei parametri: garantisce combinazioni di parametri valide

  • Esistenza di risorse: verifica l'esistenza di risorse per pazienti, fornitori e gruppi

  • Stato di attribuzione: conferma che lo stato del gruppo consente modifiche

  • Duplicate Check: impedisce l'aggiunta di membri esistenti

  • Convalida della copertura: garantisce che il periodo di attribuzione rientri nei limiti di copertura

Limitazioni

  • Tutte le risorse referenziate devono esistere all'interno dello stesso datastore

  • L'operazione funziona solo con le risorse del Member Attribution List Group

  • I periodi di attribuzione devono rientrare nei limiti di copertura

  • Impossibile modificare i gruppi con stato «finale»