$submitOpération FHIR pour HealthLake - AWS HealthLake

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

$submitOpération FHIR pour HealthLake

L'$submitopération vous permet de soumettre électroniquement des demandes d'autorisation préalable aux payeurs pour approbation. Cette opération met en œuvre le guide de mise en œuvre du Da Vinci Prior Authorization Support (PAS), fournissant un flux de travail standardisé basé sur le FHIR pour les soumissions d'autorisations préalables.

Comment ça marche

  • Soumettre : vous envoyez un bundle FHIR contenant votre demande d'autorisation préalable et les données cliniques à l'appui

  • Valider : HealthLake valide la soumission par rapport aux exigences du PAS

  • Persister : toutes les ressources sont stockées dans votre magasin HealthLake de données

  • Répondre : vous recevez une réponse immédiate avec le statut « en file d'attente »

  • Processus : La décision d'autorisation est traitée de manière asynchrone par le payeur

Point de terminaison d’API

POST /datastore/{datastoreId}/r4/Claim/$submit Content-Type: application/fhir+json

Structure de la demande

Exigences relatives au bundle

Votre demande doit être une ressource FHIR Bundle contenant :

  • Bundle.type : Doit être "collection"

  • Bundle.entry : doit contenir exactement une ressource Claim avec use = "preauthorization"

  • Ressources référencées : Toutes les ressources référencées par la réclamation doivent être incluses dans le bundle

Ressources requises

Ressource Cardinalité Profil Description
Réclamation 1 Réclamation PAS La demande d'autorisation préalable
Patient 1 Patient PAS Informations démographiques sur les patients
Organisation (assureur) 1 Assureur PAS Compagnie d'assurance
Organisation (fournisseur) 1 Demandeur PAS Prestataire de santé soumettant la demande
Couverture 1 ou plus Couverture PAS Détails de la couverture d'assurance

Ressources facultatives

Ressource Cardinalité Profil Description
Praticien 0 ou plus Praticien PAS Praticiens de santé
PractitionerRole 0 ou plus PAS PractitionerRole Rôles des praticiens
ServiceRequest 0 ou plus PAS ServiceRequest Services médicaux demandés
DeviceRequest 0 ou plus PAS DeviceRequest Dispositifs médicaux demandés
MedicationRequest 0 ou plus PAS MedicationRequest Médicaments demandés
DocumentReference 0 ou plus PAS DocumentReference Documentation clinique à l'appui

Exemple de demande

POST /datastore/example-datastore/r4/Claim/$submit Content-Type: application/fhir+json Authorization: Bearer <your-token> { "resourceType" : "Bundle", "id" : "MedicalServicesAuthorizationBundleExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-request-bundle"] }, "identifier" : { "system" : "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER", "value" : "5269367" }, "type" : "collection", "timestamp" : "2005-05-02T11:01: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"] }, "identifier" : [{ "system" : "http://example.org/PATIENT_EVENT_TRACE_NUMBER", "value" : "111099" }], "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" }, "priority" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/processpriority", "code" : "normal" }] }, "insurance" : [{ "sequence" : 1, "focal" : true, "coverage" : { "reference" : "Coverage/InsuranceExample" } }], "item" : [{ "extension" : [{ "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-serviceItemRequestType", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1525", "code" : "IN", "display" : "Initial Medical Services Reservation" }] } }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-certificationType", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1322", "code" : "I", "display" : "Initial" }] } }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-authorizationNumber", "valueString" : "1122344" }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-administrationReferenceNumber", "valueString" : "33441122" }], "sequence" : 1, "category" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1365", "code" : "1", "display" : "Medical Care" }] }, "productOrService" : { "coding" : [{ "system" : "http://www.cms.gov/Medicare/Coding/HCPCS​ReleaseCodeSets", "code" : "99212", "display" : "Established Office Visit" }] }, "servicedDate" : "2005-05-10", "locationCodeableConcept" : { "coding" : [{ "system" : "https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set", "code" : "11" }] } }] } }, { "fullUrl" : "http://example.org/fhir/Organization/UMOExample", "resource" : { "resourceType" : "Organization", "id" : "UMOExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor"] }, "identifier" : [{ "system" : "http://hl7.org/fhir/sid/us-npi", "value" : "8189991234" }], "active" : true, "type" : [{ "coding" : [{ "system" : "https://codesystem.x12.org/005010/98", "code" : "X3" }] }], "name" : "DR. JOE SMITH CORPORATION", "address" : [{ "line" : ["111 1ST STREET"], "city" : "SAN DIEGO", "state" : "CA", "postalCode" : "92101", "country" : "US" }] } }, { "fullUrl" : "http://example.org/fhir/Organization/InsurerExample", "resource" : { "resourceType" : "Organization", "id" : "InsurerExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer"] }, "identifier" : [{ "system" : "http://hl7.org/fhir/sid/us-npi", "value" : "1234567893" }], "active" : true, "type" : [{ "coding" : [{ "system" : "https://codesystem.x12.org/005010/98", "code" : "PR" }] }], "name" : "MARYLAND CAPITAL INSURANCE COMPANY" } }, { "fullUrl" : "http://example.org/fhir/Coverage/InsuranceExample", "resource" : { "resourceType" : "Coverage", "id" : "InsuranceExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage"] }, "status" : "active", "subscriberId" : "1122334455", "beneficiary" : { "reference" : "Patient/SubscriberExample" }, "relationship" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/subscriber-relationship", "code" : "self" }, { "system" : "https://codesystem.x12.org/005010/1069", "code" : "18" }] }, "payor" : [{ "reference" : "Organization/InsurerExample" }] } }, { "fullUrl" : "http://example.org/fhir/Patient/SubscriberExample", "resource" : { "resourceType" : "Patient", "id" : "SubscriberExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-subscriber"] }, "extension" : [{ "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-militaryStatus", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/584", "code" : "RU" }] } }], "identifier" : [{ "type" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/v2-0203", "code" : "MB" }] }, "system" : "http://example.org/MIN", "value" : "12345678901" }], "name" : [{ "family" : "SMITH", "given" : ["JOE"] }], "gender" : "male" } }] }

