

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# FHIR R4 für `$operations` HealthLake
<a name="reference-fhir-operations"></a>

 FHIR \$1-Operationen (auch „Dollar-Operationen“ genannt) sind spezielle serverseitige Funktionen, die über die standardmäßigen CRUD-Operationen (`Create`,, `Read``Update`,`Delete`) in der FHIR-Spezifikation hinausgehen. Diese Operationen werden durch das Präfix „\$1“ identifiziert und ermöglichen komplexe Verarbeitungs-, Datentransformations- und Massenoperationen, deren Ausführung mit standardmäßigen REST-API-Aufrufen schwierig oder ineffizient wäre. \$1 Operationen können auf Systemebene, Ressourcentypebene oder auf bestimmten Ressourceninstanzen aufgerufen werden und bieten so flexible Möglichkeiten zur Interaktion mit FHIR-Daten. AWS HealthLake unterstützt mehrere FHIR. `$operations` Weitere Informationen finden Sie auf den einzelnen Seiten unten.

**Topics**
+ [FHIR R4-Betrieb `$attribution-status` für HealthLake](reference-fhir-operations-attribution-status.md)
+ [Ressourcentypen löschen mit `$bulk-delete`](reference-fhir-operations-bulk-delete.md)
+ [`$bulk-member-match`Operation für HealthLake](reference-fhir-operations-bulk-member-match.md)
+ [FHIR R4-Betrieb `$confirm-attribution-list` für HealthLake](reference-fhir-operations-confirm-attribution-list.md)
+ [FHIR R4-Betrieb `$davinci-data-export` für HealthLake](reference-fhir-operations-davinci-data-export.md)
+ [Generierung klinischer Dokumente mit `$document`](reference-fhir-operations-document.md)
+ [Dauerhaftes Entfernen von Ressourcen mit `$erase`](reference-fhir-operations-erase.md)
+ [Patientendaten abrufen mit `Patient/$everything`](reference-fhir-operations-everything.md)
+ [ValueSet Codes abrufen mit `$expand`](reference-fhir-operations-expand.md)
+ [HealthLake Daten mit FHIR exportieren `$export`](reference-fhir-operations-export.md)
+ [`$inquire`FHIR-Operation für HealthLake](reference-fhir-operations-inquire.md)
+ [Konzeptdetails abrufen mit `$lookup`](reference-fhir-operations-lookup.md)
+ [`$member-add`Operation für HealthLake](reference-fhir-operations-member-add.md)
+ [`$member-match`Operation für HealthLake](reference-fhir-operations-member-match.md)
+ [`$member-remove`Operation für HealthLake](reference-fhir-operations-member-remove.md)
+ [Ressourcen für die Patientenabteilung entfernen mit `$purge`](reference-fhir-operations-purge.md)
+ [`$questionnaire-package`FHIR-Operation für HealthLake](reference-fhir-operations-questionnaire-package.md)
+ [`$submit`FHIR-Operation für HealthLake](reference-fhir-operations-submit.md)
+ [Validierung von FHIR-Ressourcen mit `$validate`](reference-fhir-operations-validate.md)

# FHIR R4-Betrieb `$attribution-status` für HealthLake
<a name="reference-fhir-operations-attribution-status"></a>

Ruft den Zuordnungsstatus für ein bestimmtes Mitglied ab und gibt ein Paket zurück, das alle Zuordnungsressourcen enthält, die sich auf den Patienten beziehen. Dieser Vorgang ist Teil der Implementierung der [FHIR Member Attribution (ATR)](https://build.fhir.org/ig/HL7/davinci-atr/spec.html) List IG 2.1.0.

## Endpoint
<a name="attribution-status-endpoint"></a>

```
POST [base]/Group/[id]/$attribution-status
```

## Anforderungsparameter
<a name="attribution-status-parameters"></a>

Die Operation akzeptiert die folgenden optionalen Parameter:


| Parameter | Typ | Description | 
| --- | --- | --- | 
| memberId | Kennung | Das MemberId Mitglied, für das der Zuordnungsstatus angefordert wird | 
| Referenz des Patienten | Referenz | Verweis auf die Patientenressource im System des Herstellers | 

**Anmerkung**  
Zu Validierungszwecken `patientReference` kann entweder `memberId` oder beide bereitgestellt werden.

## Beispielanforderung
<a name="attribution-status-request-example"></a>

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "memberId",
      "valueIdentifier": {
        "system": "http://example.org",
        "value": "MBR123456789"
      }
    },
    {
      "name": "patientReference",
      "valueReference": {
        "reference": "Patient/patient-123",
        "display": "John Doe"
      }
    }
  ]
}
```

## Antwort
<a name="attribution-status-response"></a>

Gibt ein Paket mit Attributionsressourcen zurück, die sich auf den Patienten beziehen:


| Ressource | Kardinalität | Speicherort | 
| --- | --- | --- | 
| Patientin | 1..1 | Gruppe.Mitglied.Entität | 
| Abdeckung | 0.. 1 | group.member.extension: Deckungsreferenz | 
| Organization/Practitioner/PractitionerRole | 0.. 1 | group.member.extension: AttributedProvider | 
| Beliebige Ressource | 0.. 1 | group.member.extension: Assoziierte Daten | 

### Beispielantwort
<a name="attribution-status-response-example"></a>

```
{
  "resourceType": "Bundle",
  "id": "bundle-response",
  "meta": {
    "lastUpdated": "2014-08-18T01:43:33Z"
  },
  "type": "collection",
  "entry": [
    {
      "fullUrl": "http://example.org/fhir/Patient/12423",
      "resource": {
        "resourceType": "Patient",
        "id": "12423",
        "meta": {
          "versionId": "1",
          "lastUpdated": "2014-08-18T01:43:31Z"
        },
        "active": true,
        "name": [
          {
            "use": "official",
            "family": "Chalmers",
            "given": ["Peter", "James"]
          }
        ],
        "gender": "male",
        "birthDate": "1974-12-25"
      }
    },
    {
      "fullUrl": "http://example.org/fhir/Coverage/123456",
      "resource": {
        "resourceType": "Coverage",
        "id": "1"
        // ... additional Coverage resource details
      }
    },
    {
      "fullUrl": "http://example.org/fhir/Organization/666666",
      "resource": {
        "resourceType": "Organization",
        "id": "2"
        // ... additional Organization resource details
      }
    }
  ]
}
```

## Fehlerbehandlung
<a name="attribution-status-error-handling"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:


| Fehler | HTTP-Status | Description | 
| --- | --- | --- | 
| Ungültige Operationsanforderung | 400 | Fehlerhafte Anforderungsparameter oder Struktur | 
| Die Gruppenressource wurde nicht gefunden | 404 | Die angegebene Gruppen-ID ist nicht vorhanden | 
| Die Patientenressource wurde nicht gefunden | 404 | Die angegebene Patientenreferenz ist nicht vorhanden | 

## Autorisierung und Sicherheit
<a name="attribution-status-authorization"></a>

Anforderungen an SMART Scope  
Kunden müssen über die entsprechenden Rechte verfügen, um Gruppenressourcen und zugehörige Zuordnungsressourcen lesen zu können  
Die standardmäßigen FHIR-Autorisierungsmechanismen gelten für alle Operationen

# Ressourcentypen löschen mit `$bulk-delete`
<a name="reference-fhir-operations-bulk-delete"></a>

AWS HealthLake unterstützt den `$bulk-delete` Vorgang und ermöglicht das Löschen aller Ressourcen eines bestimmten Typs in einem Datenspeicher. Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Führen Sie saisonale Audits und Aufräumarbeiten durch
+ Verwalten Sie den Datenlebenszyklus in großem Umfang
+ Entfernen Sie bestimmte Ressourcentypen
+ Halten Sie die Richtlinien zur Datenspeicherung ein

## Usage
<a name="bulk-delete-usage"></a>

Der `$bulk-delete` Vorgang kann mit POST-Methoden aufgerufen werden:

```
POST [base]/[ResourceType]/$bulk-delete?isHardDelete=false&deleteAuditEvent=true
```

## Parameters
<a name="bulk-delete-parameters"></a>


| Parameter | Typ | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | --- | 
| isHardDelete | Boolean | Nein | false | Wenn der Wert wahr ist, werden Ressourcen dauerhaft aus dem Speicher entfernt | 
| deleteAuditEvent | boolesch | Nein | true | Wenn der Wert wahr ist, werden die zugehörigen Prüfereignisse gelöscht | 
| \$1since | Zeichenfolge | Nein | Erstellungszeit des Datenspeichers | Wenn diese Option eingegeben wird, wird der Startgrenzwert für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt. Kann nicht mit Start oder Ende verwendet werden | 
| start | Zeichenfolge | Nein | Erstellungszeit des Datenspeichers | Wenn diese Option eingegeben wird, wird der Annahmeschluss für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt. Kann mit Ende verwendet werden | 
| end | Zeichenfolge | Nein | Zeit für die Einreichung des Job | Wenn diese Option eingegeben wird, wird der letzte Annahmeschluss für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt | 

## Beispiele
<a name="bulk-delete-examples"></a>

**Beispielanforderung**  


```
POST [base]/Observation/$bulk-delete?isHardDelete=false
```

**Beispielantwort**  


```
{
      "jobId": "jobId",
      "jobStatus": "SUBMITTED"
    }
```

## Aufgabenstatus
<a name="bulk-delete-job-status"></a>

Um den Status eines Massenlöschauftrags zu überprüfen:

```
GET [base]/$bulk-delete/[jobId]
```

Der Vorgang gibt Informationen zum Auftragsstatus zurück:

```
{
      "datastoreId": "datastoreId",
      "jobId": "jobId",
      "status": "COMPLETED",
      "submittedTime": "2025-10-09T15:09:51.336Z"
    }
```

## Behavior
<a name="bulk-delete-behavior"></a>

Die `$bulk-delete` Operation:

1. Wird asynchron verarbeitet, um große Ressourcenmengen zu handhaben

1. Sorgt für die Datenintegrität bei ACID-Transaktionen

1. Ermöglicht die Nachverfolgung des Auftragsstatus anhand der Anzahl gelöschter Ressourcen

1. Unterstützt sowohl den weichen als auch den harten Löschmodus

1. Beinhaltet eine umfassende Auditprotokollierung der Löschaktivitäten

1. Ermöglicht das selektive Löschen von historischen Versionen und Prüfereignissen

## Protokollierung von Prüfungen
<a name="bulk-delete-audit-logging"></a>

Der `$bulk-delete` Vorgang wird als Start FHIRBulk DeleteJob und Beschreibung protokolliert und FHIRBulk DeleteJob enthält detaillierte Informationen zum Vorgang.

## Einschränkungen
<a name="bulk-delete-limitations"></a>
+ Wenn diese Option auf „true“ gesetzt `isHardDelete` ist, werden hartgelöschte Ressourcen nicht in Suchergebnissen oder `_history` Abfragen angezeigt.
+ Auf Ressourcen, die durch diesen Vorgang gelöscht werden, kann während der Verarbeitung möglicherweise vorübergehend nicht zugegriffen werden
+ Die Speicherbelegung wird nur für historische Versionen angepasst — deleteVersionHistory =false passt den Datenspeicherspeicher nicht an

# `$bulk-member-match`Operation für HealthLake
<a name="reference-fhir-operations-bulk-member-match"></a>

AWS HealthLake unterstützt den `$bulk-member-match` Vorgang zur asynchronen Verarbeitung von Matchanfragen für mehrere Mitglieder. Dieser Vorgang ermöglicht es Organisationen im Gesundheitswesen, die eindeutigen Identifikatoren von Hunderten von Mitgliedern in verschiedenen Gesundheitssystemen effizient abzugleichen, indem demografische Informationen und Informationen zur Deckung in einer einzigen Sammelanfrage verwendet werden. [Diese Fähigkeit ist für den groß angelegten payer-to-payer Datenaustausch, die Umstellung von Mitgliedern und die Einhaltung der CMS-Vorschriften unerlässlich und entspricht der FHIR-Spezifikation.](https://build.fhir.org/ig/HL7/davinci-epdx/OperationDefinition-BulkMemberMatch.html)

**Anmerkung**  
Die `$bulk-member-match` Operation basiert auf einer zugrunde liegenden FHIR-Spezifikation, die sich derzeit in der Erprobung befindet und sich ändern kann. Im Zuge der Weiterentwicklung der Spezifikation werden das Verhalten und die Schnittstelle dieser API entsprechend aktualisiert. Entwicklern wird empfohlen, die HealthLake AWS-Versionshinweise und die entsprechenden Aktualisierungen der FHIR-Spezifikation zu verfolgen, um über alle Änderungen, die sich auf ihre Integrationen auswirken könnten, auf dem Laufenden zu bleiben.

Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Führen Sie während der offenen Anmeldezeiträume einen maßstabsgetreuen Abgleich der Mitglieder durch
+ Erleichtern Sie den Massenwechsel zwischen den Kostenträgern
+ Support umfangreicher CMS-Compliance-Datenaustauschanforderungen
+ Passen Sie Mitgliedskohorten aus allen Gesundheitsnetzwerken effizient an
+ Reduzieren Sie API-Aufrufe und verbessern Sie die betriebliche Effizienz bei Matching-Szenarien mit hohem Volumen

## Usage
<a name="bulk-member-match-usage"></a>

Der `$bulk-member-match` Vorgang ist ein asynchroner Vorgang, der mit der POST-Methode für Gruppenressourcen aufgerufen wird:

```
POST [base]/Group/$bulk-member-match
```

Nachdem Sie eine Sammelabgleichsanfrage eingereicht haben, können Sie den Auftragsstatus wie folgt abfragen:

```
GET [base]/$bulk-member-match-status/{jobId}
```

## Unterstützte Parameter
<a name="bulk-member-match-parameters"></a>

HealthLake unterstützt die folgenden `$bulk-member-match` FHIR-Parameter:


| Parameter | Typ | Erforderlich | Description | 
| --- | --- | --- | --- | 
| `MemberPatient` | Patient | Ja | Patientenressource mit demografischen Informationen für das abzugleichende Mitglied. | 
| `CoverageToMatch` | Abdeckung | Ja | Informationsquelle, die für den Abgleich mit vorhandenen Datensätzen verwendet wird. | 
| `CoverageToLink` | Abdeckung | Nein | Coverage-Ressource, die während des Abgleichs verknüpft werden soll. | 
| `Consent` | Zustimmung | Ja | Die Zustimmungsressource für Autorisierungszwecke wird ebenfalls gespeichert. Dies unterscheidet sich von einzelnen Vorgängen`$member-match`, bei denen *keine* Zustimmung erforderlich ist. | 

## POST-Anfrage zur Einreichung eines Match-Jobs für mehrere Mitglieder
<a name="bulk-member-match-request-example"></a>

Das folgende Beispiel zeigt eine POST-Anfrage zum Einreichen eines Match-Jobs für mehrere Mitglieder. Jedes Mitglied ist in einen `MemberBundle` Parameter eingeschlossen, der die erforderlichen `MemberPatient``CoverageToMatch`, und `Consent` Ressourcen sowie einen optionalen Wert enthält`CoverageToLink`.

```
POST [base]/Group/$bulk-member-match
Content-Type: application/fhir+json
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "MemberBundle",
      "part": [
        {
          "name": "MemberPatient",
          "resource": {
            "resourceType": "Patient",
            "identifier": [
              {
                "system": "http://example.org/patient-id",
                "value": "patient-0"
              }
            ],
            "name": [
              {
                "family": "Smith",
                "given": ["James"]
              }
            ],
            "gender": "male",
            "birthDate": "1950-01-01"
          }
        },
        {
          "name": "CoverageToMatch",
          "resource": {
            "resourceType": "Coverage",
            "status": "active",
            "identifier": [
              {
                "system": "http://example.org/coverage-id",
                "value": "cov-0"
              }
            ],
            "subscriberId": "sub-0",
            "beneficiary": {
              "reference": "Patient/patient123"
            },
            "relationship": {
              "coding": [
                {
                  "system": "http://terminology.hl7.org/CodeSystem/subscriber-relationship",
                  "code": "self"
                }
              ]
            },
            "payor": [
              {
                "reference": "Organization/org123"
              }
            ]
          }
        },
        {
          "name": "Consent",
          "resource": {
            "resourceType": "Consent",
            "status": "active",
            "scope": {
              "coding": [
                {
                  "system": "http://terminology.hl7.org/CodeSystem/consentscope",
                  "code": "patient-privacy"
                }
              ]
            },
            "category": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
                    "code": "IDSCL"
                  }
                ]
              }
            ],
            "patient": {
              "reference": "Patient/patient123"
            },
            "performer": [
              {
                "reference": "Patient/patient123"
              }
            ],
            "sourceReference": {
              "reference": "http://example.org/DocumentReference/consent-source"
            },
            "policy": [
              {
                "uri": "http://hl7.org/fhir/us/davinci-hrex/StructureDefinition-hrex-consent.html#regular"
              }
            ],
            "provision": {
              "type": "permit",
              "period": {
                "start": "2024-01-01",
                "end": "2025-12-31"
              },
              "actor": [
                {
                  "role": {
                    "coding": [
                      {
                        "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type",
                        "code": "performer"
                      }
                    ]
                  },
                  "reference": {
                    "identifier": {
                      "system": "http://hl7.org/fhir/sid/us-npi",
                      "value": "9876543210"
                    },
                    "display": "Old Health Plan"
                  }
                },
                {
                  "role": {
                    "coding": [
                      {
                        "system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType",
                        "code": "IRCP"
                      }
                    ]
                  },
                  "reference": {
                    "identifier": {
                      "system": "http://hl7.org/fhir/sid/us-npi",
                      "value": "0123456789"
                    },
                    "display": "New Health Plan"
                  }
                }
              ],
              "action": [
                {
                  "coding": [
                    {
                      "system": "http://terminology.hl7.org/CodeSystem/consentaction",
                      "code": "disclose"
                    }
                  ]
                }
              ]
            }
          }
        },
        {
          "name": "CoverageToLink",
          "resource": {
            "resourceType": "Coverage",
            "status": "active",
            "identifier": [
              {
                "system": "http://example.org/coverage-link-id",
                "value": "cov-link-0"
              }
            ],
            "subscriberId": "new-sub-0",
            "beneficiary": {
              "reference": "Patient/patient123"
            },
            "relationship": {
              "coding": [
                {
                  "system": "http://terminology.hl7.org/CodeSystem/subscriber-relationship",
                  "code": "self"
                }
              ]
            },
            "payor": [
              {
                "identifier": {
                  "system": "http://hl7.org/fhir/sid/us-npi",
                  "value": "0123456789"
                },
                "display": "New Health Plan"
              }
            ]
          }
        }
      ]
    }
  ]
}
```

## Antwort auf den Auftrag mit Ausgabe abgeschlossen
<a name="bulk-member-match-response-example"></a>

Wenn der Job abgeschlossen ist, enthält die Antwort Job-Metadaten und eine FHIR-Parameter-Ressource, die drei Gruppenressourcen enthält, die die Vergleichsergebnisse kategorisieren.

```
{
  "datastoreId": "datastoreId",
  "jobId": "jobId",
  "status": "COMPLETED",
  "submittedTime": "2026-03-20T18:45:26.321Z",
  "numberOfMembers": 3,
  "numberOfMembersProcessedSuccessfully": 3,
  "numberOfMembersWithCustomerError": 0,
  "numberOfMembersWithServerError": 0,
  "output": {
    "resourceType": "Parameters",
    "meta": {
      "profile": [
        "http://hl7.org/fhir/us/davinci-pdex/StructureDefinition/pdex-parameters-multi-member-match-bundle-out"
      ]
    },
    "parameter": [
      {
        "name": "MatchedMembers",
        "resource": {
          "resourceType": "Group",
          "id": "group1",
          "text": {
            "status": "generated",
            "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Matched members group</div>"
          },
          "contained": [
            {
              "resourceType": "Patient",
              "id": "1",
              "identifier": [
                {
                  "system": "http://example.org/patient-id",
                  "value": "patient-0"
                }
              ],
              "name": [
                {
                  "family": "Smith",
                  "given": ["James"]
                }
              ],
              "gender": "male",
              "birthDate": "1950-01-01"
            }
          ],
          "type": "person",
          "actual": true,
          "code": {
            "coding": [
              {
                "system": "http://hl7.org/fhir/us/davinci-pdex/CodeSystem/PdexMultiMemberMatchResultCS",
                "code": "match",
                "display": "Matched"
              }
            ]
          },
          "quantity": 1,
          "member": [
            {
              "entity": {
                "extension": [
                  {
                    "url": "http://hl7.org/fhir/us/davinci-pdex/StructureDefinition/base-ext-match-parameters",
                    "valueReference": {
                      "reference": "#1"
                    }
                  }
                ],
                "reference": "Patient/patient123"
              }
            }
          ]
        }
      },
      {
        "name": "NonMatchedMembers",
        "resource": {
          "resourceType": "Group",
          "id": "Group2",
          "text": {
            "status": "generated",
            "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Non-matched members group</div>"
          },
          "contained": [
            {
              "resourceType": "Patient",
              "id": "1",
              "identifier": [
                {
                  "system": "http://example.org/patient-id",
                  "value": "patient-501"
                }
              ],
              "name": [
                {
                  "family": "Carter",
                  "given": ["Emily"]
                }
              ],
              "gender": "female",
              "birthDate": "1985-06-15"
            }
          ],
          "type": "person",
          "actual": true,
          "code": {
            "coding": [
              {
                "system": "http://hl7.org/fhir/us/davinci-pdex/CodeSystem/PdexMultiMemberMatchResultCS",
                "code": "nomatch",
                "display": "Not Matched"
              }
            ]
          },
          "quantity": 1,
          "member": [
            {
              "entity": {
                "extension": [
                  {
                    "url": "http://hl7.org/fhir/us/davinci-pdex/StructureDefinition/base-ext-match-parameters",
                    "valueReference": {
                      "reference": "#1"
                    }
                  }
                ],
                "reference": "Patient/patient123"
              }
            }
          ]
        }
      },
      {
        "name": "ConsentConstrainedMembers",
        "resource": {
          "resourceType": "Group",
          "id": "group3",
          "text": {
            "status": "generated",
            "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Consent constrained members group</div>"
          },
          "contained": [
            {
              "resourceType": "Patient",
              "id": "1",
              "identifier": [
                {
                  "system": "http://example.org/patient-id",
                  "value": "patient-502"
                }
              ],
              "name": [
                {
                  "family": "Nguyen",
                  "given": ["David"]
                }
              ],
              "gender": "male",
              "birthDate": "1972-11-22"
            }
          ],
          "type": "person",
          "actual": true,
          "code": {
            "coding": [
              {
                "system": "http://hl7.org/fhir/us/davinci-pdex/CodeSystem/PdexMultiMemberMatchResultCS",
                "code": "consentconstraint",
                "display": "Consent Constraint"
              }
            ]
          },
          "quantity": 1,
          "member": [
            {
              "entity": {
                "extension": [
                  {
                    "url": "http://hl7.org/fhir/us/davinci-pdex/StructureDefinition/base-ext-match-parameters",
                    "valueReference": {
                      "reference": "#1"
                    }
                  }
                ],
                "reference": "Patient/123"
              }
            }
          ]
        }
      }
    ]
  }
}
```

## Ressourcen der Ausgabegruppe
<a name="bulk-member-match-output-groups"></a>

Der abgeschlossene Job gibt eine Parameter-Ressource zurück, die drei Gruppenressourcen enthält:

**MatchedMembers Group (Gruppieren)**  
Enthält Patientenreferenzen für alle Mitglieder, die erfolgreich zugeordnet wurden, und wird nicht als Einwilligungsbeschränkung eingestuft.

Das `Group.quantity` Feld enthält die Gesamtzahl der Mitglieder in jeder ihrer jeweiligen Gruppen.

**NonMatchedMembers Group (Gruppieren)**  
Enthält Verweise auf Mitglieder, bei denen keine Übereinstimmung gefunden wurde oder bei denen mehrere Treffer identifiziert wurden.

**ConsentConstrainedMembers Group (Gruppieren)**  
Enthält Patientenreferenzen für alle Mitglieder, die erfolgreich zugeordnet wurden, wenn Einwilligungsbeschränkungen die gemeinsame Nutzung von Daten verhindern. Eine Zustimmungsressource gilt als eingeschränkt, wenn die beiden folgenden Bedingungen erfüllt sind:  
+ **Die Richtlinien-URI endet** auf `#sensitive` — Dies ist das klarste und direkteste Signal. Der übermittelnde Zahler sagt ausdrücklich: „Die Daten dieses Mitglieds sind sensibel — gehen Sie vorsichtig damit um.“

  ```
  "policy": [{ "uri": "...hrex-consent.html#sensitive" }]
  ```
