Implementation Guide
ePA Medication Service
Version 1.0.5-1 - release

## Query API: MedicationDispense (Abgabe)

Die Query API: MedicatioDispense ermöglicht den Abruf von Abgabedaten eines Versicherten im Medication Service.

### Nachricht

Die Nachricht zum Abruf von Dipensierdaten wird als HTTP GET-Anfrage an den Medication Service gesendet, um eine Liste der hinterlegten MedicationDispense-Instanzen abzurufen.

#### Auslösung

Wenn das ePA-Client-System eine Suche nach Dipensierdaten durchführen und dazu die korrespondierenden MedicationDispense-Ressourcen ermitteln möchte, sendet es eine Query API: MedicationDispense-Nachricht an den Medication Service. Das ePA-Client-System verarbeitet die Antwort und bringt sie zur Anzeige.

#### Resource API

Anfragen an die MedicationDispense-Ressource können über die RESTful API mittels HTTP GET-Anfragen durchgeführt werden. Dabei können spezifische Suchparameter genutzt werden, um die Anfragen zu verfeinern. Zum Beispiel:

- Suche nach Medikamentenabgaben, die an einem bestimmten Tag erfolgten: `?whenHandedOver=2025-02-14`
- Suche nach Medikamentenabgaben, die innerhalb eines Datumsbereichs erfolgten: `?whenHandedOver=ge2025-02-01&amp;whenHandedOver=le2025-02-28`
- Suche nach Medikamentenabgaben, die vor oder nach einem bestimmten Datum erfolgten: `?whenHandedOver=gt2025-03-15` (nach dem 15. März 2025)
- Suche nach Medikamentenabgaben, die zwischen dem 1. März und dem 15. März 2025 abgeschlossen und übergeben wurden: `?whenHandedOver=ge2025-03-01&amp;whenHandedOver=le2025-03-15&amp;status=completed`

Bei Anfragen an die QueryAPI für die MedicationDispense-Ressource wird die Antwort als ein FHIR Bundle des Typs searchset zurückgegeben. Dieses Bundle enthält eine Sammlung von Einträgen, die jeweils eine Instanz der MedicationDispense-Ressource oder weiteren Ressourcen im Zusammenhang mit der Abfrage enthalten können.

contentTypes: - "application/fhir+json" headerParams: - name: "x-insurantid" expectation: "MUSS" type: "string" description: "Health Record Identifier" - name: "x-useragent" expectation: "MUSS" type: "string" description: "User Agent Information" - name: "X-Request-ID" expectation: "MUSS" type: "string" description: "UUID der Nachricht" responses: - statusCode: '200' description: "Successful operation" errorCode: "-" note: "-" - statusCode: '400' description: "Unknown search parameter" errorCode: "-" note: "EPAOperationOutcome" - statusCode: '400' description: "Invalid query parameter(s)" errorCode: "-" note: "EPAOperationOutcome" - statusCode: '400' description: "Invalid request" errorCode: "-" note: "EPAOperationOutcome" - statusCode: '404' description: "Unknown resource type" errorCode: "-" note: "EPAOperationOutcome" responses: - statusCode: '200' description: "Successful operation" errorCode: "-" note: "-" - statusCode: '400' description: "Invalid request" errorCode: "malformedRequest" note: "-" - statusCode: '400' description: "Invalid request" errorCode: "-" note: "EPAOperationOutcome" - statusCode: '404' description: "Unknown resource type" errorCode: "-" note: "EPAOperationOutcome" - statusCode: '404' description: "Resource is not known" errorCode: "-" note: "EPAOperationOutcome" base: "[base]" paths: /epa/medication/api/v1/fhir/MedicationDispense: get: include: - "#default-api" - "#query-responses" operationId: "listMedicationDispenses_MedicationSvc" fhir: capabilityStatement: url: "CapabilityStatement-epa-medication-service-server.json" forResourceType: "MedicationDispense" responseExamples: - name: "application/fhir+json" type: JSON url: './Bundle-example-searchset-medicationdispense.json' Der Medication Service MUSS die Suchparameter der Ressource MedicationDispense verarbeiten können, wie sie im CapabilityStatement mit dem Namen EPAMedicationServiceServer festgelegt sind. Die Standardsortierung des Medication Service für die Ressource MedicationDispense MUSS anhand des Attributs _lastUpdated erfolgen.

#### Instance API

Um spezifische Details zu einem einzelnen MedicationDispense mittels der RESTful API zu erhalten, wird die MedicationDispense Instance API verwendet, indem eine HTTP GET-Anfrage an den Endpunkt /MedicationDispense/[id] gestellt wird.

base: "[base]" paths: /epa/medication/api/v1/fhir/MedicationDispense/[id]: get: include: - "#default-api" - "#instance-responses" operationId: "getMedicationDispenseById_MedicationSvc"

#### Verarbeitung

Der Medication Service verarbeitet die Anfrage, um die MedicationDispense-Einträge zu ermitteln, die den angegebenen Suchparametern entsprechen. Darüber hinaus gibt er einen zur Verarbeitung passenden HTTP Status Code sowie ein FHIR Bundle der passenden MedicationDispense-Ressourcen zurück.

### Sicherheitsanforderungen

Generelle Sicherheitsanforderungen werden hier festgehalten.