Format de la réponse

Réponse positive (200 OK)

Vous recevrez un pack de réponses PAS contenant :

  • ClaimResponseavec outcome: "queued" et status: "active"

  • Toutes les ressources originales de votre demande

  • Horodatage confirmant la réception

{ "resourceType" : "Bundle", "identifier": { "system": "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER", "value": "5269367" }, "type" : "collection", "timestamp" : "2005-05-02T11:02:00+05:00", "entry" : [{ "fullUrl" : "http://example.org/fhir/ClaimResponse/PractitionerRequestorPendingResponseExample", "resource" : { "resourceType" : "ClaimResponse", "id" : "PractitionerRequestorPendingResponseExample", "meta" : { "profile" : ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claimresponse"] }, "identifier" : [{ "system" : "http://example.org/PATIENT_EVENT_TRACE_NUMBER", "value" : "111099" }], "status" : "active", "type" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/claim-type", "code" : "professional" }] }, "use" : "preauthorization", "patient" : { "reference" : "Patient/SubscriberExample" }, "created" : "2005-05-02T11:02:00+05:00", "insurer" : { "reference" : "Organization/InsurerExample" }, "requestor" : { "reference" : "PractitionerRole/ReferralPractitionerRoleExample" }, "request" : { "reference" : "Claim/MedicalServicesAuthorizationExample" }, "outcome" : "queued" } }, { "fullUrl" : "http://example.org/fhir/Claim/MedicalServicesAuthorizationExample", "resource" : { "resourceType" : "Claim", "id" : "MedicalServicesAuthorizationExample", "meta" : { "profile": [ "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim|2.1.0" ] }, "identifier" : [{ "system" : "http://example.org/PATIENT_EVENT_TRACE_NUMBER", "value" : "111099" } }], "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" }, "priority" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/processpriority", "code" : "normal" }] }, "insurance" : [{ "sequence" : 1, "focal" : true, "coverage" : { "reference" : "Coverage/InsuranceExample" } }], "item" : [{ "extension" : [{ "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-serviceItemRequestType", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1525", "code" : "IN", "display" : "Initial Medical Services Reservation" }] } }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-certificationType", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1322", "code" : "I", "display" : "Initial" }] } }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-authorizationNumber", "valueString" : "1122344" }, { "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-administrationReferenceNumber", "valueString" : "33441122" }], "sequence" : 1, "category" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/1365", "code" : "1", "display" : "Medical Care" }] }, "productOrService" : { "coding" : [{ "system" : "http://www.cms.gov/Medicare/Coding/HCPCS​ReleaseCodeSets", "code" : "99212", "display" : "Established Office Visit" }] }, "servicedDate" : "2005-05-10", "locationCodeableConcept" : { "coding" : [{ "system" : "https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set", "code" : "11" }] } }] } }, { "fullUrl" : "http://example.org/fhir/Organization/UMOExample", "resource" : { "resourceType" : "Organization", "id" : "UMOExample", "meta" : { "profile": [ "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor|2.1.0" ] }, "identifier" : [{ "system" : "http://hl7.org/fhir/sid/us-npi", "value" : "8189991234" }], "active" : true, "type" : [{ "coding" : [{ "system" : "https://codesystem.x12.org/005010/98", "code" : "X3" }] }], "name" : "DR. JOE SMITH CORPORATION", "address" : [{ "line" : ["111 1ST STREET"], "city" : "SAN DIEGO", "state" : "CA", "postalCode" : "92101", "country" : "US" }] } }, { "fullUrl" : "http://example.org/fhir/Organization/InsurerExample", "resource" : { "resourceType" : "Organization", "id" : "InsurerExample", "meta" : { "profile": [ "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer|2.1.0" ] }, "identifier" : [{ "system" : "http://hl7.org/fhir/sid/us-npi", "value" : "1234567893" }], "active" : true, "type" : [{ "coding" : [{ "system" : "https://codesystem.x12.org/005010/98", "code" : "PR" }] }], "name" : "MARYLAND CAPITAL INSURANCE COMPANY" } }, { "fullUrl" : "http://example.org/fhir/Coverage/InsuranceExample", "resource" : { "resourceType" : "Coverage", "id" : "InsuranceExample", "meta": { "profile": [ "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage|2.1.0" ] }, "status" : "active", "subscriberId" : "1122334455", "beneficiary" : { "reference" : "Patient/SubscriberExample" }, "relationship" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/subscriber-relationship", "code" : "self" }, { "system" : "https://codesystem.x12.org/005010/1069", "code" : "18" }] }, "payor" : [{ "reference" : "Organization/InsurerExample" }] } }, { "fullUrl" : "http://example.org/fhir/Patient/SubscriberExample", "resource" : { "resourceType" : "Patient", "id" : "SubscriberExample", "meta": { "profile": [ "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-subscriber", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary", "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary|2.1.0" ] }, "extension" : [{ "url" : "http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-militaryStatus", "valueCodeableConcept" : { "coding" : [{ "system" : "https://codesystem.x12.org/005010/584", "code" : "RU" }] } }], "identifier" : [{ "type" : { "coding" : [{ "system" : "http://terminology.hl7.org/CodeSystem/v2-0203", "code" : "MB" }] }, "system" : "http://example.org/MIN", "value" : "12345678901" }], "name" : [{ "family" : "SMITH", "given" : ["JOE"] }], "gender" : "male" } }] }

Réponses d'erreur

400 Requête erronée

Renvoyé lorsque le format de demande n'est pas valide ou est mal formé.

{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "invalid", "diagnostics": "The provided payload was invalid and could not be parsed correctly." }] }

412 – Échec de condition préalable

Renvoyé lorsque la même demande d'autorisation préalable a déjà été soumise (envoi dupliqué détecté).

{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "processing", "diagnostics": "PreAuth Claim already exists" }] }
Idempotence

L'$submitopération est idempotente. Le fait de soumettre la même demande plusieurs fois ne créera pas de demandes d'autorisation préalable dupliquées. Au lieu de cela, vous recevrez un message d'erreur 412 vous demandant de $inquire vérifier le statut de votre envoi initial.

422 Entité non traitable

Renvoyé en cas d'échec de la validation FHIR.

{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "required", "diagnostics": "Bundle contains more than one preauthorization claim" }] }