+ **Die Art der Bereitstellung auf oberster Ebene ist `deny`** — Das Mitglied hat die gemeinsame Nutzung von Daten weitgehend abgelehnt.

  ```
  "provision": { "type": "deny" }
  ```

## Integration mit \$1 davinci-data-export
<a name="bulk-member-match-davinci-integration"></a>

Die von zurückgegebene MatchedMembers Gruppenressource `$bulk-member-match` kann direkt mit dem `$davinci-data-export` Vorgang zum Abrufen von Massendaten von Mitgliedern verwendet werden:

```
POST [base]/Group/{matched-group-id}/$davinci-data-export
GET [base]/Group/{matched-group-id}
```

Diese Integration ermöglicht effiziente Workflows, bei denen Sie zuerst übereinstimmende Mitglieder in großen Mengen identifizieren und dann ihre vollständigen Gesundheitsdaten mithilfe der resultierenden Gruppenressource exportieren.

## Leistungsmerkmale
<a name="bulk-member-match-performance"></a>

Der `$bulk-member-match` Vorgang ist für die Verarbeitung großer Datenmengen konzipiert und läuft asynchron:
+ **Parallelität**: Maximal 5 gleichzeitige Operationen pro Datenspeicher.
+ **Skalierbarkeit**: Verarbeitet bis zu 500 Mitglieder pro Anfrage (Nutzlastlimit von 5 MB).
+ **Parallele Operationen**: Kompatibel mit gleichzeitigen Import-, Export- oder Massenlöschvorgängen.

## Autorisierung
<a name="bulk-member-match-authorization"></a>

Die API verwendet SMART auf dem FHIR-Autorisierungsprotokoll mit den folgenden erforderlichen Bereichen:
+ `system/Patient.read`— Erforderlich, um Patientenressourcen zu suchen und abzugleichen.
+ `system/Coverage.read`— Erforderlich, um die Versicherungsinformationen zu validieren.
+ `system/Group.write`— Erforderlich, um Ressourcen für Ergebnisgruppen zu erstellen.
+ `system/Organization.read`— Befriedigend, erforderlich, wenn sich der Versicherungsschutz auf Organisationen bezieht.
+ `system/Practitioner.read`— Befriedigend, erforderlich, wenn sich der Versicherungsschutz auf Praktiker bezieht.
+ `system/PractitionerRole.read`— Befristet, erforderlich, wenn sich der Versicherungsschutz auf die Rollen von Praktikern bezieht.
+ `system/Consent.write`— Befriedigend, erforderlich, wenn Ressourcen für die Einwilligung bereitgestellt werden.

Der Vorgang unterstützt auch die AWS IAM Signature Version 4 (Sigv4) -Autorisierung für programmatischen Zugriff.

## Fehlerbehandlung
<a name="bulk-member-match-errors"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:
+ **400 Bad Request**: Ungültiges Anforderungsformat, fehlende erforderliche Parameter oder die Nutzlast überschreitet die Größenbeschränkungen (500 Mitglieder oder 5 MB).
+ **422 Unverarbeitbare Entität**: Verarbeitungsfehler bei der Auftragsausführung.
+ **Fehler einzelner** Mitglieder: Wenn ein bestimmtes Mitglied die Verarbeitung nicht durchführt, wird der Vorgang mit den verbleibenden Mitgliedern fortgesetzt und enthält Fehlerdetails in der NonMatchedMembers Gruppe mit den entsprechenden Ursachencodes. Beispiel: Wenn `MemberBundle` bei einem Patienten der `birthDate` Parameter fehlt, wird der folgende Fehler zurückgegeben:

  ```
  "errors": [
    {
      "memberIndex": 1,
      "jsonBlob": {
        "resourceType": "OperationOutcome",
        "issue": [
          {
            "severity": "error",
            "code": "invalid",
            "diagnostics": "MemberPatient.birthDate is required"
          }
        ],
        "statusCode": 400
      }
    }
  ]
  ```

Fehlerdetails sind über den Endpunkt für die Statusabfrage verfügbar und beinhalten:
+ `numberOfMembersWithCustomerError`: Anzahl der Mitglieder mit Überprüfungs- oder Eingabefehlern.
+ `numberOfMembersWithServerError`: Anzahl der Mitglieder mit serverseitigen Verarbeitungsfehlern.

## Zugehörige -Vorgänge
<a name="bulk-member-match-related"></a>
+ [`$member-match`Operation für HealthLake](reference-fhir-operations-member-match.md)— Vorgang zum Abgleich einzelner Mitglieder.
+ [FHIR R4-Betrieb `$davinci-data-export` für HealthLake](reference-fhir-operations-davinci-data-export.md)— Massenexport von Daten mithilfe von Gruppenressourcen.
+ [FHIR R4 für `$operations` HealthLake](reference-fhir-operations.md)— Vollständige Liste der unterstützten Operationen.

# FHIR R4-Betrieb `$confirm-attribution-list` für HealthLake
<a name="reference-fhir-operations-confirm-attribution-list"></a>

