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à.
$inquireOperazione FHIR per HealthLake
L'$inquireoperazione consente di verificare lo stato di una richiesta di autorizzazione preventiva inviata in precedenza. Questa operazione implementa la Guida all'implementazione del Da Vinci Prior Authorization Support (PAS)
Come funziona
-
Invia richiesta: invii un pacchetto FHIR contenente il reclamo che desideri verificare e le informazioni di supporto
-
Cerca: HealthLake cerca il corrispondente ClaimResponse nel tuo archivio dati
-
Recupera: viene recuperato lo stato di autorizzazione più recente
-
Rispondi: ricevi una risposta immediata con lo stato dell'autorizzazione corrente (in coda, approvata, negata, ecc.)
Nota
$inquireè un'operazione di sola lettura che recupera lo stato di autorizzazione esistente. Non modifica o aggiorna alcuna risorsa nell'archivio dati.
Endpoint API
POST /datastore/{datastoreId}/r4/Claim/$inquire Content-Type: application/fhir+json
Struttura della richiesta
Requisiti del pacchetto
La tua richiesta deve essere una risorsa FHIR Bundle con:
-
Bundle.type: Deve essere
"collection" -
bundle.entry: deve contenere esattamente una risorsa Claim con:
-
use = "preauthorization" -
status = "active"
-
-
Risorse referenziate: tutte le risorse a cui fa riferimento il reclamo devono essere incluse nel pacchetto
Interrogazione per esempio
Le risorse del tuo pacchetto di input fungono da modello di ricerca. HealthLake utilizza le informazioni fornite per individuare il corrispondente ClaimResponse.
Risorse obbligatorie
| Risorsa | Cardinalità | Profilo | Description |
|---|---|---|---|
| Reclamo | 1 | Richiesta di reclamo PAS | L'autorizzazione preventiva su cui stai chiedendo informazioni |
| La paziente | 1 | Paziente beneficiario PAS | Informazioni demografiche sui pazienti |
| Organizzazione (assicuratore) | 1 | Organizzazione assicurativa PAS | Compagnia assicurativa |
| Organizzazione (fornitore) | 1 | Organizzazione richiedente PAS | Operatore sanitario che ha inviato la richiesta |
Criteri di ricerca importanti
HealthLake ricerche per l' ClaimResponse utilizzo:
-
Riferimento del paziente riportato nel reclamo
-
Riferimento dell'assicuratore riportato nel reclamo
-
Riferimento al fornitore riportato nel reclamo
-
Data di creazione del reclamo (come filtro temporale)
Solo domande specifiche per il paziente
Tutte le richieste devono essere legate a un paziente specifico. Non sono consentite domande a livello di sistema senza identificazione del paziente.
Richiesta di esempio
POST /datastore/example-datastore/r4/Claim/$inquire Content-Type: application/fhir+json Authorization: Bearer <your-token> { "resourceType": "Bundle", "id": "PASClaimInquiryBundleExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-inquiry-request-bundle"] }, "identifier": { "system": "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER", "value": "5269368" }, "type": "collection", "timestamp": "2005-05-02T14:30:00+05:00", "entry": [ { "fullUrl": "http://example.org/fhir/Claim/MedicalServicesAuthorizationExample", "resource": { "resourceType": "Claim", "id": "MedicalServicesAuthorizationExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim-inquiry"] }, "status": "active", "type": { "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "professional" }] }, "use": "preauthorization", "patient": { "reference": "Patient/SubscriberExample" }, "created": "2005-05-02T11:01:00+05:00", "insurer": { "reference": "Organization/InsurerExample" }, "provider": { "reference": "Organization/UMOExample" } } }, { "fullUrl": "http://example.org/fhir/Patient/SubscriberExample", "resource": { "resourceType": "Patient", "id": "SubscriberExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary"] }, "name": [{ "family": "SMITH", "given": ["JOE"] }], "gender": "male" } }, { "fullUrl": "http://example.org/fhir/Organization/UMOExample", "resource": { "resourceType": "Organization", "id": "UMOExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor"] }, "name": "Provider Organization" } }, { "fullUrl": "http://example.org/fhir/Organization/InsurerExample", "resource": { "resourceType": "Organization", "id": "InsurerExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer"] }, "name": "Insurance Company" } } ] }
Formato della risposta
Risposta riuscita (200 OK)
Riceverai un pacchetto PAS Inquiry Response contenente:
-
ClaimResponsecon lo stato di autorizzazione corrente; multiplo ClaimResponsese corrisponde ai criteri di ricerca
-
Tutte le risorse originali contenute nella tua richiesta (riportate all'indietro)
-
Timestamp di quando è stata assemblata la risposta
Possibili esiti ClaimResponse
| Outcome | Description |
|---|---|
queued |
La richiesta di autorizzazione è ancora in attesa di revisione |
complete |
La decisione di autorizzazione è stata presa (verifica se disposition approvata/negata) |
error |
Si è verificato un errore durante l'elaborazione |
partial |
Autorizzazione parziale concessa |
{ "resourceType": "Bundle", "identifier": { "system": "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER", "value": "5269367" }, "type": "collection", "timestamp": "2005-05-02T14:30:15+05:00", "entry": [ { "fullUrl": "http://example.org/fhir/ClaimResponse/InquiryResponseExample", "resource": { "resourceType": "ClaimResponse", "id": "InquiryResponseExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claimresponse-inquiry"] }, "status": "active", "type": { "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "professional" }] }, "use": "preauthorization", "patient": { "reference": "Patient/SubscriberExample" }, "created": "2005-05-02T11:05:00+05:00", "insurer": { "reference": "Organization/InsurerExample" }, "request": { "reference": "Claim/MedicalServicesAuthorizationExample" }, "outcome": "complete", "disposition": "Approved", "preAuthRef": "AUTH12345" } }, { "fullUrl": "http://example.org/fhir/Claim/MedicalServicesAuthorizationExample", "resource": { "resourceType": "Claim", "id": "MedicalServicesAuthorizationExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim-inquiry"] }, "status": "active", "type": { "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/claim-type", "code": "professional" }] }, "use": "preauthorization", "patient": { "reference": "Patient/SubscriberExample" }, "created": "2005-05-02T11:01:00+05:00", "insurer": { "reference": "Organization/InsurerExample" }, "provider": { "reference": "Organization/UMOExample" } } }, { "fullUrl": "http://example.org/fhir/Patient/SubscriberExample", "resource": { "resourceType": "Patient", "id": "SubscriberExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary"] }, "name": [{ "family": "SMITH", "given": ["JOE"] }], "gender": "male" } }, { "fullUrl": "http://example.org/fhir/Organization/UMOExample", "resource": { "resourceType": "Organization", "id": "UMOExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor"] }, "name": "Provider Organization" } }, { "fullUrl": "http://example.org/fhir/Organization/InsurerExample", "resource": { "resourceType": "Organization", "id": "InsurerExample", "meta": { "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer"] }, "name": "Insurance Company" } } ] }
Risposte agli errori
400 Richiesta non valida
Restituito quando il formato della richiesta non è valido o la convalida fallisce.
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "required", "diagnostics": "Reference 'Patient/SubscriberExample' at path 'patient' for 'CLAIM' resource not found(at Bundle.entry[0].resource)" } ] }
401 - Autorizzazione negata
Restituito quando le credenziali di autenticazione sono mancanti o non valide.
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "forbidden", "diagnostics": "Invalid authorization header" } ] }
403 Non consentito
Restituito quando l'utente autenticato non è autorizzato ad accedere alla risorsa richiesta.
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "exception", "diagnostics": "Insufficient SMART scope permissions." } ] }
400 Quando non ne viene trovato nessuno
Restituito quando non ClaimResponse viene trovata alcuna corrispondenza per la richiesta.
{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "not-found", "diagnostics": "Resource not found. No ClaimResponse found from the input Claim that matches the specified Claim properties patient, insurer, provider, and created(at Bundle.entry[0].resource)" }] }
4.1.5 Tipo di supporto non supportato
Restituito quando l'intestazione Content-Type non è application/fhir+json.
{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "value", "diagnostics": "Incorrect MIME-type. Update request Content-Type header." }] }
429 Troppe richieste
Restituito quando vengono superati i limiti di velocità.
{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "throttled", "diagnostics": "Rate limit exceeded. Please retry after some time." }] }
Regole di convalida
HealthLake esegue una convalida completa della richiesta:
Convalida del pacchetto
-
Deve essere conforme al profilo PAS Inquiry Request Bundle
-
Bundle.typedeve essere"collection" -
Deve contenere esattamente una risorsa Claim
-
Tutte le risorse referenziate devono essere incluse nel pacchetto
Convalida del reclamo
-
Deve essere conforme al profilo PAS Claim Inquiry
-
Claim.usedeve essere"preauthorization" -
Claim.statusdeve essere"active" -
Campi obbligatori:
patient,insurer,provider,created
Convalida delle risorse
-
Tutte le risorse devono essere conformi ai rispettivi profili di richiesta PAS
-
Devono essere presenti le risorse di supporto necessarie (paziente, organizzazione assicurativa, organizzazione fornitrice)
-
I riferimenti incrociati devono essere validi e risolvibili all'interno del pacchetto
Specifiche prestazionali
| Metrica | Specifiche |
|---|---|
| Limite di conteggio delle risorse | 500 risorse per pacchetto |
| Limite di dimensione del pacchetto | Massimo 5 MB |
Autorizzazioni richieste
Per utilizzare l'$inquireoperazione, assicurati che il tuo ruolo IAM abbia:
-
healthlake:InquirePreAuthClaim- Per richiamare l'operazione
SMART su FHIR Scopes
Ambiti minimi richiesti:
-
SMART v1:
user/ClaimResponse.read -
SMART versione 2:
user/ClaimResponse.s
Note importanti sull'implementazione
Comportamento di ricerca
Quando invii una richiesta, HealthLake cerca ClaimResponse utilizzando:
-
Riferimento del paziente riportato nel reclamo inserito
-
Riferimento dell'assicuratore riportato nella Richiesta inserita
-
Riferimento al fornitore riportato nel reclamo inserito
-
Data di creazione in base alla richiesta di immissione (come filtro temporale)
Corrispondenze multiple: se più ClaimResponses corrispondono ai criteri di ricerca, HealthLake restituisce tutti i risultati corrispondenti. È necessario utilizzare il ClaimResponse.created timestamp più recente per identificare lo stato più recente.
Reclami aggiornati
Se hai inviato più aggiornamenti alla stessa autorizzazione preventiva (ad esempio, Claim v1.1, v1.2, v1.3), l'$inquireoperazione recupererà quelli ClaimResponse associati alla versione più recente in base ai criteri di ricerca forniti.
Operazione di sola lettura
L'$inquireoperazione:
-
Recupera lo stato di autorizzazione esistente
-
Restituisce il più recente ClaimResponse
-
Non modifica o aggiorna alcuna risorsa
-
Non crea nuove risorse
-
Non attiva una nuova elaborazione delle autorizzazioni
Esempio di workflow
Tipico flusso di lavoro di richiesta di autorizzazione preventiva
1. Provider submits PA request POST /Claim/$submit → Returns ClaimResponse with outcome="queued" 2. Payer reviews request (asynchronous) → Updates ClaimResponse status internally 3. Provider checks status POST /Claim/$inquire → Returns ClaimResponse with outcome="queued" (still pending) 4. Provider checks status again later POST /Claim/$inquire → Returns ClaimResponse with outcome="complete", disposition="Approved"
Operazioni correlate
-
Claim/$submit- Invia una nuova richiesta di autorizzazione preventiva o aggiornane una esistente -
Patient/$everything- Recupera i dati completi del paziente per il contesto di autorizzazione preventiva