Règles de validation

HealthLake effectue une validation complète de votre soumission :

Validation du bundle

  • Doit être conforme au profil du bundle de demandes PAS

  • Bundle.typedoit être "collection"

  • Peut contenir plusieurs ressources de réclamation

  • Cependant, il doit contenir exactement une ressource Claim avec une utilisation préautorisée

    • Et cette ressource Claim doit être la première entrée du bundle

  • Toutes les ressources référencées doivent être incluses dans le bundle

Validation des réclamations

  • Doit être conforme au profil de réclamation PAS

  • Claim.usedoit être "preauthorization"

  • Champs obligatoires : patientinsurer,provider,created, priority

  • Les identifiants commerciaux doivent être présents et valides

Validation des ressources

  • Toutes les ressources doivent être conformes à leurs profils PAS respectifs

  • Les ressources de soutien requises doivent être présentes (patient, couverture, organisation)

  • Les références croisées doivent être valides et résolvables dans le bundle

Spécifications de performance

Métrique Spécification de 
Limite de taille du bundle 5 Mo maximum
Limite du nombre de ressources 500 ressources par bundle

Autorisations requises

Pour utiliser l'$submitopération, on peut utiliser AWS Sigv4 ou SMART sur FHIR :

  • Assurez-vous que votre rôle IAM comporte : healthlake:SubmitPreAuthClaim - Pour appeler l'opération

SMART sur les oscilloscopes FHIR

Étendue minimale requise :

  • SMART version 1 : user/Claim.write & <all_resourceTypes_in_Bundle>.write

  • SMART v2 : user/Claim.c & <all_resourceTypes_in_Bundle>.c or system/*.*

Remarques de mise en œuvre importantes

Persistance des ressources

  • Toutes les entrées du bundle sont conservées en tant que ressources FHIR individuelles dans votre magasin de données

  • Les produits fournis par le client IDs sont conservés lorsqu'ils sont fournis

  • L'historique des versions est conservé à des fins d'audit

  • La détection des doublons prévient les conflits de ressources

Comportement de traitement

  • Chaque soumission valide donne lieu à exactement une ClaimResponse avec "queued" résultat

  • Les soumissions non valides renvoient 400 ou 422 codes d'état avec des informations d'erreur détaillées

  • Les erreurs du système renvoient les codes d'état 5xx appropriés

  • Toutes les soumissions réussies renvoient le statut 200 avec un statut en attente ClaimResponse

Exigences relatives au bundle

  • Bundle.entry.fullUrlles valeurs doivent être soit au format REST, URLs soit "urn:uuid:[guid]" au format

  • Toutes les soumissions GUIDs doivent être uniques (sauf pour les mêmes instances de ressources)

  • Les ressources référencées doivent exister dans le bundle ou être résolvables

  • Claim/$inquire- Vérifier le statut d'une demande d'autorisation préalable soumise

  • Patient/$everything- Récupérez les données complètes du patient pour le contexte de l'autorisation préalable