Zeigt einem Hersteller an, dass der Verbraucher keine weiteren Änderungen an der Attributionsliste vornehmen muss. Bei diesem Vorgang wird die Zuordnungsliste abgeschlossen, indem inaktive Mitglieder aus der Liste entfernt, der Status auf „endgültig“ geändert und der Vorgang bestätigt wird. Dieser Vorgang ist Teil der Implementierung der [FHIR Member Attribution (ATR) List IG 2.1.0](https://build.fhir.org/ig/HL7/davinci-atr/spec.html).

## Endpoint
<a name="confirm-attribution-list-endpoint"></a>

```
POST [base]/Group/[id]/$confirm-attribution-list
```

## Anforderung
<a name="confirm-attribution-list-request"></a>

Es sind keine Parameter erforderlich.

```
POST [base]/Group/[id]/$confirm-attribution-list
```

## Antwort
<a name="confirm-attribution-list-response"></a>

Gibt HTTP 201 mit einer Bestätigungsnachricht zurück.

### Beispielantwort
<a name="confirm-attribution-list-response-example"></a>

```
HTTP Status Code: 201

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "message",
      "valueString": "Accepted."
    }
  ]
}
```

## Gruppenstatus nach Bestätigung
<a name="confirm-attribution-list-group-status"></a>

Nach erfolgreicher Bestätigung wird der Status der Zuordnungsliste der Gruppenressource auf „final“ gesetzt:

```
{
  "resourceType": "Group",
  "id": "fullexample",
  "extension": [
    {
      "url": "http://hl7.org/fhir/us/davinci-atr/StructureDefinition/ext-attributionListStatus",
      "valueCode": "final"
    }
  ]
  // ... other Group properties
}
```

## Fehlerbehandlung
<a name="confirm-attribution-list-error-handling"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:


| Fehler | HTTP-Status | Description | 
| --- | --- | --- | 
| Ungültige Operationsanforderung | 400 | Fehlerhafte Anforderungsparameter oder Struktur | 
| Die Gruppenressource wurde nicht gefunden | 404 | Die angegebene Gruppen-ID ist nicht vorhanden | 

## Autorisierung und Sicherheit
<a name="confirm-attribution-list-authorization"></a>

Anforderungen an SMART Scope  
Kunden müssen über die entsprechenden Rechte verfügen, um Gruppenressourcen und zugehörige Zuordnungsressourcen lesen zu können  
Denn `$confirm-attribution-list` Clients müssen auch über Schreibrechte verfügen, um Gruppenressourcen zu ändern  
Die standardmäßigen FHIR-Autorisierungsmechanismen gelten für alle Operationen

# FHIR R4-Betrieb `$davinci-data-export` für HealthLake
<a name="reference-fhir-operations-davinci-data-export"></a>

Bei dem `$davinci-data-export` Vorgang handelt es sich um einen asynchronen FHIR-Vorgang, aus dem Sie Gesundheitsdaten exportieren können. AWS HealthLake Dieser Vorgang unterstützt mehrere Exporttypen, darunter Member Attribution (ATR), PDex Provider Access und Member Access. Payer-to-Payer APIs Es handelt sich um eine spezielle Version des `$export` Standard-FHIR-Vorgangs, die darauf ausgelegt ist, die Anforderungen der DaVinci Implementierungsleitfäden zu erfüllen.

## Wichtigste Funktionen
<a name="davinci-data-export-features"></a>
+ *Asynchrone Verarbeitung*: Folgt dem standardmäßigen asynchronen FHIR-Anforderungsmuster
+ Export auf *Gruppenebene: Exportiert* Daten für Mitglieder innerhalb einer bestimmten Gruppenressource
+ *Mehrere Exporttypen*: Unterstützt ATR (Member Attribution), PDex Provider Access und Payer-to-Payer Member Access APIs
+ *Umfassender Profilsupport*: Beinhaltet US Core, CARIN Blue Button und PDex Profile
+ *Flexible Filterung*: Unterstützt die Filterung nach Patienten, Ressourcentypen und Zeiträumen
+ *NDJSON-Ausgabe*: Stellt Daten im durch Zeilenumbruch getrennten JSON-Format bereit

## Endpunkt des Vorgangs
<a name="davinci-data-export-endpoint"></a>

```
GET [base]/Group/[id]/$davinci-data-export
POST [base]/Group/[id]/$davinci-data-export
```

## Anforderungsparameter
<a name="davinci-data-export-parameters"></a>


| Parameter | Kardinalität | Description | 
| --- | --- | --- | 
| patient | 0.. \$1 | Bestimmte Mitglieder, deren Daten exportiert werden sollen. Wenn dieser Wert weggelassen wird, werden alle Mitglieder der Gruppe exportiert. | 
| \$1type | 0.. 1 | Kommagetrennte Liste der zu exportierenden FHIR-Ressourcentypen. | 
| \$1since | 0.. 1 | Schließt nur Ressourcen ein, die nach diesem Datum und dieser Uhrzeit aktualisiert wurden. | 
| \$1until | 0.. 1 | Schließt nur Ressourcen ein, die vor diesem Datum und dieser Uhrzeit aktualisiert wurden. | 
| exportType | 0.. 1 | Art des auszuführenden Exports. Zulässige Werte: hl7.fhir.us.davinci-atr, hl7.fhir.us.davinci-pdex, hl7.fhir.us.davinci-pdex.p2p, hl7.fhir.us.davinci-pdex.member. Standard: hl7.fhir.us.davinci-atr. | 
| \$1includeEOB2xWoFinancial | 0.. 1 | Gibt an, ob CARIN BB ExplanationOfBenefit 2.x-Ressourcen eingeschlossen werden sollen, deren Finanzdaten entfernt wurden. Standard: false. | 

### Unterstützte Ressourcentypen
<a name="davinci-data-export-supported-resources"></a>

Die unterstützten Ressourcentypen hängen vom angegebenen Exporttyp ab. Für ATR-Exporte werden die folgenden Ressourcentypen unterstützt:
+ `Group`
+ `Patient`
+ `Coverage`
+ `RelatedPerson`
+ `Practitioner`
+ `PractitionerRole`
+ `Organization`
+ `Location`

Für PDex Exporte (Anbieterzugriff und Mitgliederzugriff) werden zusätzlich zu den vorherigen Typen alle Ressourcentypen für klinische Zwecke und Reklamationen unterstützt. Payer-to-Payer Eine vollständige Liste der unterstützten Ressourcentypen finden Sie im [US Core Implementation Guide (STU 6.1)](https://hl7.org/fhir/us/core/STU6.1/), [im CARIN Blue Button Implementation Guide](https://hl7.org/fhir/us/carin-bb/) und im [Da Vinci Prior Authorization Support](https://hl7.org/fhir/us/davinci-pas/) Implementation Guide.

## Exporttypen
<a name="davinci-data-export-types"></a>

Der `$davinci-data-export` Vorgang unterstützt die folgenden Exporttypen. Sie geben den Exporttyp mithilfe des `exportType` Parameters an.


| Art des Exports | Zweck | Umfang der Daten | Zeitliches Limit | 
| --- | --- | --- | --- | 
| hl7.fhir.us.davinci-atr | Liste der Zuordnung von Mitgliedern | Ressourcen im Zusammenhang mit der Zuordnung | Keine | 
| hl7.fhir.us.davinci-pdex | API für den Anbieterzugriff | Klinische Daten und Reklamationsdaten für zugewiesene Patienten | 5 Jahre | 
| hl7.fhir.us.davinci-pdex.p2p | Payer-to-Payer Austausch | Historische Mitgliederdaten für Versicherungsübergänge | 5 Jahre | 
| hl7.fhir.us.davinci-pdex.member | API für den Mitgliederzugriff | Eigene Gesundheitsdaten des Mitglieds | 5 Jahre | 

**Anmerkung**  
Bei PDex Exporten gilt das Zeitlimit von 5 Jahren nicht für ATR-Ressourcentypen (`Group``Patient`,`Coverage`,`RelatedPerson`,`Practitioner`,, `PractitionerRole``Organization`,`Location`). Diese Ressourcen sind unabhängig vom Alter immer enthalten.

### ATR (hl7.fhir.us.davinci-atr)
<a name="davinci-data-export-type-atr"></a>

Mit dem ATR-Exporttyp können Sie Daten aus der Mitgliedsattributionsliste exportieren. Verwenden Sie diesen Exporttyp, um Ressourcen im Zusammenhang mit der Zuordnung für Mitglieder innerhalb einer Gruppe abzurufen. Weitere Informationen finden Sie unter [Da Vinci](https://build.fhir.org/ig/HL7/davinci-atr/OperationDefinition-davinci-data-export.html) ATR-Exportvorgang.

Unterstützte Ressourcentypen  
`Group`, `Patient`, `Coverage`, `RelatedPerson`, `Practitioner`, `PractitionerRole`, `Organization`, `Location`

Temporale Filterung  
Es wird keine zeitliche Filterung angewendet. Alle passenden Ressourcen werden unabhängig vom Datum exportiert.

### PDex Exporttypen
<a name="davinci-data-export-type-pdex"></a>

Alle PDex Exporttypen verwenden dieselben unterstützten Profile und dieselbe Filterlogik. Weitere Informationen finden Sie in der [Da Vinci PDex Provider Access API](https://build.fhir.org/ig/HL7/davinci-epdx/provider-access-api.html). Die folgenden Profile werden unterstützt:
+ US Core 3.1.1, 6.1.0 und 7.0.0
+ PDex Vorherige Autorisierung (wird für den Mitgliederzugriff nicht unterstützt)
+ CARIN BB 2.x Basisprofile: stationär stationär, ambulant stationär, beruflich, oral, pharmazeutisch NonClinician

Zugang zum Anbieter () `hl7.fhir.us.davinci-pdex`  
Ermöglicht netzinternen Anbietern das Abrufen von Patientendaten für zugewiesene Patienten.

Payer-to-Payer (`hl7.fhir.us.davinci-pdex.p2p`)  
Ermöglicht den Datenaustausch zwischen Kostenträgern, wenn ein Patient die Versicherung wechselt.

Zugang für Mitglieder () `hl7.fhir.us.davinci-pdex.member`  
Ermöglicht Mitgliedern den Zugriff auf ihre eigenen Gesundheitsdaten. Dieser Exporttyp kann Finanzdaten aus Schadensressourcen enthalten.

## Profilunterstützung und Inklusionslogik
<a name="davinci-data-export-profile-support"></a>

Bei PDex Exporten verwendet der `$davinci-data-export` Vorgang Profildeklarationen im `meta.profile` Element, um zu bestimmen, welche Ressourcen in den Export aufgenommen werden sollen.

### ExplanationOfBenefit Umgang mit Ressourcen
<a name="davinci-data-export-carin-handling"></a>

`ExplanationOfBenefit`(EOB) Ressourcen werden auf der Grundlage ihrer `meta.profile` Deklarationen in PDex Exporte aufgenommen oder ausgeschlossen:
+ ExplanationOfBenefit Ressourcen mit einem CARIN BB 1.x-Profil sind vom Export ausgeschlossen.
+ ExplanationOfBenefit Ressourcen ohne `meta.profile` Set sind vom Export ausgeschlossen.
+ ExplanationOfBenefit Ressourcen mit einem CARIN BB 2.x Basisprofil sind immer enthalten.
+ ExplanationOfBenefit Ressourcen mit einem CARIN BB 2.x-Profil, das Finanzdaten enthält, sind standardmäßig ausgeschlossen. Wenn diese `_includeEOB2xWoFinancial=true` Option gesetzt ist, werden sie in den gelöschten Finanzdaten enthalten und die Ressource wird in das entsprechende Basisprofil umgewandelt.
+ ExplanationOfBenefit Ressourcen mit einem Profil „ PDex Vorherige Autorisierung“ sind immer enthalten.

### Transformation von Finanzdaten
<a name="davinci-data-export-financial-transformation"></a>

Wenn Sie diese Einstellung vornehmen`_includeEOB2xWoFinancial=true`, transformiert der Vorgang die ExplanationOfBenefit Ressourcen von [CARIN BB 2.x](https://hl7.org/fhir/us/carin-bb/) in die entsprechenden Basisprofile, indem Finanzdaten entfernt werden. Beispielsweise wird eine Ressource in eine `C4BB ExplanationOfBenefit Oral` Ressource umgewandelt`C4BB ExplanationOfBenefit Oral Basis`, wodurch Finanzdaten gemäß der FHIR-Spezifikation aus dem Datensatz entfernt werden.

Die folgenden Finanzdatenelemente werden bei der Transformation entfernt:
+ Alle Elemente werden in Scheiben geschnitten `total`
+ Alle `adjudication` Elemente mit Slice `amounttype`
+ Alle `item.adjudication` Elemente mit Mengenangaben

Der Vorgang aktualisiert auch die Profilmetadaten während der Transformation:
+ `meta.profile`wird auf die kanonische URL des Basisprofils aktualisiert
+ Die Version wurde auf die CARIN BB 2.x Basisversion aktualisiert
+ Bestehende Ressourcen im Datenspeicher werden nicht geändert
+ Exportierte Ressourcen werden nicht dauerhaft im Datenspeicher gespeichert

### Regeln für die Profilerkennung
<a name="davinci-data-export-profile-detection"></a>

Der Vorgang verwendet die folgenden Regeln, um Profile zu erkennen und zu validieren:
+ Die Versionserkennung basiert auf dem `meta.profile` kanonischen URLs
+ Eine Ressource ist enthalten, wenn EINES ihrer deklarierten Profile den Exportkriterien entspricht
+ Die Profilvalidierung erfolgt während der Exportverarbeitung

## Fünfjährige zeitliche Filterung für Exporte PDex
<a name="davinci-data-export-temporal-filtering"></a>

 HealthLake Wendet für alle PDex Exporttypen einen Zeitfilter für fünf Jahre an, der darauf basiert, wann die Ressource zuletzt aktualisiert wurde. Der Zeitfilter gilt für alle Ressourcen mit Ausnahme der folgenden zentralen Attributionsressourcentypen, die unabhängig vom Alter immer exportiert werden:
+ `Patient`
+ `Coverage`
+ `Organization`
+ `Practitioner`
+ `PractitionerRole`
+ `RelatedPerson`
+ `Location`
+ `Group`

Diese administrativen und demografischen Ressourcen sind ausgenommen, da sie den wesentlichen Kontext für die exportierten Daten bieten. ATR-Exporte unterliegen keiner zeitlichen Filterung.

## Beispielanforderungen
<a name="davinci-data-export-examples"></a>

Die folgenden Beispiele zeigen, wie Exportaufträge für verschiedene Exporttypen gestartet werden.

*ATR-Export*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage,Practitioner,Organization&exportType=hl7.fhir.us.davinci-atr

POST https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage,Practitioner,Organization&exportType=hl7.fhir.us.davinci-atr
Content-Type: application/json

{
  "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
  "JobName": "attribution-export-job",
  "OutputDataConfig": {
    "S3Configuration": {
      "S3Uri": "s3://your-export-bucket/EXPORT-JOB",
      "KmsKeyId": "arn:aws:kms:region:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    }
  }
}
```

*Provider Access-Export mit Entfernung von ExplanationOfBenefit Finanzdaten*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Observation,Condition,MedicationRequest,ExplanationOfBenefit&exportType=hl7.fhir.us.davinci-pdex&_includeEOB2xWoFinancial=true
```

*Payer-to-Payer exportieren*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Coverage,ExplanationOfBenefit,Condition,Procedure&exportType=hl7.fhir.us.davinci-pdex.p2p&_includeEOB2xWoFinancial=true
```

*Export mit Mitgliederzugriff für einen bestimmten Patienten*

```
GET https://healthlake.{region}.amazonaws.com/datastore/{datastoreId}/r4/Group/example-group/$davinci-data-export?_type=Patient,Observation,Condition,ExplanationOfBenefit,MedicationRequest&exportType=hl7.fhir.us.davinci-pdex.member&patient=Patient/example-patient-id
```

## Beispielantwort
<a name="davinci-data-export-sample-response"></a>

```
{
  "datastoreId": "eaee622d8406b41eb86c0f4741201ff9",
  "jobStatus": "SUBMITTED",
  "jobId": "48d7b91dae4a64d00d54b70862f33f61"
}
```

## Beziehungen zu Ressourcen
<a name="davinci-data-export-resource-relationships"></a>

Der Vorgang exportiert Ressourcen auf der Grundlage ihrer Beziehungen innerhalb der Mitgliedsattributionsliste:

```
Group (Attribution List)
├── Patient (Members)
├── Coverage → RelatedPerson (Subscribers)
├── Practitioner (Attributed Providers)
├── PractitionerRole → Location
└── Organization (Attributed Providers)
```

### Quellen der Ressourcen
<a name="davinci-data-export-resource-sources"></a>


| Ressource | Standort der Quelle | Description | 
| --- | --- | --- | 
| Patient | Group.member.entity | Die Patienten, die Mitglieder der Zuordnungsliste sind | 
| Coverage | Group.member.extension:coverageReference | Versicherungsschutz, der zur Patientenmitgliedschaft führte | 
| Organization | Group.member.extension:attributedProvider | Organizations, denen Patienten zugeschrieben werden | 
| Practitioner | Group.member.extension:attributedProvider | Einzelne Ärzte, denen die Patienten zugeordnet sind | 
| PractitionerRole | Group.member.extension:attributedProvider | Rollen von Ärzten, denen Patienten zugeschrieben werden | 
| RelatedPerson | Coverage.subscriber | Abonnenten der Berichterstattung | 
| Location | PractitionerRole.location | Standorte, die mit den Rollen von Praktikern in Verbindung stehen | 
| Group | Eingabeendpunkt | Die Zuordnungsliste selbst | 

## Verwaltung von Aufträgen
<a name="davinci-data-export-job-management"></a>

Überprüfen Sie den Jobstatus  
`GET [base]/export/[job-id]`

Auftrag abbrechen  
`DELETE [base]/export/[job-id]`

### Auftragslebenszyklus
<a name="davinci-data-export-job-lifecycle"></a>
+ `SUBMITTED`- Der Job wurde empfangen und in die Warteschlange gestellt
+ `IN_PROGRESS`- Der Job wird aktiv bearbeitet
+ `COMPLETED`- Job erfolgreich abgeschlossen, Dateien zum Herunterladen verfügbar
+ `FAILED`- Job ist auf einen Fehler gestoßen

## Ausgabeformat
<a name="davinci-data-export-output-format"></a>
+ *Dateiformat*: NDJSON (Newline Delimited JSON)
+ *Dateiorganisation*: Separate Dateien für jeden Ressourcentyp
+ *Dateierweiterung*: .ndjson
+ *Speicherort: Spezifizierter* S3-Bucket und Pfad

## Fehlerbehandlung
<a name="davinci-data-export-error-handling"></a>

Der Vorgang gibt HTTP 400 Bad Request mit einer OperationOutcome der folgenden Bedingungen zurück:

Fehler bei der Autorisierung  
Die in angegebene IAM-Rolle `DataAccessRoleArn` verfügt nicht über ausreichende Berechtigungen, um den Exportvorgang durchzuführen. Die vollständige Liste der erforderlichen S3- und KMS-Berechtigungen finden Sie unter [Berechtigungen für Exportaufträge einrichten](getting-started-setting-up.md#setting-up-export-permissions).

Fehler bei der Parametervalidierung  
+ Der `patient` Parameter ist nicht formatiert als `Patient/id,Patient/id,...`
+ Eine oder mehrere Patientenreferenzen sind ungültig oder gehören nicht zur angegebenen Gruppe
+ Der `exportType` Parameterwert ist kein unterstützter Exporttyp
+ Der `_type` Parameter enthält Ressourcentypen, die für den angegebenen Exporttyp nicht unterstützt werden
+ Dem `_type` Parameter fehlen die erforderlichen Ressourcentypen (`Group``Patient`,,`Coverage`) für den `hl7.fhir.us.davinci-atr` Exporttyp
+ Der `_includeEOB2xWoFinancial` Parameterwert ist kein gültiger boolescher Wert

Fehler bei der Ressourcenvalidierung  
+ Die angegebene Gruppenressource ist nicht im Datenspeicher vorhanden
+ Die angegebene Gruppenressource hat keine Mitglieder
+ Ein oder mehrere Gruppenmitglieder verweisen auf Patientenressourcen, die nicht im Datenspeicher vorhanden sind

## Sicherheit und Autorisierung
<a name="davinci-data-export-security"></a>
+ Es gelten die standardmäßigen FHIR-Autorisierungsmechanismen
+ Die Datenzugriffsrolle muss über die erforderlichen IAM-Berechtigungen für S3- und KMS-Operationen verfügen. Die vollständige Liste der erforderlichen Berechtigungen finden Sie unter [Berechtigungen für Exportaufträge einrichten](getting-started-setting-up.md#setting-up-export-permissions).

## Bewährte Methoden
<a name="davinci-data-export-best-practices"></a>
+ *Auswahl des Ressourcentyps*: Fordern Sie nur die Ressourcentypen an, die Sie benötigen, um die Exportgröße und die Verarbeitungszeit zu minimieren
+ *Zeitbasierte Filterung*: Verwenden Sie den `_since` Parameter für inkrementelle Exporte
+ *Patientenfilterung*: Verwenden Sie den `patient` Parameter, wenn Sie nur Daten für bestimmte Mitglieder benötigen
+ *Auftragsüberwachung*: Überprüfen Sie regelmäßig den Auftragsstatus für große Exporte
+ *Fehlerbehandlung*: Implementieren Sie die richtige Wiederholungslogik für fehlgeschlagene Jobs
+ *Sensibilisierung für temporäre Filter*: Bei PDex Exporten sollten Sie bei der Auswahl von Ressourcentypen den Zeitfilter für 5 Jahre in Betracht ziehen
+ *Entfernung von Finanzdaten*: Verwenden Sie diese `_includeEOB2xWoFinancial=true` Option, wenn Sie Forderungsdaten ohne Finanzinformationen benötigen
+ *Profilverwaltung*: Stellen Sie sicher, dass die Ressourcen über die entsprechenden Profildeklarationen verfügen, überprüfen Sie sie vor der Aufnahme anhand von Zielprofilen und verwenden Sie die Profilversionsverwaltung, um das Exportverhalten zu steuern

## Einschränkungen
<a name="davinci-data-export-limitations"></a>
+ In dem Parameter können maximal 500 Patienten angegeben werden `patient`
+ Der Export ist nur auf Operationen auf Gruppenebene beschränkt
+ Unterstützt nur die vordefinierten Ressourcentypen für jeden Exporttyp
+ Die Ausgabe erfolgt immer im NDJSON-Format
+ PDex Die Exporte sind auf klinische Daten und Reklamationsdaten für einen Zeitraum von 5 Jahren begrenzt
+ Die Transformation von Finanzdaten gilt nur für CARIN BB 2.x-Profile ExplanationOfBenefit 

## Weitere Ressourcen
<a name="davinci-data-export-additional-resources"></a>
+ [Zuordnungsliste für Da Vinci-Mitglieder IG](https://build.fhir.org/ig/HL7/davinci-atr/)
+ [Da Vinci Payer Data Exchange AG](https://hl7.org/fhir/us/davinci-pdex/)
+ [CARIN Consumer Directed Payer Data Exchange IG](https://build.fhir.org/ig/HL7/carin-bb/)
+ [Leitfaden zur Implementierung von US Core](https://www.hl7.org/fhir/us/core/)
+ [FHIR-Spezifikation für den Zugriff auf Massendaten](https://hl7.org/fhir/uv/bulkdata/)

# Generierung klinischer Dokumente mit `$document`
<a name="reference-fhir-operations-document"></a>

AWS HealthLake unterstützt jetzt den `$document` Vorgang für Zusammenstellungsressourcen, sodass Sie ein vollständiges klinisches Dokument erstellen können, indem Sie die Zusammenstellung mit all ihren referenzierten Ressourcen in einem einzigen zusammenhängenden Paket bündeln. Dieser Vorgang ist unverzichtbar für Anwendungen im Gesundheitswesen, die:
+ Erstellen Sie standardisierte klinische Dokumente
+ Tauschen Sie komplette Patientenakten aus
+ Bewahren Sie umfassende klinische Unterlagen auf
+ Generieren Sie Berichte, die den gesamten relevanten Kontext enthalten

## Usage
<a name="document-usage"></a>

Der `$document` Vorgang kann für Composition-Ressourcen mit den Methoden GET und POST aufgerufen werden:

**Unterstützte Vorgänge**  


```
GET/POST [base]/Composition/[id]/$document
```

## Unterstützte Parameter
<a name="document-parameters"></a>

HealthLake unterstützt den folgenden FHIR-Parameter`$document`:


| Parameter | Typ | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | --- | 
| persist | Boolean | Nein | false | Boolescher Wert, der angibt, ob der Server das generierte Dokumentenpaket speichern soll | 

## Beispiele
<a name="document-examples"></a>

**GET-Anfrage**  


```
GET [base]/Composition/180f219f-97a8-486d-99d9-ed631fe4fc57/$document?persist=true
```

**POST-Anfrage mit Parametern**  


```
POST [base]/Composition/180f219f-97a8-486d-99d9-ed631fe4fc57/$document
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "persist",
      "valueBoolean": true
    }
  ]
}
```

**Beispielantwort**  
Die Operation gibt eine Bundle-Ressource vom Typ „Dokument“ zurück, die die Komposition und alle referenzierten Ressourcen enthält:

```
{
  "resourceType": "Bundle",
  "id": "180f219f-97a8-486d-99d9-ed631fe4fc57",
  "type": "document",
  "identifier": {
    "system": "urn:ietf:rfc:3986",
    "value": "urn:uuid:0c3151bd-1cbf-4d64-b04d-cd9187a4c6e0"
  },
  "timestamp": "2024-06-21T15:30:00Z",
  "entry": [
    {
      "fullUrl": "http://example.org/fhir/Composition/180f219f-97a8-486d-99d9-ed631fe4fc57",
      "resource": {
        "resourceType": "Composition",
        "id": "180f219f-97a8-486d-99d9-ed631fe4fc57",
        "status": "final",
        "type": {
          "coding": [
            {
              "system": "http://loinc.org",
              "code": "34133-9",
              "display": "Summary of Episode Note"
            }
          ]
        },
        "subject": {
          "reference": "Patient/example"
        },
        "section": [
          {
            "title": "Allergies",
            "entry": [
              {
                "reference": "AllergyIntolerance/123"
              }
            ]
          }
        ]
      }
    },
    {
      "fullUrl": "http://example.org/fhir/Patient/example",
      "resource": {
        "resourceType": "Patient",
        "id": "example",
        "name": [
          {
            "family": "Smith",
            "given": ["John"]
          }
        ]
      }
    },
    {
      "fullUrl": "http://example.org/fhir/AllergyIntolerance/123",
      "resource": {
        "resourceType": "AllergyIntolerance",
        "id": "123",
        "patient": {
          "reference": "Patient/example"
        },
        "code": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "418689008",
              "display": "Allergy to penicillin"
            }
          ]
        }
      }
    }
  ]
}
```

## Behavior
<a name="document-behavior"></a>

Die `$document` Operation:

1. Nimmt die angegebene Kompositionsressource als Grundlage für das Dokument

1. Identifiziert alle Ressourcen, auf die in der Komposition direkt verwiesen wird, und ruft sie ab

1. Verpackt die Komposition und alle Ressourcen, auf die verwiesen wird, in ein Paket vom Typ „Dokument“

1. Speichert das generierte Dokumentpaket im Datenspeicher, wenn der Parameter persist auf true gesetzt ist

1. Identifiziert Ressourcen, auf die in der Zusammensetzung indirekt verwiesen wird, und ruft sie ab, um eine umfassende Dokumentgenerierung zu ermöglichen

Der `$document` Vorgang unterstützt derzeit das Abrufen von Ressourcenreferenzen im folgenden Format:

1. 

   ```
   GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/id
   ```

1. Ressource/ID

Nicht unterstützte Ressourcenverweise innerhalb der Kompositionsressource werden aus dem generierten Dokument herausgefiltert.

## Fehlerbehandlung
<a name="document-error-handling"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:
+ 400 Bad Request: Ungültiger `$document` Vorgang (nicht konforme Anfrage) oder wenn das resultierende Dokument die FHIR-Validierung aufgrund herausgefilterter Verweise nicht besteht, wenn persist auf true gesetzt ist
+ 404 Nicht gefunden: Die Kompositionsressource wurde nicht gefunden

Weitere Informationen zur `$document` Operationsspezifikation finden Sie in der [FHIR `$document` R4-Kompositionsdokumentation](https://www.hl7.org/fhir/R4/composition-operation-document.html).

# Dauerhaftes Entfernen von Ressourcen mit `$erase`
<a name="reference-fhir-operations-erase"></a>

AWS HealthLake unterstützt den `$erase` Vorgang und ermöglicht das dauerhafte Löschen einer bestimmten Ressource und ihrer historischen Versionen. Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Einzelne Ressourcen dauerhaft entfernen
+ Löschen Sie bestimmte Versionsverläufe
+ Verwalten Sie die Lebenszyklen einzelner Ressourcen
+ Erfüllen Sie die spezifischen Anforderungen zur Datenlöschung

## Usage
<a name="erase-usage"></a>

Der `$erase` Vorgang kann auf zwei Ebenen aufgerufen werden:

**Ebene der Ressourceninstanz**  


```
POST [base]/[ResourceType]/[ID]/$erase?deleteAuditEvent=true
```

**Versionsspezifische Ebene**  


```
POST [base]/[ResourceType]/[ID]/_history/[VersionID]/$erase
```

## Parameters
<a name="erase-parameters"></a>


| Parameter | Typ | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | --- | 
| deleteAuditEvent | Boolean | Nein | false | Wenn der Wert wahr ist, werden die zugehörigen Prüfereignisse gelöscht | 

## Beispiele
<a name="erase-examples"></a>

**Beispielanforderung**  


```
POST [base]/Patient/example-patient/$erase
```

**Beispielantwort**  


```
{
      "jobId": "5df47e2f51ff3c731847678cb8cad48e",
      "jobStatus": "SUBMITTED"
    }
```

## Aufgabenstatus
<a name="erase-job-status"></a>

Um den Status eines Löschauftrags zu überprüfen:

```
GET [base]/$erase/[jobId]
```

Der Vorgang gibt Informationen zum Auftragsstatus zurück:

```
{
      "datastoreId": "36622996b1fcecb7e12ee2ee085308d3",
      "jobId": "5df47e2f51ff3c731847678cb8cad48e",
      "status": "COMPLETED",
      "submittedTime": "2025-10-30T16:39:24.160Z"
    }
```

## Behavior
<a name="erase-behavior"></a>

Die `$erase` Operation:

1. Wird asynchron verarbeitet, um die Datenintegrität sicherzustellen

1. Verwaltet ACID-Transaktionen

1. Ermöglicht die Nachverfolgung des Jobstatus

1. Löscht die angegebene Ressource und ihre Versionen dauerhaft

1. Beinhaltet eine umfassende Auditprotokollierung der Löschaktivitäten

1. Unterstützt das selektive Löschen von Prüfereignissen

## Protokollierung von Prüfungen
<a name="erase-audit-logging"></a>

Der `$erase` Vorgang protokolliert wie DeleteResource mit Benutzer-ID, Zeitstempel und Ressourcendetails.

## Einschränkungen
<a name="erase-limitations"></a>
+ `$erased`Die Ressource wird nicht in Suchergebnissen oder `_history` Abfragen angezeigt.
+ Auf Ressourcen, die gelöscht werden, kann während der Verarbeitung möglicherweise vorübergehend nicht zugegriffen werden
+ Die Speicherbelegung wird sofort angepasst, wenn Ressourcen dauerhaft entfernt werden

# Patientendaten abrufen mit `Patient/$everything`
<a name="reference-fhir-operations-everything"></a>

 Die `Patient/$everything` Operation wird verwendet, um eine `Patient` FHIR-Ressource zusammen mit allen anderen Ressourcen, die damit zusammenhängen, abzufragen. `Patient` Die Operation kann verwendet werden, um einem Patienten Zugriff auf seine gesamte Patientenakte zu gewähren oder es einem Anbieter zu ermöglichen, einen Massendatendownload für einen Patienten durchzuführen. HealthLakeunterstützt `Patient/$everything` einen bestimmten Patienten`id`.

`Patient/$everything`ist eine FHIR-REST-API-Operation, die wie in den folgenden Beispielen gezeigt aufgerufen werden kann.

------
#### [ GET request ]

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything
```

------

**Anmerkung**  
Die antwortenden Ressourcen sind nach Ressourcentyp und Ressource sortiert. `id`  
Die Antwort ist immer mit gefüllt`Bundle.total`. 

## `Patient/$everything`-Parameter
<a name="patient-everything-query-params"></a>

HealthLake unterstützt die folgenden Abfrageparameter


| Parameter | Details | 
| --- | --- | 
|  start  |  Ruft alle `Patient` Daten ab einem bestimmten Startdatum ab.  | 
|  end  |  Ruft alle `Patient` Daten vor einem bestimmten Enddatum ab.  | 
|  since  |  Alle `Patient` Daten werden nach einem bestimmten Datum aktualisiert.  | 
|  \$1typ  |  Ruft `Patient` Daten für bestimmte Ressourcentypen ab.  | 
|  \$1count  |  `Patient`Daten abrufen und Seitengröße angeben.  | 

**Example - Ruft alle Patientendaten ab einem bestimmten Startdatum ab**  
`Patient/$everything`kann den `start` Filter verwenden, um nur Daten nach einem bestimmten Datum abzufragen.   

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything?start=2024-03-15T00:00:00.000Z
```

**Example - Ruft alle `Patient` Daten vor einem bestimmten Enddatum ab**  
Patient \$1everything kann den `end` Filter verwenden, um nur Daten vor einem bestimmten Datum abzufragen.   

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything?end=2024-03-15T00:00:00.000Z
```

**Example - Alle `Patient` Daten werden nach einem bestimmten Datum aktualisiert**  
`Patient/$everything`kann den `since` Filter verwenden, um nur Daten abzufragen, die nach einem bestimmten Datum aktualisiert wurden.  

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything?since=2024-03-15T00:00:00.000Z
```

**Example - Ruft `Patient` Daten für bestimmte Ressourcentypen ab**  
Patient \$1everything kann den `_type` Filter verwenden, um bestimmte Ressourcentypen anzugeben, die in die Antwort aufgenommen werden sollen. In einer durch Kommas getrennten Liste können mehrere Ressourcentypen angegeben werden.   

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything?_type=Observation,Condition
```

