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+providerNpimemberId+providerNpi+attributionPeriod - Opzione 2: riferimento al paziente più riferimento al fornitore
-
patientReference+providerReferencepatientReference+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 è:
draftopen
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
attributionPeriodviene 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»