**Example - `Patient` Daten abrufen und Seitengröße angeben**  
Patient \$1everything kann das verwenden`_count`, um die Seitengröße einzustellen.   

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id/$everything?_count=15
```

## `Patient/$everything``start`und Attribute `end`
<a name="reference-patient-everything-start-end-attributes"></a>

HealthLake unterstützt die folgenden Ressourcenattribute für die Parameter `Patient/ $everything` `start` und `end` query.


| Ressource | "Resource"-Element | 
| --- | --- | 
| Account | Account.ServicePeriod.Start | 
| AdverseEvent | AdverseEvent. Datum | 
| AllergyIntolerance | AllergyIntolerance. Aufgezeichnetes Datum | 
| Termin | Termin. Start | 
| AppointmentResponse | AppointmentResponse. starten | 
| AuditEvent | AuditEvent.Zeitraum.Beginn | 
| Basic | Basic. Erstellt | 
| BodyStructure | NO\$1DATE | 
| CarePlan | CarePlan.Zeitraum.Beginn | 
| CareTeam | CareTeam.Zeitraum.Beginn | 
| ChargeItem | ChargeItem. occurrenceDateTime, ChargeItem .occurrencePeriod.Start, .occurrenceTiming.Event ChargeItem | 
| Antrag | Claim.BillablePeriod.Start | 
| ClaimResponse | ClaimResponse. erstellt | 
| ClinicalImpression | ClinicalImpression. Datum | 
| Kommunikation | Mitteilung. Gesendet | 
| CommunicationRequest | CommunicationRequest. occurrenceDateTime,. CommunicationRequest Vorkommniszeit.Start | 
| Composition | Zusammensetzung.Datum | 
| Bedingung | Zustand. Datum der Aufzeichnung | 
| Zustimmung | Zustimmung.DateTime | 
| Abdeckung | Geltungsbereich. Zeitraum. Start | 
| CoverageEligibilityRequest | CoverageEligibilityRequest. erstellt | 
| CoverageEligibilityResponse | CoverageEligibilityResponse. erstellt | 
| DetectedIssue | DetectedIssue. identifiziert | 
| DeviceRequest | DeviceRequest. Verfasst am | 
| DeviceUseStatement | DeviceUseStatement. Aufgenommen am | 
| DiagnosticReport | DiagnosticReport. effektiv | 
| DocumentManifest | DocumentManifest. geschaffen | 
| DocumentReference | DocumentReference.kontext.period.start | 
| Begegnung | Begegnung. Zeit. Start | 
| EnrollmentRequest | EnrollmentRequest. erstellt | 
| EpisodeOfCare | EpisodeOfCare.Zeitraum.Start | 
| ExplanationOfBenefit | ExplanationOfBenefit. Abrechnungszeitraum.Start | 
| FamilyMemberHistory | NO\$1DATE | 
| Flag | Flag.Period.Start | 
| Ziel | Ziel.StatusDatum | 
| Group (Gruppieren) | KEIN\$1DATUM | 
| ImagingStudy | ImagingStudy. gestartet | 
| Immunisierung | Impfung. Aufgenommen | 
| ImmunizationEvaluation | ImmunizationEvaluation. Datum | 
| ImmunizationRecommendation | ImmunizationRecommendation.datum | 
| Rechnung | Rechnung.Datum | 
| Auflisten | Liste.Datum | 
| MeasureReport | MeasureReport.Zeitraum.Beginn | 
| Medien | Medien/ausgegeben | 
| MedicationAdministration | MedicationAdministration. wirksam | 
| MedicationDispense | MedicationDispense. Wenn vorbereitet | 
| MedicationRequest | MedicationRequest. Verfasst am | 
| MedicationStatement | MedicationStatement. Datum des Eintrags | 
| MolecularSequence | NO\$1DATE | 
| NutritionOrder | NutritionOrder. dateTime | 
| Beobachtung | Beobachtung. Wirksam | 
| Patient | KEIN DATUM | 
| Person | KEIN\$1DATUM | 
| Verfahren | Verfahren. Durchgeführt | 
| Herkunft | Herkunft. Vorkommender Zeitraum. Beginn, Herkunft. occurredDateTime | 
| QuestionnaireResponse | QuestionnaireResponse. verfasst | 
| RelatedPerson | KEIN\$1DATUM | 
| RequestGroup | RequestGroup. Autor am | 
| ResearchSubject | ResearchSubject. Zeitraum | 
| RiskAssessment | RiskAssessment. occurrenceDateTime,. RiskAssessment Vorkommniszeit.Start | 
| Plan | Schedule.PlanningHorizon | 
| ServiceRequest | ServiceRequest. Verfasst am | 
| Exemplar | Exemplar. Uhrzeit des Empfangs | 
| SupplyDelivery | SupplyDelivery. occurrenceDateTime, SupplyDelivery .occurrencePeriod.Start, .occurrenceTiming.Event SupplyDelivery | 
| SupplyRequest | SupplyRequest. Verfasst am | 
| VisionPrescription | VisionPrescription. Datum, an dem geschrieben wurde | 

# ValueSet Codes abrufen mit `$expand`
<a name="reference-fhir-operations-expand"></a>

AWS HealthLake unterstützt jetzt den `$expand` Vorgang für diejenigen ValueSets , die von Ihnen als Kunde aufgenommen wurden, sodass Sie die vollständige Liste der in diesen ValueSet Ressourcen enthaltenen Codes abrufen können. Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Rufen Sie zu Validierungszwecken alle möglichen Codes ab
+ Verfügbare Optionen in Benutzeroberflächen anzeigen
+ Führen Sie umfassende Codelookups innerhalb eines bestimmten Terminologiekontextes durch

## Usage
<a name="expand-usage"></a>

Der `$expand` Vorgang kann mit den Methoden GET und POST für ValueSet Ressourcen aufgerufen werden:

**Unterstützte Vorgänge**  


```
GET/POST [base]/ValueSet/[id]/$expand
GET [base]/ValueSet/$expand?url=http://example.com
POST [base]/ValueSet/$expand
```

## Unterstützte Parameter
<a name="expand-parameters"></a>

HealthLake unterstützt eine Teilmenge von FHIR R4-Parametern: `$expand`


| Parameter | Typ | Erforderlich | Description | 
| --- | --- | --- | --- | 
| url | uri | Nein | Kanonische URL des zu erweiterenden ValueSet  | 
| id | id | Nein | ValueSet zu erweiterende Ressourcen-ID (für GET- oder POST-Operationen) | 
| filter | Zeichenfolge | Nein | Filtert das Ergebnis der Codeerweiterung | 
| count | Ganzzahl | Nein | Anzahl der zurückzugebenden Codes | 
| offset | Ganzzahl | Nein | Anzahl der übereinstimmenden Codes, die vor der Rückkehr übersprungen werden müssen. Gilt nach dem Filtern und nur für die passenden Codes, nicht für den vollständigen, ungefilterten Inhalt des Originals ValueSet | 

## Beispiele
<a name="expand-examples"></a>

**GET-Anfrage nach ID**  


```
GET [base]/ValueSet/example-valueset/$expand
```

**GET-Anfrage per URL mit Filter**  


```
GET [base]/ValueSet/$expand?url=http://example.com/ValueSet/my-valueset&filter=male&count=5
```

**POST-Anfrage mit Parametern (nach ID)**  


```
POST [base]/ValueSet/example-valueset/$expand
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "count",
      "valueInteger": 10
    },
    {
      "name": "filter",
      "valueString": "admin"
    }
  ]
}
```

**POST-Anfrage mit Parametern (per URL)**  


```
POST [base]/ValueSet/$expand
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "url",
      "valueUri": "http://hl7.org/fhir/ValueSet/administrative-gender"
    },
    {
      "name": "count",
      "valueInteger": 10
    }
  ]
}
```

**Beispielantwort**  
Die Operation gibt eine ValueSet Ressource mit einem `expansion` Element zurück, das die erweiterten Codes enthält:

```
{
  "resourceType": "ValueSet",
  "id": "administrative-gender",
  "status": "active",
  "expansion": {
    "identifier": "urn:uuid:12345678-1234-1234-1234-123456789abc",
    "timestamp": "2024-01-15T10:30:00Z",
    "total": 4,
    "parameter": [
      {
        "name": "count",
        "valueInteger": 10
      }
    ],
    "contains": [
      {
        "system": "http://hl7.org/fhir/administrative-gender",
        "code": "male",
        "display": "Male"
      },
      {
        "system": "http://hl7.org/fhir/administrative-gender",
        "code": "female",
        "display": "Female"
      },
      {
        "system": "http://hl7.org/fhir/administrative-gender",
        "code": "other",
        "display": "Other"
      },
      {
        "system": "http://hl7.org/fhir/administrative-gender",
        "code": "unknown",
        "display": "Unknown"
      }
    ]
  }
}
```

Die Antwort enthält:
+ expansion.total: Gesamtzahl der Codes im erweiterten Bereich ValueSet
+ expansion.contains: Array erweiterter Codes mit ihren System-, Code- und Anzeigewerten
+ expansion.parameter: In der Erweiterungsanforderung verwendete Parameter

Weitere Informationen zur `$expand` Operationsspezifikation finden Sie in der [FHIR](https://build.fhir.org/valueset-operation-expand.html) R4-Dokumentation. ValueSet `$expand`

# HealthLake Daten mit FHIR exportieren `$export`
<a name="reference-fhir-operations-export"></a>

Mithilfe der Operation FHIR \$1export können Sie HealthLake Daten in großen Mengen aus Ihrem Datenspeicher exportieren. HealthLake unterstützt die `$export` Verwendung `POST` von FHIR und Anfragen. `GET` Um eine Exportanfrage mit stellen zu können`POST`, benötigen Sie einen IAM-Benutzer, eine Gruppe oder eine IAM-Rolle mit den erforderlichen Berechtigungen, die Sie im `$export` Rahmen der Anfrage angeben und die gewünschten Parameter in den Anfragetext aufnehmen können.

**Anmerkung**  
Alle mit FHIR gestellten HealthLake Exportanfragen `$export` werden im `ndjson` Format zurückgegeben und in einen Amazon S3 S3-Bucket exportiert, in dem jedes Amazon S3 S3-Objekt nur einen einzigen FHIR-Ressourcentyp enthält.  
Sie können Exportanfragen im Rahmen der AWS Konto-Servicekontingente in die Warteschlange stellen. Weitere Informationen finden Sie unter [Servicekontingente](reference-healthlake-endpoints-quotas.md#reference-healthlake-quotas).

HealthLake unterstützt die folgenden drei Arten von Massenexport-Endpunktanforderungen.


**HealthLake `$export`Massentypen**  

| Exporttyp | Description | Syntax | 
| --- | --- | --- | 
| System (System) | Exportieren Sie alle Daten vom HealthLake FHIR-Server. | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export`  | 
| Alle Patienten | Exportieren Sie alle Daten, die sich auf alle Patienten beziehen, einschließlich der Ressourcentypen, die dem Ressourcentyp Patient zugeordnet sind. | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export` `GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export` | 
| Gruppe von Patienten | Exportieren Sie alle Daten, die sich auf eine Patientengruppe beziehen, für die eine Gruppen-ID angegeben wurde. | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export` `GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export` | 

## Bevor Sie beginnen
<a name="export-rest-before-you-begin"></a>

Erfüllen Sie die folgenden Anforderungen, um eine Exportanfrage mithilfe der FHIR REST-API für HealthLake zu stellen.
+ Sie müssen einen Benutzer, eine Gruppe oder eine Rolle eingerichtet haben, die über die erforderlichen Berechtigungen verfügt, um die Exportanfrage zu stellen. Weitere Informationen hierzu finden Sie unter [Autorisieren einer Anfrage `$export`](#export-rest-auth).
+ Sie müssen eine Servicerolle erstellt haben, die HealthLake Zugriff auf den Amazon S3 S3-Bucket gewährt, in den Ihre Daten exportiert werden sollen. Die Servicerolle muss auch HealthLake als Dienstprinzipal angegeben werden. Weitere Informationen zum Einrichten von Berechtigungen finden Sie unter[Berechtigungen für Exportaufträge einrichten](getting-started-setting-up.md#setting-up-export-permissions).

## Autorisieren einer Anfrage `$export`
<a name="export-rest-auth"></a>

Um eine erfolgreiche Exportanfrage mit der FHIR REST-API zu stellen, autorisieren Sie Ihren Benutzer, Ihre Gruppe oder Rolle entweder mit IAM oder .0. OAuth2 Sie müssen auch über eine Servicerolle verfügen.

**Autorisieren einer Anfrage mithilfe von IAM**  
Wenn Sie eine `$export` Anfrage stellen, müssen für den Benutzer, die Gruppe oder die Rolle IAM-Aktionen in der Richtlinie enthalten sein. Weitere Informationen finden Sie unter [Berechtigungen für Exportaufträge einrichten](getting-started-setting-up.md#setting-up-export-permissions).

**Autorisieren einer Anfrage mit SMART auf FHIR (2.0) OAuth**  
Wenn Sie eine `$export` Anfrage in einem SMART on FHIR-fähigen HealthLake Datenspeicher stellen, müssen Ihnen die entsprechenden Bereiche zugewiesen sein. Weitere Informationen finden Sie unter [Die Ressourcen von SMART auf FHIR umfassen folgende Bereiche HealthLake](reference-smart-on-fhir-oauth-scopes.md#smart-on-fhir-scopes-rest).

**Anmerkung**  
FHIR `$export` mit `GET` Anfragen erfordert dieselbe Authentifizierungsmethode oder dasselbe Trägertoken (im Fall von SMART auf FHIR), um den Export anzufordern und Dateien abzurufen. Mit FHIR `$export` mit exportierte Dateien `GET` stehen 48 Stunden lang zum Download zur Verfügung.

## Eine `$export` Anfrage stellen
<a name="export-rest-request"></a>

In diesem Abschnitt werden die erforderlichen Schritte beschrieben, die Sie ergreifen müssen, wenn Sie eine Exportanfrage mithilfe der FHIR REST-API stellen.

Um zu vermeiden, dass Ihr AWS Konto versehentlich belastet wird, empfehlen wir, Ihre Anfragen zu testen, indem Sie eine `POST` Anfrage stellen, ohne die `$export` Syntax anzugeben.

Um die Anfrage zu stellen, müssen Sie wie folgt vorgehen:

1. Geben Sie `$export` in der `POST` Anfrage-URL einen unterstützten Endpunkt an.

1. Geben Sie die erforderlichen Header-Parameter an.

1. Geben Sie einen Anforderungstext an, der die erforderlichen Parameter definiert.

### Schritt 1: Geben Sie `$export` in der `POST` Anfrage-URL einen unterstützten [Endpunkt](reference-healthlake-endpoints-quotas.md#reference-healthlake-endpoints) an.
<a name="export-rest-request-step-1"></a>

HealthLake unterstützt drei Arten von Massenexport-Endpunktanfragen. Um eine Massenexportanfrage zu stellen, müssen Sie eine `POST` Anfrage auf einem der drei unterstützten Endpunkte stellen. Die folgenden Beispiele zeigen, wo `$export` in der Anforderungs-URL angegeben werden muss.
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export`
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export`
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export`

Sie können die folgenden unterstützten Suchparameter in der `POST` Anforderungszeichenfolge verwenden.

#### Unterstützte Suchparameter
<a name="export-rest-query-parameters"></a>

HealthLake unterstützt die folgenden Suchmodifikatoren in Massenexportanfragen.

Die folgenden Beispiele enthalten Sonderzeichen, die vor dem Absenden Ihrer Anfrage codiert werden müssen.


| Name | Erforderlich? | Description | Beispiel | 
| --- | --- | --- | --- | 
| \$1outputFormat | Nein | Das Format für die angeforderten Massendatendateien, die generiert werden sollen. Zulässige Werte sindapplication/fhir\$1ndjson,application/ndjson,ndjson. |  | 
| \$1type | Nein | Eine Folge von durch Kommas getrennten FHIR-Ressourcentypen, die Sie in Ihren Exportauftrag aufnehmen möchten. Wir empfehlen die Aufnahme, \$1type da sich dies auf Kosten auswirken kann, wenn alle Ressourcen exportiert werden. | &\$1type=MedicationStatement, Observation | 
| \$1since | Nein | Ressourcentypen, die am oder nach dem Datums- und Zeitstempel geändert wurden. Wenn für einen Ressourcentyp kein Datum der letzten Aktualisierung angegeben ist, wird er in Ihre Antwort aufgenommen. | &\$1since=2024-05-09T00%3A00%3A00Z | 
| \$1until | Nein | Ressourcentypen, die am oder vor dem Datumszeitstempel geändert wurden. Wird in Kombination mit verwendet\$1since, um einen bestimmten Zeitraum für den Export zu definieren. Wenn für einen Ressourcentyp kein Datum der letzten Aktualisierung angegeben ist, wird er von Ihrer Antwort ausgeschlossen. | &\$1until=2024-12-31T23%3A59%3A59Z | 

### Schritt 2: Geben Sie die erforderlichen Header-Parameter an
<a name="export-rest-request-step-2"></a>

Um eine Exportanforderung mithilfe der FHIR REST-API zu stellen, müssen Sie die folgenden Header-Parameter angeben.
+ Inhaltstyp: `application/fhir+json`
+ Bevorzugen Sie: `respond-async`

Als Nächstes müssen Sie die erforderlichen Elemente im Anfragetext angeben.

### Schritt 3: Geben Sie einen Anforderungstext an, der die erforderlichen Parameter definiert.
<a name="export-rest-request-step-3"></a>

Für die Exportanforderung ist auch ein Hauptteil im `JSON` Format erforderlich. Der Körper kann die folgenden Parameter enthalten.


| Key (Schlüssel) | Erforderlich? | Description | Wert | 
| --- | --- | --- | --- | 
| DataAccessRoleArn | Ja | Ein ARN einer HealthLake Servicerolle. Die verwendete Servicerolle muss HealthLake als Dienstprinzipal angegeben werden. | arn:aws:iam::444455556666:role/your-healthlake-service-role | 
| JobName | Nein | Der Name der Exportanforderung. | your-export-job-name | 
| S3Uri | Ja | Teil eines OutputDataConfig Schlüssels. Die S3-URI des Ziel-Buckets, in den Ihre exportierten Daten heruntergeladen werden. | s3://amzn-s3-demo-bucket/EXPORT-JOB/ | 
| KmsKeyId | Ja | Teil eines OutputDataConfig Schlüssels. Der ARN des AWS KMS Schlüssels, der zur Sicherung des Amazon S3 S3-Buckets verwendet wurde. | arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab | 

**Example Hauptteil einer Exportanfrage, die mit der FHIR REST-API gestellt wurde**  
Um eine Exportanfrage mithilfe der FHIR REST-API zu stellen, müssen Sie einen Hauptteil angeben, wie im Folgenden dargestellt.  

```
{
  "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
  "JobName": "your-export-job",
  "OutputDataConfig": {
    "S3Configuration": {
      "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB",
      "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    }
  }
}
```

Wenn Ihre Anfrage erfolgreich ist, erhalten Sie die folgende Antwort.

*Header der Antwort*

```
content-location: https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
```

*Hauptteil der Antwort*

```
{
  "datastoreId": "your-data-store-id",
  "jobStatus": "SUBMITTED",
  "jobId": "your-export-request-job-id"
}
```

## Verwaltung Ihrer Exportanfrage
<a name="export-rest-management"></a>

Nachdem Sie eine erfolgreiche Exportanfrage gestellt haben, können Sie die Anfrage verwalten, indem `$export` Sie den Status einer aktuellen Exportanfrage beschreiben und `$export` eine aktuelle Exportanfrage stornieren.

Wenn Sie eine Exportanfrage mithilfe der REST-API stornieren, wird Ihnen nur der Teil der Daten in Rechnung gestellt, der bis zum Absenden der Stornierungsanforderung exportiert wurde.

In den folgenden Themen wird beschrieben, wie Sie den Status einer aktuellen Exportanfrage abrufen oder diese stornieren können.

### Eine Exportanfrage stornieren
<a name="export-rest-management-describe"></a>

Um eine Exportanfrage zu stornieren, stellen Sie eine `DELETE` Anfrage und geben Sie die Job-ID in der Anfrage-URL an.

```
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
```

Wenn Ihre Anfrage erfolgreich ist, erhalten Sie Folgendes.

```
{
  "exportJobProperties": {
    "jobId": "your-original-export-request-job-id",
    "jobStatus": "CANCEL_SUBMITTED",
    "datastoreId": "your-data-store-id"
  }
}
```

Wenn Ihre Anfrage nicht erfolgreich ist, erhalten Sie Folgendes.

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "not-supported",
      "diagnostics": "Interaction not supported."
    }
  ]
}
```

### Beschreibung einer Exportanfrage
<a name="export-rest-management-describe"></a>

Um den Status einer Exportanfrage abzurufen, stellen Sie eine `GET` Anfrage, indem Sie `export` und Ihr verwenden`export-request-job-id`.

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-id
```

Die JSON-Antwort wird ein `ExportJobProperties` Objekt enthalten. Sie kann die folgenden Schlüssel:Wert-Paare enthalten.


| Name | Erforderlich? | Description | Wert | 
| --- | --- | --- | --- | 
| DataAccessRoleArn | Nein | Ein ARN einer HealthLake Servicerolle. Die verwendete Servicerolle muss HealthLake als Dienstprinzipal angegeben werden. | arn:aws:iam::444455556666:role/your-healthlake-service-role | 
| SubmitTime | Nein | Das Datum, zu dem ein Exportauftrag gesendet wurde. | Apr 21, 2023 5:58:02 | 
| EndTime | Nein | Die Uhrzeit, zu der ein Exportauftrag abgeschlossen wurde. | Apr 21, 2023 6:00:08 PM | 
| JobName | Nein | Der Name der Exportanforderung. | your-export-job-name | 
| JobStatus | Nein |  | Folgende sind gültige Werte:<pre>SUBMITTED | IN_PROGRESS | COMPLETED_WITH_ERRORS | COMPLETED |<br />      FAILED</pre> | 
| S3Uri | Ja | Teil eines [OutputDataConfig](https://docs.aws.amazon.com/healthlake/latest/APIReference/API_OutputDataConfig.html)Objekts. Die Amazon S3 S3-URI des Ziel-Buckets, in den Ihre exportierten Daten heruntergeladen werden. | s3://amzn-s3-demo-bucket/EXPORT-JOB/ | 
| KmsKeyId | Ja | Teil eines [OutputDataConfig](https://docs.aws.amazon.com/healthlake/latest/APIReference/API_OutputDataConfig.html)Objekts. Der ARN des AWS KMS Schlüssels, der zur Sicherung des Amazon S3 S3-Buckets verwendet wurde. | arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab | 

**Example : Hauptteil einer Exportanfrage zur Beschreibung, die mithilfe der FHIR REST-API gestellt wurde**  
Bei Erfolg erhalten Sie die folgende JSON-Antwort.  

```
{
  "exportJobProperties": {
    "jobId": "your-export-request-id",
    "JobName": "your-export-job",
    "jobStatus": "SUBMITTED",
    "submitTime": "Apr 21, 2023 5:58:02 PM",
    "endTime": "Apr 21, 2023 6:00:08 PM",
    "datastoreId": "your-data-store-id",
    "outputDataConfig": {
      "s3Configuration": {
        "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB",
        "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab""
      }
    },
    "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
  }
}
```

# `$inquire`FHIR-Operation für HealthLake
<a name="reference-fhir-operations-inquire"></a>

Mit `$inquire` diesem Vorgang können Sie den Status einer zuvor eingereichten vorherigen Autorisierungsanfrage überprüfen. Dieser Vorgang implementiert den [Da Vinci Prior Authorization Support (PAS) Implementation Guide](https://hl7.org/fhir/us/davinci-pas/), der einen standardisierten FHIR-basierten Workflow zum Abrufen der aktuellen Autorisierungsentscheidung bietet.

## Funktionsweise
<a name="inquire-how-it-works"></a>
+ **Anfrage einreichen**: Sie senden ein FHIR-Paket, das den Antrag, den Sie überprüfen möchten, und unterstützende Informationen enthält
+ **Suchen**: HealthLake sucht ClaimResponse in Ihrem Datenspeicher nach dem entsprechenden
+ **Abrufen**: Der neueste Autorisierungsstatus wird abgerufen
+ **Antworten**: Sie erhalten sofort eine Antwort mit dem aktuellen Autorisierungsstatus (in der Warteschlange, genehmigt, verweigert usw.)

**Anmerkung**  
`$inquire`ist ein **schreibgeschützter Vorgang, der den vorhandenen Autorisierungsstatus** abruft. Es werden keine Ressourcen in Ihrem Datenspeicher geändert oder aktualisiert.

## API-Endpunkt
<a name="inquire-api-endpoint"></a>

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

## Struktur der Anfrage
<a name="inquire-request-structure"></a>

### Anforderungen an das Paket
<a name="inquire-bundle-requirements"></a>

Bei Ihrer Anfrage muss es sich um eine FHIR-Bundle-Ressource handeln mit:
+ **Bundle.type**: Muss sein `"collection"`
+ **bundle.entry****: Muss genau eine Claim-Ressource enthalten mit:**
  + `use = "preauthorization"`
  + `status = "active"`
+ **Referenzierte Ressourcen**: Alle Ressourcen, auf die im Antrag verwiesen wird, müssen im Paket enthalten sein

**Beispielweise abfragen**  
Die Ressourcen in Ihrem Eingabepaket dienen als Suchvorlage. HealthLake verwendet die bereitgestellten Informationen, um das entsprechende zu finden ClaimResponse.

### Erforderliche -Ressourcen
<a name="inquire-required-resources"></a>


| Ressource | Kardinalität | Profil | Description | 
| --- | --- | --- | --- | 
| Anspruch erheben | 1 | Anfrage zum PAS-Anspruch | Die vorherige Genehmigung, nach der Sie sich erkundigen | 
| Patient | 1 | PAS-Begünstigter Patient | Demografische Informationen zum Patienten | 
| Organisation (Versicherer) | 1 | PAS-Versichererorganisation | Versicherungsgesellschaft | 
| Organisation (Anbieter) | 1 | PAS anfordernde Organisation | Gesundheitsdienstleister, der die Anfrage eingereicht hat | 

### Wichtige Suchkriterien
<a name="inquire-search-criteria"></a>

HealthLake sucht nach der ClaimResponse Verwendung von:
+ **Referenz des Patienten** aus dem Antrag
+ **Referenz des Versicherers** aus dem Antrag
+ **Referenz des Anbieters** aus dem Antrag
+ **Erstellungsdatum** des Antrags (als Zeitfilter)

**Nur patientenspezifische Anfragen**  
Alle Anfragen müssen sich auf einen bestimmten Patienten beziehen. Systemweite Abfragen ohne Patientenidentifikation sind nicht zulässig.

## Beispielanforderung
<a name="inquire-example-request"></a>

```
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"  
      }  
    }  
  ]  
}
```

## Reaktionsformat
<a name="inquire-response-format"></a>

### Erfolgreiche Antwort (200 OK)
<a name="inquire-success-response"></a>

Sie erhalten ein Paket mit Antworten auf Anfragen von PAS, das Folgendes enthält:
+ **ClaimResponse**mit dem aktuellen Autorisierungsstatus; mehrere **ClaimResponse**, wenn er den Suchkriterien entspricht
+ Alle Originalressourcen aus Ihrer Anfrage (zurückgesendet)
+ Zeitstempel, zu dem die Antwort zusammengestellt wurde

**Mögliche Ergebnisse ClaimResponse**  



| Ergebnis | Description | 
| --- | --- | 
| queued | Die Prüfung der Autorisierungsanfrage steht noch aus | 
| complete | Die Autorisierungsentscheidung wurde getroffen (auf disposition Genehmigt/Abgelehnt prüfen) | 
| error | Bei der Verarbeitung ist ein Fehler aufgetreten | 
| partial | Teilweise Autorisierung erteilt | 

```
{  
  "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"  
      }  
    }  
  ]  
}
```

## Fehlermeldungen
<a name="inquire-error-responses"></a>

### 400 Bad Request (400 Ungültige Anfrage)
<a name="inquire-400-error"></a>

Wird zurückgegeben, wenn das Anforderungsformat ungültig ist oder die Überprüfung fehlschlägt.

```
{  
    "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 Nicht autorisiert
<a name="inquire-401-error"></a>

Wird zurückgegeben, wenn Anmeldeinformationen fehlen oder ungültig sind.

```
{  
    "resourceType": "OperationOutcome",  
    "issue": [  
        {  
            "severity": "error",  
            "code": "forbidden",  
            "diagnostics": "Invalid authorization header"  
        }  
    ]  
}
```

### 403 Forbidden
<a name="inquire-403-error"></a>

Wird zurückgegeben, wenn der authentifizierte Benutzer nicht berechtigt ist, auf die angeforderte Ressource zuzugreifen.

```
{  
    "resourceType": "OperationOutcome",  
    "issue": [  
        {  
            "severity": "error",  
            "code": "exception",  
            "diagnostics": "Insufficient SMART scope permissions."  
        }  
    ]  
}
```

### 400 Wenn keine gefunden wurde
<a name="inquire-400-none-found"></a>

Wird zurückgegeben, wenn keine Übereinstimmung ClaimResponse für die Anfrage gefunden wurde.

```
{  
  "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)"
  }]
}
```

### 415 Medientyp wird nicht unterstützt
<a name="inquire-415-error"></a>

Wird zurückgegeben, wenn der Content-Type-Header nicht application/fhir\$1json lautet.

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "error",  
    "code": "value",  
    "diagnostics": "Incorrect MIME-type. Update request Content-Type header."  
  }]  
}
```

### 429 Zu viele Anfragen
<a name="inquire-429-error"></a>

Wird zurückgegeben, wenn die Ratenlimits überschritten werden.

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "error",  
    "code": "throttled",  
    "diagnostics": "Rate limit exceeded. Please retry after some time."  
  }]  
}
```

## Regeln für die Validierung
<a name="inquire-validation-rules"></a>

HealthLake führt eine umfassende Validierung Ihrer Anfrage durch:

### Validierung des Pakets
<a name="inquire-bundle-validation"></a>
+ Muss dem Profil des PAS Inquiry Request Bundle entsprechen
+ `Bundle.type`muss sein `"collection"`
+ Muss genau eine Claim-Ressource enthalten
+ Alle Ressourcen, auf die verwiesen wird, müssen im Paket enthalten sein

### Validierung des Antrags
<a name="inquire-claim-validation"></a>
+ Muss dem PAS-Anforderungsprofil entsprechen
+ `Claim.use`muss sein `"preauthorization"`
+ `Claim.status`muss sein `"active"`
+ Erforderliche Felder:`patient`,`insurer`,`provider`, `created`

### Validierung der Ressourcen
<a name="inquire-resource-validation"></a>
+ Alle Ressourcen müssen ihren jeweiligen PAS-Anfrageprofilen entsprechen
+ Erforderliche unterstützende Ressourcen müssen vorhanden sein (Patient, Versichererorganisation, Anbieterorganisation)
+ Querverweise müssen gültig und innerhalb des Pakets lösbar sein

## Leistungsspezifikationen
<a name="inquire-performance-specs"></a>


| Metrik | Spezifikation | 
| --- | --- | 
| Limit für die Anzahl der Ressourcen | 500 Ressourcen pro Paket | 
| Größenbeschränkung für Pakete | Maximal 5 MB | 

## Erforderliche Berechtigungen
<a name="inquire-required-permissions"></a>

Um den `$inquire` Vorgang verwenden zu können, stellen Sie sicher, dass Ihre IAM-Rolle über Folgendes verfügt:
+ `healthlake:InquirePreAuthClaim`- Um den Vorgang aufzurufen

**SMART auf FHIR-Zielfernrohren**  
**Erforderliche Mindestbereiche:**
+ **SMART Version 1:** `user/ClaimResponse.read`
+ **SMART v2**: `user/ClaimResponse.s`

## Wichtige Hinweise zur Implementierung
<a name="inquire-implementation-notes"></a>

### Suchverhalten
<a name="inquire-search-behavior"></a>

Wenn Sie eine Anfrage einreichen, HealthLake sucht nach der ClaimResponse Verwendung von:
+ **Patientenreferenz** aus dem eingegebenen Antrag
+ **Referenz des Versicherers** aus dem eingegebenen Anspruch
+ **Anbieterreferenz** aus dem Eingabeanspruch
+ **Erstellungsdatum** aus dem eingegebenen Claim (als Zeitfilter)

**Mehrere Treffer**: Wenn mehrere ClaimResponses Treffer Ihren Suchkriterien entsprechen, werden alle passenden Ergebnisse HealthLake zurückgegeben. Sie sollten den neuesten `ClaimResponse.created` Zeitstempel verwenden, um den neuesten Status zu ermitteln.

### Aktualisierte Ansprüche
<a name="inquire-updated-claims"></a>

Wenn Sie mehrere Aktualisierungen für dieselbe vorherige Autorisierung eingereicht haben (z. B. Claim v1.1, v1.2, v1.3), ruft der `$inquire` Vorgang anhand der angegebenen Suchkriterien die der **neuesten Version ClaimResponse ** zugeordnete Version ab.

### Schreibgeschützter Vorgang
<a name="inquire-read-only"></a>

Die `$inquire` Operation:
+ **Ruft** den vorhandenen Autorisierungsstatus ab
+ **Gibt** den neuesten zurück ClaimResponse
+ **Ändert** oder aktualisiert keine Ressourcen
+ **Erstellt keine** neuen Ressourcen
+ **Löst keine** neue Autorisierungsverarbeitung aus

## Beispiel für einen Arbeitsablauf
<a name="inquire-workflow-example"></a>

**Typischer Arbeitsablauf für Anfragen zur vorherigen Autorisierung**  


```
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"
```

## Zugehörige -Vorgänge
<a name="inquire-related-operations"></a>
+ `Claim/$submit`- Reichen Sie eine neue vorherige Autorisierungsanfrage ein oder aktualisieren Sie eine bestehende
+ `Patient/$everything`- Rufen Sie umfassende Patientendaten für den Kontext einer vorherigen Autorisierung ab

# Konzeptdetails abrufen mit `$lookup`
<a name="reference-fhir-operations-lookup"></a>

AWS HealthLake unterstützt jetzt den `$lookup` Vorgang für CodeSystem Ressourcen, sodass Sie Details zu einem bestimmten Konzept in einem Codesystem abrufen können, indem Sie identifizierende Informationen wie den zugehörigen Code angeben. Diese Operation ist besonders nützlich, wenn Sie:
+ Rufen Sie detaillierte Informationen zu bestimmten medizinischen Codes ab
+ Überprüfen Sie die Bedeutungen und Eigenschaften von Codes
+ Greifen Sie auf Konzeptdefinitionen und Beziehungen zu
+ Support Sie klinische Entscheidungen mit genauen Terminologiedaten

## Usage
<a name="lookup-usage"></a>

Der `$lookup` Vorgang kann für CodeSystem Ressourcen sowohl mit der GET- als auch mit der POST-Methode aufgerufen werden:

**Unterstützte Vorgänge**  


```
GET [base]/CodeSystem/$lookup?system=http://snomed.info/sct&code=73211009&version=20230901
POST [base]/CodeSystem/$lookup
```

## Unterstützte Parameter
<a name="lookup-parameters"></a>

HealthLake unterstützt eine Teilmenge von FHIR R4-Parametern: `$lookup`


| Parameter | Typ | Erforderlich | Description | 
| --- | --- | --- | --- | 
| code | Code | Ja | Der Konzeptcode, nach dem Sie suchen (z. B. „71620000" in SNOMED CT) | 
| system | uri | Ja | [Die kanonische URL des Codesystems (z. B. "http://snomed.info/sct „)](http://snomed.info/sct) | 
| version | Zeichenfolge | Nein | Spezifische Version des Codesystems | 

## Beispiele
<a name="lookup-examples"></a>

**GET-Anfrage**  


```
GET [base]/CodeSystem/$lookup?system=http://snomed.info/sct&code=71620000&version=2023-09
```

**POST-Anfrage**  


```
POST [base]/CodeSystem/$lookup
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "system",
      "valueUri": "http://snomed.info/sct"
    },
    {
      "name": "code",
      "valueCode": "71620000"
    },
    {
      "name": "version",
      "valueString": "2023-09"
    }
  ]
}
```

**Beispielantwort**  
Die Operation gibt eine Parameter-Ressource zurück, die die Konzeptdetails enthält:

```
{
    "resourceType": "Parameters",
    "parameter": [{
            "name": "name",
            "valueString": "SNOMED CT Fractures"
        },
        {
            "name": "version",
            "valueString": "2023-09"
        },
        {
            "name": "display",
            "valueString": "Fracture of femur"
        },
        {
            "name": "property",
            "part": [{
                    "name": "code",
                    "valueCode": "child"
                },
                {
                    "name": "value",
                    "valueCode": "263225007"
                },
                {
                    "name": "description",
                    "valueString": "Fracture of neck of femur"
                }
            ]
        },
        {
            "name": "property",
            "part": [{
                    "name": "code",
                    "valueCode": "child"
                },
                {
                    "name": "value",
                    "valueCode": "263227004"
                },
                {
                    "name": "description",
                    "valueString": "Fracture of shaft of femur"
                }
            ]
        }
    ]
}
```

## Antwortparameter
<a name="lookup-response-parameters"></a>

Die Antwort enthält, sofern verfügbar, die folgenden Parameter:


| Parameter | Typ | Description | 
| --- | --- | --- | 
| name | Zeichenfolge | Name des Codesystems | 
| version | Zeichenfolge | Version des Codesystems | 
| display | Zeichenfolge | Anzeigename des Konzepts | 
| designation | BackboneElement | Zusätzliche Darstellungen für dieses Konzept. | 
| property | BackboneElement | Zusätzliche Eigenschaften des Konzepts (Definition, Beziehungen usw.) | 

## Behavior
<a name="lookup-behavior"></a>

Die `$lookup` Operation:

1. Validiert die erforderlichen Parameter (`code`und`system`)

1. Sucht innerhalb des angegebenen Codesystems, das im Datenspeicher gespeichert ist, nach dem Konzept

1. Gibt detaillierte Konzeptinformationen zurück, einschließlich Anzeigenamen, Bezeichnungen und Eigenschaften.

1. Unterstützt versionsspezifische Suchvorgänge, wenn der Parameter angegeben wird `version`

1. Funktioniert nur auf Codesystemen, die explizit im Datenspeicher gespeichert sind HealthLake 

## Fehlerbehandlung
<a name="lookup-error-handling"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:
+ 400 Schlechte Anfrage: Ungültiger `$lookup` Vorgang (fehlerhafte Anfrage oder fehlende erforderliche Parameter)
+ 404 Nicht gefunden: Das Codesystem wurde nicht gefunden oder der Code wurde im angegebenen Codesystem nicht gefunden

## Einschränkungen
<a name="lookup-caveats"></a>

In dieser Version wird Folgendes nicht unterstützt:
+ `$lookup`Betrieb durch Aufrufen externer Terminologieserver
+ `$lookup`Vorgang wird vom Datenspeicher CodeSystems verwaltet HealthLake , aber nicht explizit im Datenspeicher gespeichert

Weitere Informationen zur `$lookup` Operationsspezifikation finden Sie in der [FHIR](https://www.hl7.org/fhir/R4/codesystem-operation-lookup.html) R4-Dokumentation. CodeSystem `$lookup`

# `$member-add`Operation für HealthLake
<a name="reference-fhir-operations-member-add"></a>

Die `$member-add` FHIR-Operation fügt einer Gruppenressource, insbesondere einer Mitgliedsattributionsliste, ein Mitglied (Patient) hinzu. Dieser Vorgang ist Teil des Leitfadens zur Implementierung der DaVinci Mitgliederzuweisung und unterstützt den Abgleichprozess bei der Verwaltung von Mitgliederzuordnungen.

## Endpunkt des Vorgangs
<a name="member-add-endpoint"></a>

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

## Parameters
<a name="member-add-parameters"></a>

Der Vorgang akzeptiert eine FHIR-Parameter-Ressource mit den folgenden Parameterkombinationen:

### Parameter-Optionen
<a name="member-add-parameter-options"></a>

Sie können eine der folgenden Parameterkombinationen verwenden:

Option 1: Mitglieds-ID \$1 Anbieter-NPI  
`memberId` \$1 `providerNpi`  
`memberId` \$1 `providerNpi` \$1 `attributionPeriod`

Option 2: Patientenreferenz \$1 Anbieterreferenz  
`patientReference` \$1 `providerReference`  
`patientReference` \$1 `providerReference` \$1 `attributionPeriod`

### Einzelheiten zu den Parametern
<a name="member-add-parameter-details"></a>

Mitglieds-ID (optional)  
Die ID des Mitglieds, das der Gruppe hinzugefügt werden soll.  
Typ: Bezeichner  
System: Patientenidentifikationssystem  

```
{
  "name": "memberId",
  "valueIdentifier": {
    "system": "http://example.org/patient-id",
    "value": "patient-new"
  }
}
```

Anbieter NPI (optional)  
Der National Provider Identifier (NPI) des zugewiesenen Anbieters.  
Typ: Identifier  
System: http://terminology.hl7. org/CodeSystem/NPI  

```
{
  "name": "providerNpi",
  "valueIdentifier": {
    "system": "http://terminology.hl7.org/CodeSystem/NPI",
    "value": "1234567890"
  }
}
```

Patientenreferenz (optional)  
Direkter Verweis auf die Patientenressource, die hinzugefügt werden soll.  
Typ: Referenz  

```
{
  "name": "patientReference",
  "valueReference": {
    "reference": "Patient/patient-123"
  }
}
```

Anbieterreferenz (optional)  
Direkter Verweis auf die Provider-Ressource.  
Typ: Referenz  

```
{
  "name": "providerReference",
  "valueReference": {
    "reference": "Practitioner/provider-456"
  }
}
```

Zeitraum der Zuordnung (optional)  
Der Zeitraum, für den der Patient dem Arzt zugeordnet ist.  
Typ: Zeitraum  

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

## Beispiele anfordern
<a name="member-add-examples"></a>

### Mitglieds-ID und Anbieter-NPI verwenden
<a name="member-add-example-id-npi"></a>

```
{
  "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"
      }
    }
  ]
}
```

### Verwendung von Patienten- und Anbieterreferenzen
<a name="member-add-example-references"></a>

```
{
  "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"
      }
    }
  ]
}
```

## Reaktion-Format
<a name="member-add-response"></a>

### Erfolgreiche Antwort auf den Zusatz
<a name="member-add-success-response"></a>

```
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."
      }
    }
  ]
}
```

### Fehlermeldungen
<a name="member-add-error-responses"></a>

Ungültige Anforderungssyntax  
HTTP-Status: 400 Ungültige Anfrage  

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

Ressource nicht gefunden  
HTTP-Status: 404 nicht gefunden  

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

Versionskonflikt  
HTTP-Status: 409-Konflikt  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "conflict",
      "details": {
        "text": "Resource version conflict detected"
      }
    }
  ]
}
```

Ungültiger Zuordnungsstatus  
HTTP-Status: 422 Unverarbeitbare Entität  

```
{
  "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'."
      }
    }
  ]
}
```

## Geschäftsregeln
<a name="member-add-business-rules"></a>

Überprüfung des Zuordnungsstatus  
Der Vorgang kann nur ausgeführt werden, wenn der Zuordnungsstatus der Gruppe wie folgt lautet:  
+ `draft`
+ `open`
Operationen sind nicht zulässig, wenn der Status lautet`final`.

Verhinderung doppelter Mitglieder  
Das System verhindert das Hinzufügen doppelter Mitglieder auf der Grundlage der einzigartigen Kombination von:  
+ Mitglieds-ID
+ Kennung des Zahlers
+ Kennung des Versicherungsschutzes

Validierung des Deckungszeitraums  
Wenn eine bereitgestellt `attributionPeriod` wird, muss sie innerhalb der Grenzen des Versicherungszeitraums des Mitglieds liegen. Das System führt folgende Aktionen aus:  
+ Suchen Sie nach der Ressource Versicherungsschutz des Mitglieds
+ Verwenden Sie das neueste Coverage (höchste versionId), falls mehrere existieren
+ Stellen Sie sicher, dass der Zuweisungszeitraum den Deckungszeitraum nicht überschreitet

Validierung von Referenzen  
Wenn sowohl die ID als auch die Referenz für dieselbe Ressource (Patient oder Anbieter) angegeben werden, überprüft das System, ob sie derselben Ressource entsprechen.  
Wenn sowohl die Felder ID als auch reference.identifier für dieselbe Ressource (Patient oder Anbieter) angegeben werden, wird ein Fehler ausgegeben.

## Authentifizierung und Autorisierung
<a name="member-add-auth"></a>

Für den Vorgang ist eine SMART-On-FHIR-Autorisierung erforderlich für:
+ Leseberechtigungen — Um die Ressourcen von Patienten, Anbietern und Gruppen zu validieren
+ Suchberechtigungen — Um Ressourcen anhand ihrer ID zu finden
+ Berechtigungen aktualisieren — Um die Gruppenressource zu ändern

## Betriebsverhalten
<a name="member-add-behavior"></a>

Aktualisierungen der Ressourcen  
+ Aktualisiert die Versions-ID der Gruppenressource
+ Erstellt einen Verlaufseintrag mit dem ursprünglichen Ressourcenstatus vor dem Vorgang
+ Fügt dem Group.Member-Array Mitgliedsinformationen hinzu mit:
  + Patientenreferenz in entity.reference
  + Zuordnungszeitraum im Zeitraum
  + Reichweite und Anbieterinformationen in Erweiterungsfeldern

Schritte zur Validierung  
+ Parametervalidierung — Stellt gültige Parameterkombinationen sicher
+ Vorhandensein von Ressourcen — Überprüft, ob Patienten-, Anbieter- und Gruppenressourcen vorhanden sind
+ Zuordnungsstatus — Bestätigt, dass der Gruppenstatus Änderungen zulässt
+ Doppelte Prüfung — verhindert das Hinzufügen vorhandener Mitglieder
+ Deckungsüberprüfung — Stellt sicher, dass der Zuweisungszeitraum innerhalb der Deckungsgrenzen liegt

## Einschränkungen
<a name="member-add-limitations"></a>
+ Alle Ressourcen, auf die verwiesen wird, müssen sich im selben Datenspeicher befinden
+ Der Vorgang funktioniert nur mit Ressourcen der Member Attribution List Group
+ Die Zuordnungszeiträume müssen innerhalb der Deckungsgrenzen liegen
+ Gruppen mit dem Status „Endgültig“ können nicht geändert werden

# `$member-match`Operation für HealthLake
<a name="reference-fhir-operations-member-match"></a>

AWS HealthLake unterstützt jetzt die `$member-match` Operation für Patientenressourcen und ermöglicht es Organisationen im Gesundheitswesen, anhand demografischer Daten und Versicherungsdaten die eindeutige Kennung eines Mitglieds in verschiedenen Gesundheitssystemen zu ermitteln. Dieser Vorgang ist unerlässlich, um die CMS-Konformität zu erreichen und den sicheren payer-to-payer Datenaustausch zu ermöglichen und gleichzeitig die Privatsphäre der Patienten zu wahren.

Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Ermöglichen Sie den sicheren Austausch von Gesundheitsdaten zwischen Organisationen
+ Sorgen Sie für die Kontinuität der Patientenversorgung über verschiedene Systeme hinweg
+ Support der CMS-Compliance-Anforderungen
+ Erleichtern Sie die genaue Identifizierung von Mitgliedern in allen Gesundheitsnetzwerken

## Usage
<a name="member-match-usage"></a>

Der `$member-match` Vorgang kann mithilfe der POST-Methode für Patientenressourcen aufgerufen werden:

```
POST [base]/Patient/$member-match
```

## Unterstützte Parameter
<a name="member-match-parameters"></a>

HealthLake unterstützt die folgenden FHIR-Parameter`$member-match`:


| Parameter | Typ | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | --- | 
| MemberPatient | Patient | Ja | — | Patientenressource mit demografischen Informationen für das zuzuordnende Mitglied | 
| CoverageToMatch | Abdeckung | Ja | — | Informationsquelle, die für den Abgleich mit vorhandenen Datensätzen verwendet wird | 
| CoverageToLink | Abdeckung | Nein | — | Coverage-Ressource, die während des Abgleichs verknüpft werden soll | 
| Zustimmung | Zustimmung | Nein | — | Zustimmungsressource für Autorisierungszwecke | 

## Beispiele
<a name="member-match-examples"></a>

### POST-Anfrage mit Parametern
<a name="member-match-request-example"></a>

```
POST [base]/Patient/$member-match
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "MemberPatient",
      "resource": {
        "resourceType": "Patient",
        "name": [
          {
            "family": "Jones",
            "given": ["Sarah"]
          }
        ],
        "gender": "female",
        "birthDate": "1985-05-15"
      }
    },
    {
      "name": "CoverageToMatch",
      "resource": {
        "resourceType": "Coverage",
        "status": "active",
        "beneficiary": {
          "reference": "Patient/1"
        },
        "relationship": {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/subscriber-relationship",
              "code": "self",
              "display": "Self"
            }
          ]
        },
        "payor": [
          {
            "reference": "Organization/payer456"
          }
        ]
      }
    },
    {
      "name": "Consent",
      "resource": {
        "resourceType": "Consent",
        "status": "active",
        "scope": {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/consentscope",
              "code": "patient-privacy"
            }
          ]
        },
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
                "code": "IDSCL"
              }
            ]
          }
        ],
        "patient": {
          "reference": "Patient/1"
        },
        "performer": [
          {
            "reference": "Patient/patient123"
          }
        ],
        "sourceReference": {
          "reference": "Document/someconsent"
        },
        "policy": [
          {
            "uri": "http://hl7.org/fhir/us/davinci-hrex/StructureDefinition-hrex-consent.html#regular"
          }
        ]
      }
    }
  ]
}
```

### Beispielantwort
<a name="member-match-response-example"></a>

Die Operation gibt eine Parameter-Ressource zurück, die die passenden Ergebnisse enthält:

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "MemberIdentifier",
      "valueIdentifier": {
        "system": "http://hospital.org/medical-record-number",
        "value": "MRN-123456"
      }
    },
    {
      "name": "MemberId",
      "valueReference": {
        "reference": "Patient/patient123"
      }
    },
    {
      "name": "matchAlgorithm",
      "valueString": "DEMOGRAPHIC_MATCH"
    },
    {
      "name": "matchDetails",
      "valueString": "Demographic match: DOB + Name"
    },
    {
      "name": "matchedFields",
      "valueString": "given,birthdate,gender,family"
    }
  ]
}
```

## Antwortparameter
<a name="member-match-response-parameters"></a>

Die Antwort enthält die folgenden Parameter, wenn eine Übereinstimmung gefunden wird:


| Parameter | Typ | Description | 
| --- | --- | --- | 
| MemberIdentifier | Kennung | Die eindeutige Kennung für das übereinstimmende Mitglied | 
| MemberId | Referenz | Verweis auf die Patientenressource | 
| Match-Algorithmus | Zeichenfolge | Typ des verwendeten Match-Algorithmus (EXACT\$1MATCH, STRONG\$1MATCH oder DEMOGRAPHIC\$1MATCH) | 
| Einzelheiten zum Spiel | Zeichenfolge | Detaillierte Informationen zum Matching-Prozess | 
| Übereinstimmende Felder | Zeichenfolge | Liste der spezifischen Felder, die erfolgreich abgeglichen wurden | 

## Passende Algorithmen
<a name="member-match-algorithms"></a>

Die `$member-match` API verwendet einen mehrstufigen Matching-Ansatz, um eine genaue Identifizierung der Mitglieder zu gewährleisten:

EXACT\$1MATCH  
Verwendet die Patienten-ID in Kombination mit dem Versicherungsschutz SubscriberId  
Bietet das höchste Konfidenzniveau für die Zuordnung von Mitgliedern

STRONG\$1MATCH  
Verwendet eine Patienten-ID mit Informationen zur Mindestabdeckung  
Bietet ein hohes Maß an Sicherheit, wenn die genauen Übereinstimmungskriterien nicht erfüllt werden

DEMOGRAPHIC\$1MATCH  
Verlässt sich auf grundlegende demografische Informationen  
Wird verwendet, wenn ein identifikationsbasierter Abgleich nicht möglich ist

## Behavior
<a name="member-match-behavior"></a>

Die `$member-match` Operation:
+ Akzeptiert demografische Daten des Patienten, Angaben zum Versicherungsschutz und optionale Einwilligungsinformationen als Eingabe
+ Gibt eine eindeutige Mitgliedskennung zurück, die für nachfolgende Interaktionen verwendet werden kann
+ Implementiert einen mehrstufigen Abgleich (exakt, aussagekräftig, demografisch), um eine genaue Identifizierung der Mitglieder in verschiedenen Gesundheitssystemen zu gewährleisten
+ Speichert alle bereitgestellten Einwilligungsinformationen für future Autorisierungszwecke
+ Unterstützt den sicheren payer-to-payer Datenaustausch unter Wahrung der Privatsphäre der Patienten
+ Entspricht den CMS-Anforderungen für den Austausch von Gesundheitsdaten

## Autorisierung
<a name="member-match-authorization"></a>

Die API verwendet SMART auf dem FHIR-Autorisierungsprotokoll mit den folgenden erforderlichen Bereichen:
+ `system/Patient.read`
+ `system/Coverage.read`
+ `system/Organization.read`(bedingt)
+ `system/Practitioner.read`(bedingt)
+ `system/PractitionerRole.read`(bedingt)
+ `system/Consent.write`(bedingt)

## Fehlerbehandlung
<a name="member-match-error-handling"></a>

Der Vorgang behandelt die folgenden Fehlerbedingungen:
+ `400 Bad Request`: Ungültiger `$member-match` Vorgang (fehlerhafte Anfrage oder fehlende erforderliche Parameter)
+ `422 Unprocessable Entity`: Keine übereinstimmenden oder mehrere Treffer gefunden

# `$member-remove`Operation für HealthLake
<a name="reference-fhir-operations-member-remove"></a>

Mit `$member-remove` diesem Vorgang können Sie Mitglieder aus einer FHIR-Mitgliederzuordnungsliste (Gruppenressource) in entfernen. AWS HealthLake Dieser Vorgang ist Teil des Leitfadens zur Implementierung der DaVinci Mitgliederzuweisung und unterstützt den Abgleichprozess bei der Verwaltung von Mitgliederzuweisungen.

## Voraussetzungen
<a name="member-remove-prerequisites"></a>
+ AWS HealthLake FHIR-Datenspeicher
+ Entsprechende IAM-Berechtigungen für Operationen HealthLake 
+ Zuordnungsliste für Mitglieder (Gruppenressource) im Status Entwurf oder offen

## Einzelheiten des Vorgangs
<a name="member-remove-endpoint"></a>

Endpoint  
`POST /Group/{id}/$member-remove`

Inhaltstyp  
`application/fhir+json`

## Parameters
<a name="member-remove-parameters"></a>

Der Vorgang akzeptiert eine FHIR-Parameter-Ressource mit den folgenden optionalen Parametern:


| Parameter | Kardinalität | Typ | Description | 
| --- | --- | --- | --- | 
| memberId | 0.. 1 | Kennung | Geschäfts-ID des zu entfernenden Mitglieds | 
| Anbieter/NPI | 0.. 1 | Kennung | NPI des zugewiesenen Anbieters | 
| Referenz des Patienten | 0.. 1 | Referenz | Direkter Verweis auf die Patientenressource | 
| Referenz des Anbieters | 0.. 1 | Referenz | Direkter Verweis auf die Anbieter-Ressource (Praktiker oder Organisation) PractitionerRole | 
| Referenz zum Geltungsbereich | 0.. 1 | Referenz | Verweis auf die Coverage-Ressource | 

### Unterstützte Parameterkombinationen
<a name="member-remove-parameter-combinations"></a>

Die folgenden Parameterkombinationen werden unterstützt:
+ `memberId`nur — Entfernt alle Zuweisungen für das angegebene Mitglied
+ `memberId`\$1 `providerNpi` — Entfernt Zuweisungen für die spezifische Kombination aus Mitglied und Anbieter
+ `patientReference`nur — Entfernt alle Zuordnungen für den angegebenen Patienten
+ `patientReference`\$1 `providerReference` — Entfernt Zuordnungen für die spezifische Kombination aus Patient und Anbieter
+ `patientReference`\$1 `providerReference` \$1 `coverageReference` — Entfernt die spezifische Zuordnung auf der Grundlage von Patient, Anbieter und Versicherungsschutz

## Anforderungsbeispiel
<a name="member-remove-examples"></a>

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "patientReference",
      "valueReference": {
        "reference": "Patient/12345"
      }
    },
    {
      "name": "providerReference",
      "valueReference": {
        "reference": "Practitioner/67890"
      }
    }
  ]
}
```

## Antwort
<a name="member-remove-response"></a>

### Erfolgreiche Antwort
<a name="member-remove-success-response"></a>

```
{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "result",
      "valueBoolean": true
    },
    {
      "name": "effectiveDate",
      "valueDate": "2024-06-30"
    },
    {
      "name": "status",
      "valueCode": "inactive"
    },
    {
      "name": "message",
      "valueString": "Member successfully removed from attribution list"
    }
  ]
}
```

## Behavior
<a name="member-remove-behavior"></a>

Anforderungen an den Status  
Die Operation funktioniert nur bei Attributionslisten mit Status oder `draft` `open`  
Listen mit `final` Status lehnen den Vorgang mit einem 422-Fehler ab

Verfahren zur Entfernung von Mitgliedern  
*Entwürfe von Statuslisten*: Mitglieder werden als inaktiv markiert (`inactive: true`) und ihre `changeType` Erweiterung wird aktualisiert auf `changed`  
*Statuslisten öffnen*: Ähnliches Verhalten wie beim Entwurfsstatus  
*Endgültige Statuslisten*: Der Vorgang wurde abgelehnt

Validierung  
Verweise werden überprüft, um sicherzustellen, dass sie im HealthLake Datenspeicher vorhanden sind  
Wenn sowohl der Bezeichner als auch der Verweis für denselben Ressourcentyp angegeben werden, müssen sie derselben Ressource entsprechen  
Parameterkombinationen werden gemäß den unterstützten Mustern validiert

## Fehlerbehandlung
<a name="member-remove-error-handling"></a>

### Häufige Fehlerantworten
<a name="member-remove-common-errors"></a>

Ressource nicht gefunden (404)  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "not-found",
      "details": {
        "text": "Patient with identifier 'http://example.org/fhir/identifiers|99999' not found in system"
      },
      "diagnostics": "Cannot remove member from attribution list. Verify patient identifier and try again.",
      "expression": ["memberId"]
    }
  ]
}
```

Endgültiger Status der Attributionsliste (422)  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "business-rule",
      "details": {
        "coding": [
          {
            "system": "http://hl7.org/fhir/us/davinci-atr/CodeSystem/atr-error-codes",
            "code": "list-final",
            "display": "Attribution list is final and cannot be modified"
          }
        ]
      },
      "diagnostics": "Cannot modify attribution list with status 'final'. List modifications are not permitted after finalization.",
      "expression": ["Group.status"]
    }
  ]
}
```

Ungültiger Vorgang (400)  
Wird zurückgegeben, wenn Parameterkombinationen ungültig oder falsch formatiert sind.

Es wurden mehrere Treffer gefunden (412)  
Wird zurückgegeben, wenn die angegebenen Parameter mit mehreren Mitgliedern in der Attributionsliste übereinstimmen.  

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "processing",
      "diagnostics": "Multiple members found matching the criteria"
    }
  ]
}
```

## Bewährte Methoden
<a name="member-remove-best-practices"></a>
+ *Spezifische Parameter verwenden*: Verwenden Sie nach Möglichkeit die spezifischste Parameterkombination, um unbeabsichtigte Löschungen zu vermeiden
+ *Status der Liste überprüfen: Überprüfen Sie den Status* der Zuordnungsliste, bevor Sie versuchen, Dateien zu entfernen
+ Gehen Sie *ordnungsgemäß mit Fehlern um*: Implementieren Sie eine angemessene Fehlerbehandlung für alle möglichen Fehlerbedingungen
+ *Referenzen validieren*: Stellen Sie sicher, dass alle referenzierten Ressourcen vorhanden sind, bevor Sie die Anfrage stellen

# Ressourcen für die Patientenabteilung entfernen mit `$purge`
<a name="reference-fhir-operations-purge"></a>

AWS HealthLake unterstützt den `$purge` Vorgang und ermöglicht das dauerhafte Löschen aller Ressourcen in der Abteilung eines Patienten. Diese Operation ist besonders nützlich, wenn Sie:
+ Entfernen Sie alle mit einem Patienten verknüpften Daten
+ Erfüllen Sie Anfragen zur Entfernung von Patientendaten
+ Verwalten Sie den Lebenszyklus von Patientendaten
+ Führen Sie eine umfassende Bereinigung der Patientenakten durch

## Usage
<a name="purge-usage"></a>

Der `$purge` Vorgang kann in den Patientenressourcen aufgerufen werden:

```
POST [base]/Patient/[ID]/$purge?deleteAuditEvent=true
```

## Parameters
<a name="purge-parameters"></a>


| Parameter | Typ | Erforderlich | Standard | Description | 
| --- | --- | --- | --- | --- | 
| deleteAuditEvent | Boolean | Nein | false | Wenn der Wert wahr ist, werden die zugehörigen Prüfereignisse gelöscht | 
| \$1since | Zeichenfolge | Nein | Erstellungszeit des Datenspeichers | Wenn diese Option eingegeben wird, wird der Startgrenzwert für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt. Kann nicht mit Start oder Ende verwendet werden | 
| start | Zeichenfolge | Nein | Erstellungszeit des Datenspeichers | Wenn diese Option eingegeben wird, wird der Annahmeschluss für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt. Kann mit Ende verwendet werden | 
| end | Zeichenfolge | Nein | Zeit für die Einreichung des Job | Wenn diese Option eingegeben wird, wird der letzte Annahmeschluss für die Suche nach Ressourcen auf der Grundlage ihrer letzten Änderung ausgewählt | 

## Beispiele
<a name="purge-examples"></a>

**Beispielanforderung**  


```
POST [base]/Patient/example-patient/$purge?deleteAuditEvent=true
```

**Beispielantwort**  


```
{
  "resourceType": "OperationOutcome",
  "id": "purge-job",
  "issue": [
    {
      "severity": "information",
      "code": "informational",
      "diagnostics": "Purge job started successfully. Job ID: 12345678-1234-1234-1234-123456789012"
    }
  ]
}
```

## Aufgabenstatus
<a name="purge-job-status"></a>

Um den Status eines Löschauftrags zu überprüfen:

```
GET [base]/$purge/[jobId]
```

Der Vorgang gibt Informationen zum Auftragsstatus zurück:

```
{
      "datastoreId": "36622996b1fcecb7e12ee2ee085308d3",
      "jobId": "3dd1c7a5b6c0ef8c110f566eb87e2ef9",
      "status": "COMPLETED",
      "submittedTime": "2025-10-31T18:43:21.822Z"
    }
```

## Behavior
<a name="purge-behavior"></a>

Die `$purge` Operation:

1. Wird asynchron verarbeitet, um mehrere Ressourcen zu verwalten

1. Sorgt für die Datenintegrität bei ACID-Transaktionen

1. Ermöglicht die Nachverfolgung des Auftragsstatus anhand der Anzahl gelöschter Ressourcen

1. Entfernt dauerhaft alle Ressourcen im Patientenraum

1. Beinhaltet eine umfassende Auditprotokollierung der Löschaktivitäten

1. Unterstützt das selektive Löschen von Prüfereignissen

## Protokollierung von Prüfungen
<a name="purge-audit-logging"></a>

Der `$purge` Vorgang wird als Start FHIRBulk DeleteJob und Beschreibung protokolliert und FHIRBulk DeleteJob enthält detaillierte Informationen zum Vorgang.

## Einschränkungen
<a name="purge-limitations"></a>
+ Gelöschte Ressourcen werden nicht in den Suchantworten angezeigt
+ Auf Ressourcen, die gelöscht werden, kann während der Verarbeitung möglicherweise vorübergehend nicht zugegriffen werden
+ Alle Ressourcen in der Patientenabteilung werden dauerhaft entfernt

# `$questionnaire-package`FHIR-Operation für HealthLake
<a name="reference-fhir-operations-questionnaire-package"></a>

Bei diesem `$questionnaire-package` Vorgang wird ein umfangreiches Paket abgerufen, das einen FHIR-Fragebogen und all seine Abhängigkeiten enthält, die für das Rendern und Verarbeiten des Fragebogens erforderlich sind. Bei diesem Vorgang wird der [Implementierungsleitfaden für Da Vinci Documentation Templates and Rules (DTR)](https://hl7.org/fhir/us/davinci-dtr/OperationDefinition-questionnaire-package.html) implementiert, der ein dynamisches Rendern von Formularen für Dokumentationsanforderungen in Arbeitsabläufen im Gesundheitswesen ermöglicht.

## Funktionsweise
<a name="questionnaire-package-how-it-works"></a>
+ **Anfrage**: Sie senden Parameter, die die benötigten Fragebögen sowie den Umfang und den Kontext der Bestellung angeben
+ **Abrufen**: HealthLake sammelt den Fragebogen und alle Abhängigkeiten (ValueSets, CQL-Bibliotheken usw.)
+ **Package**: Alle Ressourcen sind in einem standardisierten Format gebündelt
+ **Antworten**: Sie erhalten ein Komplettpaket, das zum Rendern und zur Datenerfassung bereit ist

**Anwendungsfälle**  

+ **Unterlagen zur vorherigen Autorisierung**: Sammeln Sie die erforderlichen klinischen Informationen für vorherige Autorisierungsanfragen
+ **Deckungsanforderungen**: Sammeln Sie die Unterlagen, die zur Erfüllung der Deckungsanforderungen des Kostenträgers erforderlich sind
+ **Klinischer Data Exchange**: Strukturierung klinischer Daten für die Einreichung an Kostenträger
+ **Dynamische Formulare**: Rendern Sie Fragebögen mit vorab ausgefüllten Patientendaten und bedingter Logik

## API-Endpunkt
<a name="questionnaire-package-api-endpoint"></a>

```
POST /datastore/{datastoreId}/r4/Questionnaire/$questionnaire-package  
Content-Type: application/fhir+json
```

## Anforderungsparameter
<a name="questionnaire-package-request-parameters"></a>

### Eingabeparameter
<a name="questionnaire-package-input-parameters"></a>

Der Anfragetext muss eine FHIR-Parameter-Ressource mit den folgenden Parametern enthalten:


| Parameter | Typ | Kardinalität | Description | 
| --- | --- | --- | --- | 
| coverage | Abdeckung | 1.. \$1 (Erforderlich) | Ressource (n) zur Bestimmung des Mitglieds und des Versicherungsschutzes für die Dokumentation | 
| questionnaire | kanonisch | 0.. \$1 | Kanonische URL (s) für bestimmte Fragebögen, die zurückgegeben werden sollen (kann Version enthalten) | 
| order | Ressource | 0.. \$1 | Ordnen Sie Ressourcen (DeviceRequest, ServiceRequest MedicationRequest, Begegnung, Termin) an, um den Kontext festzulegen | 
| changedSince | dateTime | 0.1 | Falls vorhanden, werden nur Ressourcen zurückgegeben, die nach diesem Zeitstempel geändert wurden | 

### Regeln für die Parametervalidierung
<a name="questionnaire-package-parameter-validation"></a>

**Mindestens EINE der folgenden Angaben muss angegeben werden** (zusätzlich zu den erforderlichen Angaben`coverage`):
+ Eine oder mehrere `questionnaire` kanonische URLs
+ Eine oder mehrere Ressourcen `order`

**Gültige Anforderungskombinationen:**  

+ `coverage` \$1 `questionnaire`
+ `coverage` \$1 `order`
+ `coverage` \$1 `questionnaire` \$1 `order`

## Beispielanforderung
<a name="questionnaire-package-example-request"></a>

```
POST /datastore/example-datastore/r4/Questionnaire/$questionnaire-package  
Content-Type: application/fhir+json  
Authorization: Bearer <your-token>  
  
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "coverage",  
      "resource": {  
        "resourceType": "Coverage",  
        "id": "example-coverage",  
        "status": "active",  
        "beneficiary": {  
          "reference": "Patient/example-patient"  
        },  
        "payor": [{  
          "reference": "Organization/example-payer"  
        }],  
        "class": [{  
          "type": {  
            "coding": [{  
              "system": "http://terminology.hl7.org/CodeSystem/coverage-class",  
              "code": "group"  
            }]  
          },  
          "value": "12345"  
        }]  
      }  
    },  
    {  
      "name": "questionnaire",  
      "valueCanonical": "http://example.org/fhir/Questionnaire/home-oxygen-therapy|2.0"  
    },  
    {  
      "name": "order",  
      "resource": {  
        "resourceType": "ServiceRequest",  
        "id": "example-service-request",  
        "status": "active",  
        "intent": "order",  
        "code": {  
          "coding": [{  
            "system": "http://www.ama-assn.org/go/cpt",  
            "code": "94660",  
            "display": "Continuous positive airway pressure ventilation (CPAP)"  
          }]  
        },  
        "subject": {  
          "reference": "Patient/example-patient"  
        }  
      }  
    },  
    {  
      "name": "changedSince",  
      "valueDateTime": "2024-01-01T00:00:00Z"  
    }  
  ]  
}
```

## Reaktionsformat
<a name="questionnaire-package-response-format"></a>

### Erfolgreiche Antwort (200 OK)
<a name="questionnaire-package-success-response"></a>

Die Operation gibt eine FHIR-Parameter-Ressource zurück, die ein oder mehrere **Paketpakete** enthält. Jedes Package beinhaltet:


| Art des Eintrags | Kardinalität | Description | 
| --- | --- | --- | 
| Fragebogen | 1 | Der auszufüllende Fragebogen | 
| QuestionnaireResponse | 0.. 1 | Vorab ausgefüllte oder teilweise ausgefüllte Antwort (falls zutreffend) | 
| Bibliothek | 0.. \$1 | CQL-Bibliotheken mit Logik vor der Befüllung und bedingter Logik | 
| ValueSet | 0.. \$1 | Erweitert ValueSets (für Antwortoptionen mit <40 Erweiterungen) | 

**Example Beispielantwort**  

```
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "PackageBundle",  
      "resource": {  
        "resourceType": "Bundle",  
        "id": "questionnaire-package-example",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-dtr/StructureDefinition/DTR-QPackageBundle"]  
        },  
        "type": "collection",  
        "timestamp": "2024-03-15T10:30:00Z",  
        "entry": [  
          {  
            "fullUrl": "http://example.org/fhir/Questionnaire/home-oxygen-therapy",  
            "resource": {  
              "resourceType": "Questionnaire",  
              "id": "home-oxygen-therapy",  
              "url": "http://example.org/fhir/Questionnaire/home-oxygen-therapy",  
              "version": "2.0",  
              "status": "active",  
              "title": "Home Oxygen Therapy Documentation",  
              "item": [  
                {  
                  "linkId": "1",  
                  "text": "Patient diagnosis",  
                  "type": "choice",  
                  "answerValueSet": "http://example.org/fhir/ValueSet/oxygen-diagnoses"  
                }  
              ]  
            }  
          },  
          {  
            "fullUrl": "http://example.org/fhir/Library/oxygen-prepopulation",  
            "resource": {  
              "resourceType": "Library",  
              "id": "oxygen-prepopulation",  
              "url": "http://example.org/fhir/Library/oxygen-prepopulation",  
              "version": "1.0",  
              "type": {  
                "coding": [{  
                  "system": "http://terminology.hl7.org/CodeSystem/library-type",  
                  "code": "logic-library"  
                }]  
              },  
              "content": [{  
                "contentType": "text/cql",  
                "data": "bGlicmFyeSBPeHlnZW5QcmVwb3B1bGF0aW9u..."  
              }]  
            }  
          },  
          {  
            "fullUrl": "http://example.org/fhir/ValueSet/oxygen-diagnoses",  
            "resource": {  
              "resourceType": "ValueSet",  
              "id": "oxygen-diagnoses",  
              "url": "http://example.org/fhir/ValueSet/oxygen-diagnoses",  
              "status": "active",  
              "expansion": {  
                "timestamp": "2024-03-15T10:30:00Z",  
                "contains": [  
                  {  
                    "system": "http://hl7.org/fhir/sid/icd-10",  
                    "code": "J44.0",  
                    "display": "COPD with acute lower respiratory infection"  
                  },  
                  {  
                    "system": "http://hl7.org/fhir/sid/icd-10",  
                    "code": "J96.01",  
                    "display": "Acute respiratory failure with hypoxia"  
                  }  
                ]  
              }  
            }  
          },  
          {  
            "fullUrl": "http://example.org/fhir/QuestionnaireResponse/example-prepopulated",  
            "resource": {  
              "resourceType": "QuestionnaireResponse",  
              "id": "example-prepopulated",  
              "questionnaire": "http://example.org/fhir/Questionnaire/home-oxygen-therapy|2.0",  
              "status": "in-progress",  
              "subject": {  
                "reference": "Patient/example-patient"  
              },  
              "basedOn": [{  
                "reference": "ServiceRequest/example-service-request"  
              }],  
              "item": [  
                {  
                  "linkId": "1",  
                  "text": "Patient diagnosis",  
                  "answer": [{  
                    "valueCoding": {  
                      "system": "http://hl7.org/fhir/sid/icd-10",  
                      "code": "J44.0",  
                      "display": "COPD with acute lower respiratory infection"  
                    }  
                  }]  
                }  
              ]  
            }  
          }  
        ]  
      }  
    },  
    {  
      "name": "Outcome",  
      "resource": {  
        "resourceType": "OperationOutcome",  
        "issue": [{  
          "severity": "information",  
          "code": "informational",  
          "details": {  
            "text": "Successfully retrieved questionnaire package"  
          }  
        }]  
      }  
    }  
  ]  
}
```

## Arbeitsablauf bei der Bedienung
<a name="questionnaire-package-operation-workflow"></a>

**Wie wird Ihre Anfrage HealthLake bearbeitet**  
 HealthLake Führt bei `$questionnaire-package` Ihrem Anruf die folgenden Schritte aus:

1. **Patient und Kostenträger identifizieren**: Extrahiert den Patienten und die Versicherungsorganisation aus Ihrem `coverage` Parameter.

1. **Finden Sie den richtigen Fragebogen**:
   + **Mit `questionnaire`** **Parameter**: Verwendet die von Ihnen angegebene kanonische URL
   + **Mit `order`** **Parameter: Stimmt** mit dem Bestellcode (CPT/HCPCS/LOINC) und dem Zahler überein, um den passenden Fragebogen zu finden

1. **Abhängigkeiten erfassen**: Ruft automatisch alles ab, was zum Rendern des Fragebogens benötigt wird:
   + **CQL-Bibliotheken** — Logik für Fragen vor der Eingabe und für bedingte Fragen
   + **ValueSets**- Antwortoptionen (werden automatisch erweitert, wenn weniger als 40 Optionen verfügbar sind)
   + **QuestionnaireResponse**- Alle vorhandenen Antworten, die gerade bearbeitet oder abgeschlossen sind

1. **Alles zusammen verpacken**:
   + Bündelt alle Ressourcen (jede Ressource ist nur einmal enthalten)
   + Filtert nach `changedSince` Zeitstempel, falls angegeben
   + Fügt Warnungen hinzu`Outcome`, wenn Ressourcen fehlen

**Ergebnis**: Ein vollständiges, eigenständiges Paket, das zum Rendern bereit ist.

## Fehlermeldungen
<a name="questionnaire-package-error-responses"></a>

### 400 Bad Request (400 Ungültige Anfrage)
<a name="questionnaire-package-400-error"></a>

Wird zurückgegeben, wenn die Überprüfung der Anfrage fehlschlägt.

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "error",  
    "code": "required",  
    "details": {  
      "text": "At least one of 'questionnaire' or 'order' must be provided along with 'coverage'"  
    }  
  }]  
}
```

### 424 Fehlgeschlagene Abhängigkeit
<a name="questionnaire-package-424-error"></a>

Wird zurückgegeben, wenn eine abhängige Ressource nicht abgerufen werden kann.

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "warning",  
    "code": "not-found",  
    "details": {  
      "text": "Referenced Library 'http://example.org/fhir/Library/missing-library' could not be retrieved"  
    }  
  }]  
}
```

### 401 Nicht autorisiert
<a name="questionnaire-package-401-error"></a>

Wird zurückgegeben, wenn Anmeldeinformationen fehlen oder ungültig sind.

### 403 Forbidden
<a name="questionnaire-package-403-error"></a>

Wird zurückgegeben, wenn der authentifizierte Benutzer nicht berechtigt ist, auf die angeforderten Ressourcen zuzugreifen.

### 406 Nicht akzeptabel
<a name="questionnaire-package-406-error"></a>

Wird zurückgegeben, wenn der angeforderte Inhaltstyp nicht bereitgestellt werden kann.

### 409 Conflict (409 Konflikt)
<a name="questionnaire-package-409-error"></a>

Wird zurückgegeben, wenn ein Versions- oder Parallelitätskonflikt vorliegt.

### 410 Verschwunden
<a name="questionnaire-package-410-error"></a>

Wird zurückgegeben, wenn die angeforderte Ressource dauerhaft gelöscht wurde.

### 429 Zu viele Anfragen
<a name="questionnaire-package-429-error"></a>

Wird zurückgegeben, wenn die Ratenlimits überschritten werden.

### 500 Internal Server Error
<a name="questionnaire-package-500-error"></a>

Wird zurückgegeben, wenn ein unerwarteter Serverfehler auftritt.

### 501 Nicht implementiert
<a name="questionnaire-package-501-error"></a>

Wird zurückgegeben, wenn der angeforderte Vorgang noch nicht implementiert ist.

## Validierungsregeln
<a name="questionnaire-package-validation-rules"></a>

### Überprüfung von Eingaben
<a name="questionnaire-package-input-validation"></a>
+ `coverage`Parameter ist **erforderlich** (1.. \$1 Kardinalität)
+ Mindestens einer von `questionnaire` oder `order` muss angegeben werden
+ Alle Coverage-Ressourcen müssen gültige FHIR-Ressourcen sein
+ Bei allen Ressourcen der Bestellung muss es sich um gültige FHIR-Ressourcen handeln
+ Canonical URLs muss ordnungsgemäß formatiert sein
+ `changedSince`muss eine gültige ISO 8601 dateTime sein

### QuestionnaireResponse Validierung
<a name="questionnaire-package-response-validation"></a>
+ `status`muss angemessen sein (`in-progress`,`completed`,`amended`)
+ Die Struktur muss mit dem referenzierten Fragebogen übereinstimmen
+ `basedOn`muss auf gültige Ressourcen der Bestellung verweisen
+ `subject`muss auf gültige Patientenressourcen verweisen

### Deduplizierung von Ressourcen
<a name="questionnaire-package-resource-dedup"></a>
+ Jede Ressource erscheint nur einmal im Paket
+ Ausnahme: Verschiedene Versionen derselben Ressource können beide enthalten sein
+ Ressourcen werden anhand ihrer kanonischen URL und Version identifiziert

## Leistungsspezifikationen
<a name="questionnaire-package-performance-specs"></a>


| Metrik | Spezifikation | 
| --- | --- | 
| Limit für die Anzahl der Ressourcen | 500 Ressourcen pro Paket | 
| Größenbeschränkung für Pakete | Maximal 5 MB | 

## Erforderliche Berechtigungen
<a name="questionnaire-package-required-permissions"></a>

Um den `$questionnaire-package` Vorgang verwenden zu können, stellen Sie sicher, dass Ihre IAM-Rolle über Folgendes verfügt:
+ `healthlake:QuestionnairePackage`- Um den Vorgang aufzurufen
+ `healthlake:ReadResource`- Um den Fragebogen und die zugehörigen Ressourcen abzurufen
+ `healthlake:SearchWithPost`- Um nach QuestionnaireResponse und verwandten Ressourcen zu suchen

**SMART auf FHIR-Zielfernrohren**  
**Erforderliche Mindestbereiche:**
+ **SMART Version 1:** `user/Questionnaire.read user/Library.read user/ValueSet.read user/QuestionnaireResponse.read`
+ **SMART v2**: `user/Questionnaire.rs user/Library.rs user/ValueSet.rs user/QuestionnaireResponse.rs`

## Wichtige Hinweise zur Implementierung
<a name="questionnaire-package-implementation-notes"></a>

### Strategie zum Abruf von Ressourcen
<a name="questionnaire-package-retrieval-strategy"></a>

**Priorität bei der Identifizierung des Fragebogens:**  

+ **Kanonische URL** (falls der `questionnaire` Parameter angegeben wurde) — Höchste Priorität
+ **Auftragsanalyse** (falls der `order` Parameter angegeben wurde):
  + Ordnen Sie die Bestellcodes (CPT, HCPCS, LOINC) den Krankenversicherungen des Zahlers zu
  + Verwenden Sie Coverage Payor, um zahlerspezifische Fragebögen zu filtern
  + Erwägen Sie Ursachencodes für zusätzlichen Kontext

### Auflösung von Abhängigkeiten
<a name="questionnaire-package-dependency-resolution"></a>

**CQL-Bibliotheken:**  

+ Abgerufen über die `cqf-library` Erweiterung zu den Fragebogen-Ressourcen
+ Ruft abhängige Bibliotheken rekursiv mit dem Typ ab `Library.relatedArtifact` `depends-on`
+ Alle Bibliotheksabhängigkeiten sind im Paket enthalten

**ValueSets:**  

+ Wird automatisch erweitert, wenn sie weniger als 40 Konzepte enthalten
+ Größere ValueSets sind ohne Erweiterung enthalten
+ ValueSets Die Ressourcen, auf die sowohl im Fragebogen als auch in der Bibliothek verwiesen wird, sind enthalten

### QuestionnaireResponse Vorbevölkerung
<a name="questionnaire-package-prepopulation"></a>

Die Operation kann in folgenden Fällen eine QuestionnaireResponse mit bereits ausgefüllten Daten zurückgeben:
+ Es wurde eine bereits in Bearbeitung befindliche oder abgeschlossene Antwort gefunden
+ Die CQL-Logik in zugehörigen Bibliotheken kann Daten aus Patientenakten extrahieren
+ Die Antwort ist mit der jeweiligen Reihenfolge und dem Umfang verknüpft

**Suchkriterien für QuestionnaireResponse:**  



| Suchparameter | FHIR-Pfad | Description | 
| --- | --- | --- | 
| based-on | QuestionnaireResponse.basedOn | Links zu oder ServiceRequest CarePlan | 
| patient | QuestionnaireResponse.subject | Der Patient, der das Subjekt ist | 
| questionnaire | QuestionnaireResponse.questionnaire | Der Fragebogen wird beantwortet | 

### Die Filterung der Ressourcen wurde geändert
<a name="questionnaire-package-changed-filtering"></a>

Wenn der `changedSince` Parameter bereitgestellt wird:
+ Nur Ressourcen, die **nach dem** angegebenen Zeitstempel geändert wurden, sind enthalten
+ Wenn sich keine Ressourcen geändert haben, wird ein leeres Paket zurückgegeben `200 OK`
+ Nützlich für inkrementelle Updates und Caching-Strategien
+ Der Zeitstempelvergleich verwendet ein Ressourcenfeld `meta.lastUpdated`

### Mehrere Paketpakete
<a name="questionnaire-package-multiple-bundles"></a>

Der Vorgang kann **mehrere Paketpakete** zurückgeben, wenn:
+ Über Canonical werden mehrere Fragebögen angefordert URLs
+ Für mehrere Bestellungen sind unterschiedliche Fragebögen erforderlich
+ Es gelten verschiedene Versionen desselben Fragebogens

Jedes Package ist eigenständig mit allen erforderlichen Abhängigkeiten.

## Häufige Anwendungsfälle
<a name="questionnaire-package-common-use-cases"></a>

### Anwendungsfall 1: Dokumentation zur vorherigen Autorisierung
<a name="questionnaire-package-use-case-1"></a>

**Szenario**: Ein Anbieter muss vor der Genehmigung Unterlagen für eine Sauerstofftherapie zu Hause sammeln.

```
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "coverage",  
      "resource": { /* Patient's insurance coverage */ }  
    },  
    {  
      "name": "order",  
      "resource": {  
        "resourceType": "ServiceRequest",  
        "code": {  
          "coding": [{  
            "system": "http://www.ama-assn.org/go/cpt",  
            "code": "94660"  
          }]  
        }  
      }  
    }  
  ]  
}
```

**Ergebnis**: Gibt ein Paket mit dem Fragebogen zur Sauerstofftherapie zurück, der bereits mit den Patientendaten und Diagnosecodes aus dem EHR ausgefüllt ist.

### Anwendungsfall 2: Rufen Sie eine bestimmte Version des Fragebogens ab
<a name="questionnaire-package-use-case-2"></a>

**Szenario**: Ein Anbieter benötigt zur Einhaltung der Vorschriften eine bestimmte Version eines Fragebogens.

```
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "coverage",  
      "resource": { /* Coverage resource */ }  
    },  
    {  
      "name": "questionnaire",  
      "valueCanonical": "http://example.org/fhir/Questionnaire/dme-request|3.1.0"  
    }  
  ]  
}
```

**Ergebnis**: Gibt genau Version 3.1.0 des DME-Anforderungsfragebogens mit allen Abhängigkeiten zurück.

### Anwendungsfall 3: Nach Updates suchen
<a name="questionnaire-package-use-case-3"></a>

**Szenario**: Ein Anbieter möchte überprüfen, ob Fragebogenressourcen seit dem letzten Abruf aktualisiert wurden.

```
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "coverage",  
      "resource": { /* Coverage resource */ }  
    },  
    {  
      "name": "questionnaire",  
      "valueCanonical": "http://example.org/fhir/Questionnaire/medication-request"  
    },  
    {  
      "name": "changedSince",  
      "valueDateTime": "2024-03-01T00:00:00Z"  
    }  
  ]  
}
```

**Ergebnis**: Gibt nur Ressourcen zurück, die nach dem 1. März 2024 geändert wurden, oder ein leeres Paket, falls sich nichts geändert hat.

### Anwendungsfall 4: Mehrere Bestellungen
<a name="questionnaire-package-use-case-4"></a>

**Szenario**: Ein Anbieter reicht mehrere Serviceanfragen ein, für die möglicherweise unterschiedliche Fragebögen erforderlich sind.

```
{  
  "resourceType": "Parameters",  
  "parameter": [  
    {  
      "name": "coverage",  
      "resource": { /* Coverage resource */ }  
    },  
    {  
      "name": "order",  
      "resource": { /* ServiceRequest for imaging */ }  
    },  
    {  
      "name": "order",  
      "resource": { /* ServiceRequest for DME */ }  
    }  
  ]  
}
```

**Ergebnis**: Gibt mehrere Paketpakete zurück, eines für jeden zutreffenden Fragebogen.

## Integration mit anderen Da Vinci IGs
<a name="questionnaire-package-integration"></a>

### Ermittlung der Deckungsanforderungen (CRD)
<a name="questionnaire-package-crd-integration"></a>

**Workflow-Integration:**  

+ Der Anbieter bestellt einen Service in seinem EHR
+ Der CRD-Haken löst aus und überprüft die Deckungsanforderungen
+ Der Zahler gibt an, dass Unterlagen erforderlich sind
+ Der Anbieter ruft `$questionnaire-package` an, um das Dokumentationsformular abzurufen
+ Der Anbieter füllt den Fragebogen aus
+ Die Dokumentation wird über PAS eingereicht oder CDex

### Support bei vorheriger Autorisierung (PAS)
<a name="questionnaire-package-pas-integration"></a>

**Workflow-Integration:**  

+ Wird verwendet`$questionnaire-package`, um Dokumentationsanforderungen abzurufen
+ Vervollständigen Sie das QuestionnaireResponse mit den erforderlichen klinischen Daten
+ Reichen Sie die vorherige Genehmigung ein und verwenden Sie `Claim/$submit` dabei das ausgefüllte QuestionnaireResponse
+ Überprüfen Sie den Status mit `Claim/$inquire`

### Klinischer Data Exchange (CDex)
<a name="questionnaire-package-cdex-integration"></a>

**Workflow-Integration:**  

+ Der Zahler fordert zusätzliche Unterlagen für einen Anspruch an
+ Der Anbieter verwendet`$questionnaire-package`, um das Formular zur Erfassung strukturierter Daten abzurufen
+ Der Anbieter füllt das aus QuestionnaireResponse
+ Die Dokumentation wird dem Zahler über den CDex Anhangs-Workflow übermittelt

## Anleitung zur Fehlerbehebung
<a name="questionnaire-package-troubleshooting"></a>

### Problem: Es wurde kein Fragebogen zurückgesendet
<a name="questionnaire-package-no-questionnaire"></a>

**Mögliche Ursachen:**  

+ Die kanonische URL stimmt mit keinem Fragebogen im Datenspeicher überein
+ Der Bestellcode entspricht keinem Fragebogen in der Krankenversicherung des Zahlers
+ Dem Versicherungsnehmer sind keine Fragebögen zugeordnet

**Lösungen:**  

+ Stellen Sie sicher, dass die kanonische URL korrekt ist und der Fragebogen existiert
+ Vergewissern Sie sich, dass die Bestellcodes (CPT/HCPCS) korrekt angegeben sind
+ Vergewissern Sie sich, dass die Kostenträgerorganisation Fragebögen konfiguriert hat

### Problem: Fehlende Abhängigkeiten im Package
<a name="questionnaire-package-missing-dependencies"></a>

**Mögliche Ursachen:**  

+ Referenzierte Bibliothek oder ValueSet existiert nicht im Datenspeicher
+ Bibliotheksverweise sind defekt oder falsch
+ ValueSet Die Erweiterung ist fehlgeschlagen

**Lösungen:**  

+ Überprüfen Sie den `Outcome` Parameter auf Warnungen zu fehlenden Ressourcen
+ Stellen Sie sicher, dass alle referenzierten Ressourcen in Ihrem Datenspeicher vorhanden sind
+ Stellen Sie sicher ValueSet URLs , dass sie korrekt und lösbar sind

### Problem: Leeres Package mit ChangedSince
<a name="questionnaire-package-empty-package"></a>

**Mögliche Ursachen:**  

+ Dies ist erwartetes Verhalten — seit dem angegebenen Zeitstempel wurden keine Ressourcen geändert

**Lösungen:**  

+ Verwenden Sie die zwischengespeicherte Version des Pakets
+ Entfernen Sie den `changedSince` Parameter, um das vollständige Paket abzurufen

### Problem: QuestionnaireResponse Nicht vorab ausgefüllt
<a name="questionnaire-package-not-prepopulated"></a>

**Mögliche Ursachen:**  

+ Keine vorhandenen QuestionnaireResponse gefunden
+ Die Logik der CQL-Bibliothek konnte die erforderlichen Daten nicht extrahieren
+ Patientendaten fehlen oder sind unvollständig

**Lösungen:**  

+ Das ist zu erwarten — nicht alle Fragebögen basieren auf einer Präpopulationslogik
+ Prüfen Sie, ob Patientendaten im Datenspeicher vorhanden sind
+ Überprüfen Sie die Anforderungen an die Datenextraktion in der Logik der CQL-Bibliothek

## Best Practices
<a name="questionnaire-package-best-practices"></a>

### 1. Verwenden Sie Canonical URLs mit Versionen
<a name="questionnaire-package-bp-versions"></a>

Geben Sie immer Versionsnummern an, wenn Sie bestimmte Fragebögen anfordern:

```
{  
  "name": "questionnaire",  
  "valueCanonical": "http://example.org/fhir/Questionnaire/dme|2.1.0"  
}
```

**Warum**: Sorgt für Konsistenz und verhindert unerwartete Änderungen, wenn Fragebögen aktualisiert werden.

### 2. Nutzen Sie ChangedSince für mehr Leistung
<a name="questionnaire-package-bp-changed-since"></a>

Verwenden Sie für häufig aufgerufene Fragebögen Folgendes, `changedSince` um die Datenübertragung zu minimieren:

```
{  
  "name": "changedSince",  
  "valueDateTime": "2024-03-10T15:30:00Z"  
}
```

**Warum**: Reduziert die Latenz und die Bandbreitennutzung, indem nur aktualisierte Ressourcen abgerufen werden.

### 3. Vollständige Deckungsinformationen einschließen
<a name="questionnaire-package-bp-coverage"></a>

Geben Sie umfassende Angaben zum Umfang an, um sicherzustellen, dass der Fragebogen korrekt ausgewählt wird:

```
{  
  "name": "coverage",  
  "resource": {  
    "resourceType": "Coverage",  
    "beneficiary": { "reference": "Patient/123" },  
    "payor": [{ "reference": "Organization/payer-abc" }],  
    "class": [{ /* Group/plan information */ }]  
  }  
}
```

**Warum**: Hilft bei der HealthLake Identifizierung von zahlerspezifischen Fragebögen und Anforderungen.

## Zugehörige -Vorgänge
<a name="questionnaire-package-related-operations"></a>
+ `Claim/$submit`- Reichen Sie vorherige Autorisierungsanfragen mit ausgefüllten Unterlagen ein
+ `Claim/$inquire`- Überprüfen Sie den Status der eingereichten vorherigen Genehmigungen
+ `ValueSet/$expand`- Erweitern Sie ValueSets die Antwortmöglichkeiten

# `$submit`FHIR-Operation für HealthLake
<a name="reference-fhir-operations-submit"></a>

Dieser `$submit` Vorgang ermöglicht es Ihnen, vorherige Autorisierungsanträge elektronisch zur Genehmigung an die Zahler einzureichen. Dieser Vorgang implementiert den [Da Vinci Prior Authorization Support (PAS) Implementation Guide](https://hl7.org/fhir/us/davinci-pas/), der einen standardisierten FHIR-basierten Workflow für vorherige Autorisierungsanträge bietet.

## Funktionsweise
<a name="submit-how-it-works"></a>
+ **Einreichen**: Sie senden ein FHIR-Paket, das Ihre vorherige Autorisierungsanfrage und unterstützende klinische Daten enthält
+ **Bestätigen**: HealthLake validiert die Einreichung anhand der PAS-Anforderungen
+ **Fortbestehen**: Alle Ressourcen werden in Ihrem HealthLake Datenspeicher gespeichert
+ **Antworten**: Sie erhalten sofort eine Antwort mit dem Status „In der Warteschlange“
+ **Prozess**: Die Autorisierungsentscheidung wird vom Zahler asynchron verarbeitet

## API-Endpunkt
<a name="submit-api-endpoint"></a>

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

## Struktur der Anfrage
<a name="submit-request-structure"></a>

### Anforderungen an das Paket
<a name="submit-bundle-requirements"></a>

Bei Ihrer Anfrage muss es sich um eine FHIR-Bundle-Ressource handeln mit:
+ **Bundle.type**: Muss sein `"collection"`
+ **bundle.entry****: Muss genau eine Claim-Ressource enthalten mit** `use = "preauthorization"`
+ **Referenzierte Ressourcen**: Alle Ressourcen, auf die der Anspruch verweist, müssen im Paket enthalten sein

### Erforderliche -Ressourcen
<a name="submit-required-resources"></a>


| Ressource | Kardinalität | Profil | Description | 
| --- | --- | --- | --- | 
| Anspruch erheben | 1 | PAS-Anspruch | Die vorherige Autorisierungsanfrage | 
| Patientin | 1 | PAS-Patient | Demografische Informationen zum Patienten | 
| Organisation (Versicherer) | 1 | PAS-Versicherer | Versicherungsgesellschaft | 
| Organisation (Anbieter) | 1 | PAS-Anforderer | Gesundheitsdienstleister, der die Anfrage einreicht | 
| Deckung | 1 oder mehr | PAS-Abdeckung | Einzelheiten zum Versicherungsschutz | 

### Optionale Ressourcen
<a name="submit-optional-resources"></a>


| Ressource | Kardinalität | Profil | Description | 
| --- | --- | --- | --- | 
| Praktiker | 0 oder mehr | PAS-Praktiker | Praktiker im Gesundheitswesen | 
| PractitionerRole | 0 oder mehr | PAS PractitionerRole | Rollen von Praktikern | 
| ServiceRequest | 0 oder mehr | PAS ServiceRequest | Angeforderte medizinische Leistungen | 
| DeviceRequest | 0 oder mehr | PAS DeviceRequest | Angeforderte medizinische Geräte | 
| MedicationRequest | 0 oder mehr | PAS MedicationRequest | Angeforderte Medikamente | 
| DocumentReference | 0 oder mehr | PAS DocumentReference | Unterstützung der klinischen Dokumentation | 

## Beispielanforderung
<a name="submit-example-request"></a>

```
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"  
    }  
  }]  
}
```

## Reaktionsformat
<a name="submit-response-format"></a>

### Erfolgreiche Antwort (200 OK)
<a name="submit-success-response"></a>

Sie erhalten ein PAS-Antwortpaket mit:
+ **ClaimResponse**mit `outcome: "queued"` und `status: "active"`
+ Alle Originalressourcen aus Ihrer Anfrage
+ Zeitstempel zur Bestätigung des Empfangs

```
{  
  "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"  
    }  
  }]  
}
```

## Fehlermeldungen
<a name="submit-error-responses"></a>

### 400 Bad Request (400 Ungültige Anfrage)
<a name="submit-400-error"></a>

Wird zurückgegeben, wenn das Anforderungsformat ungültig oder falsch formatiert ist.

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

### 412 Precondition Failed (412 Vorbedingung fehlgeschlagen)
<a name="submit-412-error"></a>

Wird zurückgegeben, wenn dieselbe vorherige Autorisierungsanfrage bereits eingereicht wurde (doppelte Einreichung erkannt).

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

**Idempotenz**  
Die `$submit` Operation ist idempotent. Wenn Sie dieselbe Anfrage mehrmals einreichen, werden keine doppelten vorherigen Autorisierungsanfragen erstellt. Stattdessen erhalten Sie eine 412-Fehlermeldung, in der Sie aufgefordert werden, den Status Ihrer ursprünglichen Einreichung `$inquire` zu überprüfen.

### 4.2.2 Unverarbeitbare Entität
<a name="submit-422-error"></a>

Wird zurückgegeben, wenn die FHIR-Validierung fehlschlägt.

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

## Regeln für die Validierung
<a name="submit-validation-rules"></a>

HealthLake führt eine umfassende Validierung Ihrer Einreichung durch:

### Validierung des Pakets
<a name="submit-bundle-validation"></a>
+ Muss dem PAS Request Bundle-Profil entsprechen
+ `Bundle.type`muss sein `"collection"`
+ Kann mehrere Claim-Ressourcen enthalten
+ Muss jedoch genau eine Claim-Ressource mit Vorautorisierung enthalten
  + Und diese Claim-Ressource muss der erste Eintrag im Paket sein
+ Alle Ressourcen, auf die verwiesen wird, müssen im Paket enthalten sein

### Validierung des Anspruchs
<a name="submit-claim-validation"></a>
+ Muss dem PAS-Antragsprofil entsprechen
+ `Claim.use`muss sein `"preauthorization"`
+ Erforderliche Felder:`patient`,`insurer`,`provider`,`created`, `priority`
+ Geschäftskennungen müssen vorhanden und gültig sein

### Validierung der Ressourcen
<a name="submit-resource-validation"></a>
+ Alle Ressourcen müssen ihren jeweiligen PAS-Profilen entsprechen
+ Erforderliche unterstützende Ressourcen müssen vorhanden sein (Patient, Versicherungsschutz, Organisation)
+ Querverweise müssen gültig und innerhalb des Pakets lösbar sein

## Leistungsspezifikationen
<a name="submit-performance-specs"></a>


| Metrik | Spezifikation | 
| --- | --- | 
| Größenbeschränkung für Pakete | Maximal 5 MB | 
| Limit für die Anzahl der Ressourcen | 500 Ressourcen pro Paket | 

## Erforderliche Berechtigungen
<a name="submit-required-permissions"></a>

Um den `$submit` Vorgang zu verwenden, kann man entweder AWS Sigv4 oder SMART auf FHIR verwenden:
+ Stellen Sie sicher, dass Ihre IAM-Rolle Folgendes hat: `healthlake:SubmitPreAuthClaim` - Um den Vorgang aufzurufen

**SMART auf FHIR-Zielfernrohren**  
**Erforderliche Mindestumfänge:**
+ **SMART Version 1:** `user/Claim.write & <all_resourceTypes_in_Bundle>.write`
+ **SMART v2**: `user/Claim.c & <all_resourceTypes_in_Bundle>.c or system/*.*`

## Wichtige Hinweise zur Implementierung
<a name="submit-implementation-notes"></a>

### Persistenz der Ressourcen
<a name="submit-resource-persistence"></a>
+ Alle Bundle-Einträge werden als einzelne FHIR-Ressourcen in Ihrem Datenspeicher gespeichert
+ Vom Kunden bereitgestellte Daten bleiben erhalten, wenn IDs sie bereitgestellt werden
+ Der Versionsverlauf wird zu Prüfungszwecken aufbewahrt
+ Die Erkennung von Duplikaten verhindert Ressourcenkonflikte

### Verhalten bei der Verarbeitung
<a name="submit-processing-behavior"></a>
+ Jede gültige Einreichung führt zu genau einer ClaimResponse mit `"queued"` Ergebnis
+ Bei ungültigen Einsendungen werden die Statuscodes 400 oder 422 mit detaillierten Fehlerinformationen zurückgegeben
+ Bei Systemfehlern werden die entsprechenden 5xx-Statuscodes zurückgegeben
+ Alle erfolgreichen Einsendungen geben den Status 200 zurück und geben den Status „Ausstehend“ zurück ClaimResponse

### Anforderungen für das Paket
<a name="submit-bundle-requirements-impl"></a>
+ `Bundle.entry.fullUrl`Die Werte müssen entweder REST URLs oder `"urn:uuid:[guid]"` Format sein
+ Alle GUIDs müssen bei allen Einsendungen eindeutig sein (mit Ausnahme derselben Ressourceninstanzen)
+ Ressourcen, auf die verwiesen wird, müssen im Paket vorhanden sein oder auflösbar sein

## Zugehörige -Vorgänge
<a name="submit-related-operations"></a>
+ `Claim/$inquire`- Fragen Sie den Status einer zuvor eingereichten Autorisierungsanfrage ab
+ `Patient/$everything`- Rufen Sie umfassende Patientendaten für den Kontext einer vorherigen Autorisierung ab

# Validierung von FHIR-Ressourcen mit `$validate`
<a name="reference-fhir-operations-validate"></a>

AWS HealthLake unterstützt jetzt den `$validate` Vorgang für FHIR-Ressourcen, sodass Sie eine Ressource anhand der FHIR-Spezifikation validieren und ihre Konformität mit einem bestimmten Profil oder einer Basisressourcendefinition überprüfen können, ohne Speichervorgänge durchführen zu müssen. Dieser Vorgang ist besonders nützlich, wenn Sie:
+ Überprüfen Sie die FHIR CMS-Compliance-Anforderungen
+ Testen Sie Ressourcen, bevor Sie sie in der Produktion verwenden
+ Geben Sie Feedback zur Validierung in Echtzeit, während Benutzer klinische Daten bearbeiten
+ Reduzieren Sie die Anzahl ungültiger Dateneinreichungen bei der Erstellung und Aktualisierung APIs

## Usage
<a name="validate-usage"></a>

Der `$validate` Vorgang kann mit POST-Methoden auf FHIR-Ressourcen aufgerufen werden:

**Unterstützte Vorgänge**  


```
POST [base]/[type]/[id]/$validate
POST [base]/[type]/$validate
```

## Unterstützte Payloads
<a name="validate-payloads"></a>

**Ressource „Parameter“**  


HealthLake unterstützt die folgenden `$validate` FHIR-Parameter:


| Parameter | Typ | Erforderlich | Description | 
| --- | --- | --- | --- | 
| resource | Ressource | Ja | Die zu validierende Ressource | 
| profile | kanonisch | Nein | Kanonische URL des Profils, gegen das validiert werden soll | 
| mode | Code | Nein | Validierungsmodus:create, oder update | 

**Direkte Ressource mit Abfrageparametern**  



| Parameter | Typ | Erforderlich | Description | 
| --- | --- | --- | --- | 
| profile | kanonisch | Nein | Kanonische URL des Profils, gegen das validiert werden soll | 
| mode | Code | Nein | Validierungsmodus:create, oder update | 

## Beispiele
<a name="validate-examples"></a>

**POST-Anfrage für eine Ressource mit ID und Payload mit Parametern**  


```
POST [base]/Patient/example-patient/$validate
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "resource",
      "resource": {
        "resourceType": "Patient",
        "id": "example-patient",
        "name": [
          {
            "family": "Smith",
            "given": ["John"]
          }
        ],
        "gender": "male",
        "birthDate": "1990-01-01"
      }
    },
    {
      "name": "profile",
      "valueCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
    },
    {
      "name": "mode",
      "valueString": "create"
    }
  ]
}
```

**POST-Anforderung für die Payload des Ressourcentyps und der Parameter**  


```
POST [base]/Patient/$validate
Content-Type: application/fhir+json

{
  "resourceType": "Parameters",
  "parameter": [
    {
      "name": "resource",
      "resource": {
        "resourceType": "Patient",
        "name": [
          {
            "family": "Doe",
            "given": ["Jane"]
          }
        ],
        "gender": "female",
        "birthDate": "1985-05-15"
      }
    },
    {
      "name": "profile",
      "valueCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
    },
    {
      "name": "mode",
      "valueString": "update"
    }
  ]
}
```

**POST-Anfrage für eine Ressource mit ID und direkter Ressourcennutzlast**  


```
POST [base]/Patient/example-patient/$validate?profile=http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient&mode=create
Content-Type: application/fhir+json

{
    "resourceType": "Patient",
    "id": "example-patient",
    "name": [
        {
        "family": "Smith",
        "given": ["John"]
        }
    ],
    "gender": "male",
    "birthDate": "1990-01-01"
}
```

**POST-Anfrage für den Ressourcentyp und die direkte Ressourcennutzlast**  


```
POST [base]/Patient/$validate?profile=http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient&mode=create
Content-Type: application/fhir+json

{
    "resourceType": "Patient",
    "id": "example-patient",
    "name": [
        {
        "family": "Smith",
        "given": ["John"]
        }
    ],
    "gender": "male",
    "birthDate": "1990-01-01"
}
```

**Beispielantwort**  
Der Vorgang gibt eine OperationOutcome Ressource mit Überprüfungsergebnissen zurück:

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "information",
      "code": "informational",
      "diagnostics": "Validation successful"
    }
  ]
}
```

**Beispielantwort mit Validierungsfehlern**  


```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "required",
      "details": {
        "text": "Missing required element"
      },
      "diagnostics": "Patient.identifier is required by the US Core Patient profile",
      "location": [
        "Patient.identifier"
      ]
    },
    {
      "severity": "warning",
      "code": "code-invalid",
      "details": {
        "text": "Invalid code value"
      },
      "diagnostics": "The provided gender code is not from the required value set",
      "location": [
        "Patient.gender"
      ]
    }
  ]
}
```

## Behavior
<a name="validate-behavior"></a>

Die `$validate` Operation:

1. Validiert die Ressource anhand der FHIR-Spezifikation und der Basisressourcendefinition

1. Überprüft die Konformität mit den angegebenen Profilen, wenn der `profile` Parameter angegeben wird

1. Validiert basierend auf dem angegebenen Modus (oder) `create` `update`

1. Gibt detaillierte Überprüfungsergebnisse zurück, einschließlich Fehlern, Warnungen und Informationsmeldungen

1. Führt keine Speichervorgänge durch — nur Validierung

1. Gibt HTTP 200 OK zurück, wenn die Validierung durchgeführt werden kann, unabhängig davon, ob Validierungsprobleme gefunden wurden

## Validierungsmodi
<a name="validate-modes"></a>
+ **create**: Validiert die Ressource so, als ob sie erstellt würde (neue Ressource)
+ **update**: Validiert die Ressource so, als ob sie aktualisiert würde (bestehende Ressource)

## Fehlerbehandlung
<a name="validate-error-handling"></a>

Die Operation gibt Folgendes zurück:
+ 200 OK: Die Validierung wurde erfolgreich durchgeführt (unabhängig vom Überprüfungsergebnis)
+ 400 Schlechte Anfrage: Ungültiges Anforderungsformat oder ungültige Parameter
+ 404 Nicht gefunden: Ressourcentyp oder Profil nicht gefunden

Weitere Informationen zur `$validate` Operationsspezifikation finden Sie in der [FHIR `$validate` R4-Ressourcendokumentation](https://www.hl7.org/fhir/R4/operation-resource-validate.html).